');
a.__div.innerHTML = n;
k = /\n/g;
n = a.__div.innerHTML.replace(k, '
');
a.__div.innerHTML = n;
k = /\r/g;
n = a.__div.innerHTML.replace(k, '
');
a.__div.innerHTML = n;
d.setProperty('font', Sb.getFont(a.__textFormat), null);
a.__textFormat.size = l;
a.__textFormat.leading = p;
d.setProperty('top', '3px', null);
c.border
? (d.setProperty(
'border',
'solid 1px #' + U.hex(c.borderColor & 16777215, 6),
null
),
a.__renderTransform.translate(-1, -1),
(a.__renderTransformChanged = !0),
(a.__transformDirty = !0))
: '' != d.border && (d.removeProperty('border'), (a.__renderTransformChanged = !0));
d.setProperty('color', '#' + U.hex(a.__textFormat.color & 16777215, 6), null);
d.setProperty('width', f + 'px', null);
d.setProperty('height', g + 'px', null);
switch (a.__textFormat.align) {
case 0:
d.setProperty('text-align', 'center', null);
break;
case 4:
d.setProperty('text-align', 'right', null);
break;
default:
d.setProperty('text-align', 'left', null);
}
a.__dirty = !1;
} else null != a.__div && (b.element.removeChild(a.__div), (a.__div = null));
null != a.__div &&
((c = b.__roundPixels),
(b.__roundPixels = !0),
b.__updateClip(a),
b.__applyStyle(a, !0, !0, !0),
(b.__roundPixels = c));
} else cc.clear(a, b);
};
cc.renderDrawable = function (a, b) {
a.__domRender = !0;
b.__updateCacheBitmap(a, a.__forceCachedBitmapUpdate);
a.__forceCachedBitmapUpdate = !1;
a.__domRender = !1;
if (null == a.__cacheBitmap || a.__isCacheBitmapRender) {
a.__renderedOnCanvasWhileOnDOM &&
((a.__renderedOnCanvasWhileOnDOM = !1),
a.__isHTML &&
null != a.__rawHtmlText &&
(a.__updateText(a.__rawHtmlText),
(a.__dirty = !0),
(a.__layoutDirty = !0),
a.__renderDirty || ((a.__renderDirty = !0), a.__setParentRenderDirty())));
var c = a.__textEngine;
if (null != a.stage && a.__worldVisible && a.__renderable) {
if (a.__dirty || a.__renderTransformChanged || null == a.__div)
if ('' != c.text || c.background || c.border || 1 == c.type) {
null == a.__div &&
((a.__div = window.document.createElement('div')),
b.__initializeElement(a, a.__div),
a.__style.setProperty('outline', 'none', null),
a.__div.addEventListener(
'input',
function (b) {
b.preventDefault();
a.get_htmlText() != a.__div.innerHTML &&
(a.set_htmlText(a.__div.innerHTML),
(a.__dirty = !1),
a.dispatchEvent(new ef('textInput', !1, !1, a.get_htmlText())));
},
!0
));
c.wordWrap
? a.__style.setProperty('word-wrap', 'break-word', null)
: a.__style.setProperty('white-space', 'nowrap', null);
a.__style.setProperty('overflow', 'hidden', null);
c.selectable
? (a.__style.setProperty('cursor', 'text', null),
a.__style.setProperty('-webkit-user-select', 'text', null),
a.__style.setProperty('-moz-user-select', 'text', null),
a.__style.setProperty('-ms-user-select', 'text', null),
a.__style.setProperty('-o-user-select', 'text', null))
: a.__style.setProperty('cursor', 'inherit', null);
a.__div.contentEditable = 1 == c.type;
var d = a.__style;
c.background
? d.setProperty(
'background-color',
'#' + U.hex(c.backgroundColor & 16777215, 6),
null
)
: d.removeProperty('background-color');
var f = c.width,
g = c.height,
p = 1,
l = a.__textFormat.size,
k = l,
n = a.__renderTransform;
if (1 != n.a || 1 != n.d)
n.a == n.d
? ((p = n.a), (n.a = n.d = 1))
: n.a > n.d
? ((p = n.a), (n.d /= n.a), (n.a = 1))
: ((p = n.d), (n.a /= n.d), (n.d = 1)),
(k *= p),
(f = Math.ceil(f * p)),
(g = Math.ceil(g * p));
a.__textFormat.size = k;
n = c.text;
var h = 0;
if (a.__isHTML) {
for (var m = n; cc.__regexFont.match(m); ) {
m = cc.__regexFont.matched(0);
var t = '';
cc.__regexFace.match(m) &&
(t += "font-family:'" + cc.__getAttributeMatch(cc.__regexFace) + "';");
cc.__regexColor.match(m) &&
(t += 'color:#' + cc.__getAttributeMatch(cc.__regexColor) + ';');
if (cc.__regexSize.match(m)) {
h = cc.__getAttributeMatch(cc.__regexSize);
var u = A.cca(h, 0);
h = parseFloat(h) * p;
t += 'font-size:' + (43 == u || 45 == u ? k + h : h) + 'px;';
}
n = U.replace(n, m, "");
m = cc.__regexFont.matchedRight();
}
n = n.replace(cc.__regexCloseFont.r, '');
} else n = U.htmlEscape(n);
n = U.replace(n, '
');
a.__div.innerHTML = n;
k = /\n/g;
n = a.__div.innerHTML.replace(k, '
');
a.__div.innerHTML = n;
k = /\r/g;
n = a.__div.innerHTML.replace(k, '
');
a.__div.innerHTML = n;
d.setProperty('font', Sb.getFont(a.__textFormat), null);
a.__textFormat.size = l;
a.__textFormat.leading = p;
d.setProperty('top', '3px', null);
c.border
? (d.setProperty(
'border',
'solid 1px #' + U.hex(c.borderColor & 16777215, 6),
null
),
a.__renderTransform.translate(-1, -1),
(a.__renderTransformChanged = !0),
(a.__transformDirty = !0))
: '' != d.border &&
(d.removeProperty('border'), (a.__renderTransformChanged = !0));
d.setProperty('color', '#' + U.hex(a.__textFormat.color & 16777215, 6), null);
d.setProperty('width', f + 'px', null);
d.setProperty('height', g + 'px', null);
switch (a.__textFormat.align) {
case 0:
d.setProperty('text-align', 'center', null);
break;
case 4:
d.setProperty('text-align', 'right', null);
break;
default:
d.setProperty('text-align', 'left', null);
}
a.__dirty = !1;
} else null != a.__div && (b.element.removeChild(a.__div), (a.__div = null));
null != a.__div &&
((c = b.__roundPixels),
(b.__roundPixels = !0),
b.__updateClip(a),
b.__applyStyle(a, !0, !0, !0),
(b.__roundPixels = c));
} else cc.clear(a, b);
} else
b.__renderDrawableClear(a),
(a.__cacheBitmap.stage = a.stage),
(c = a.__cacheBitmap),
null != c.stage &&
c.__worldVisible &&
c.__renderable &&
null != c.__bitmapData &&
c.__bitmapData.__isValid &&
c.__bitmapData.readable
? (b.__pushMaskObject(c),
null != c.__bitmapData.image.buffer.__srcImage
? Rc.renderImage(c, b)
: Rc.renderCanvas(c, b),
b.__popMaskObject(c))
: Rc.clear(c, b);
b.__renderEvent(a);
};
cc.renderDrawableClear = function (a, b) {
cc.clear(a, b);
};
cc.__getAttributeMatch = function (a) {
return null != a.matched(2) ? a.matched(2) : a.matched(3);
};
var Dg = function () {};
h['openfl.display._internal.DOMTilemap'] = Dg;
Dg.__name__ = 'openfl.display._internal.DOMTilemap';
Dg.clear = function (a, b) {
null != a.__cacheBitmap && Rc.clear(a.__cacheBitmap, b);
null != a.__canvas &&
(b.element.removeChild(a.__canvas), (a.__canvas = null), (a.__style = null));
};
Dg.render = function (a, b) {
if (null != a.stage && a.__worldVisible && a.__renderable && 0 < a.__group.__tiles.length) {
null == a.__canvas &&
((a.__canvas = window.document.createElement('canvas')),
(a.__context = a.__canvas.getContext('2d')),
b.__initializeElement(a, a.__canvas));
a.__canvas.width = a.__width;
a.__canvas.height = a.__height;
b.__canvasRenderer.context = a.__context;
var c = b.__canvasRenderer;
if (a.__renderable && 0 != a.__group.__tiles.length) {
var d = c.__getAlpha(a.__worldAlpha);
if (!(0 >= d)) {
var f = c.context;
c.__setBlendMode(a.__worldBlendMode);
c.__pushMaskObject(a);
var g = fa.__pool.get();
g.setTo(0, 0, a.__width, a.__height);
c.__pushMaskRect(g, a.__renderTransform);
(c.__allowSmoothing && a.smoothing) || (f.imageSmoothingEnabled = !1);
Vf.renderTileContainer(
a.__group,
c,
a.__renderTransform,
a.__tileset,
c.__allowSmoothing && a.smoothing,
a.tileAlphaEnabled,
d,
a.tileBlendModeEnabled,
a.__worldBlendMode,
null,
null,
g
);
(c.__allowSmoothing && a.smoothing) || (f.imageSmoothingEnabled = !0);
c.__popMaskRect();
c.__popMaskObject(a);
fa.__pool.release(g);
}
}
b.__canvasRenderer.context = null;
b.__updateClip(a);
b.__applyStyle(a, !0, !1, !0);
} else Dg.clear(a, b);
};
Dg.renderDrawable = function (a, b) {
b.__updateCacheBitmap(a, !1);
if (null == a.__cacheBitmap || a.__isCacheBitmapRender) {
null != a.opaqueBackground &&
!a.__isCacheBitmapRender &&
0 < a.get_width() &&
a.get_height();
var c = a.__graphics;
if (null != a.stage && a.__worldVisible && a.__renderable && null != c) {
C.render(c, b.__canvasRenderer);
if (c.__softwareDirty || a.__worldAlphaChanged || a.__canvas != c.__canvas)
null != c.__canvas
? a.__canvas != c.__canvas &&
(null != a.__canvas && b.element.removeChild(a.__canvas),
(a.__canvas = c.__canvas),
(a.__context = c.__context),
b.__initializeElement(a, a.__canvas))
: pf.clear(a, b);
if (null != a.__canvas) {
b.__pushMaskObject(a);
var d = a.__renderTransform;
a.__renderTransform = c.__worldTransform;
c.__transformDirty && ((c.__transformDirty = !1), (a.__renderTransformChanged = !0));
b.__updateClip(a);
b.__applyStyle(a, !0, !0, !0);
a.__renderTransform = d;
b.__popMaskObject(a);
}
} else pf.clear(a, b);
if (
null != a.stage &&
a.__worldVisible &&
a.__renderable &&
0 < a.__group.__tiles.length
) {
null == a.__canvas &&
((a.__canvas = window.document.createElement('canvas')),
(a.__context = a.__canvas.getContext('2d')),
b.__initializeElement(a, a.__canvas));
a.__canvas.width = a.__width;
a.__canvas.height = a.__height;
b.__canvasRenderer.context = a.__context;
c = b.__canvasRenderer;
if (
a.__renderable &&
0 != a.__group.__tiles.length &&
((d = c.__getAlpha(a.__worldAlpha)), !(0 >= d))
) {
var f = c.context;
c.__setBlendMode(a.__worldBlendMode);
c.__pushMaskObject(a);
var g = fa.__pool.get();
g.setTo(0, 0, a.__width, a.__height);
c.__pushMaskRect(g, a.__renderTransform);
(c.__allowSmoothing && a.smoothing) || (f.imageSmoothingEnabled = !1);
Vf.renderTileContainer(
a.__group,
c,
a.__renderTransform,
a.__tileset,
c.__allowSmoothing && a.smoothing,
a.tileAlphaEnabled,
d,
a.tileBlendModeEnabled,
a.__worldBlendMode,
null,
null,
g
);
(c.__allowSmoothing && a.smoothing) || (f.imageSmoothingEnabled = !0);
c.__popMaskRect();
c.__popMaskObject(a);
fa.__pool.release(g);
}
b.__canvasRenderer.context = null;
b.__updateClip(a);
b.__applyStyle(a, !0, !1, !0);
} else Dg.clear(a, b);
} else
b.__renderDrawableClear(a),
(a.__cacheBitmap.stage = a.stage),
(c = a.__cacheBitmap),
null != c.stage &&
c.__worldVisible &&
c.__renderable &&
null != c.__bitmapData &&
c.__bitmapData.__isValid &&
c.__bitmapData.readable
? (b.__pushMaskObject(c),
null != c.__bitmapData.image.buffer.__srcImage
? Rc.renderImage(c, b)
: Rc.renderCanvas(c, b),
b.__popMaskObject(c))
: Rc.clear(c, b);
b.__renderEvent(a);
};
Dg.renderDrawableClear = function (a, b) {
Dg.clear(a, b);
};
var bh = function () {};
h['openfl.display._internal.DOMVideo'] = bh;
bh.__name__ = 'openfl.display._internal.DOMVideo';
bh.clear = function (a, b) {
a.__active && (b.element.removeChild(a.__stream.__video), (a.__active = !1));
};
bh.render = function (a, b) {
null != a.stage && null != a.__stream && a.__worldVisible && a.__renderable
? (a.__active ||
(b.__initializeElement(a, a.__stream.__video), (a.__active = !0), (a.__dirty = !0)),
a.__dirty &&
((a.__stream.__video.width = a.__width | 0),
(a.__stream.__video.height = a.__height | 0),
(a.__dirty = !1)),
b.__updateClip(a),
b.__applyStyle(a, !0, !0, !0))
: bh.clear(a, b);
};
bh.renderDrawable = function (a, b) {
bh.render(a, b);
b.__renderEvent(a);
};
bh.renderDrawableClear = function (a, b) {
Wf.renderDrawableClear(a, b);
};
var Xf = function (a) {
this.buffer = a;
this.bPos = this.iPos = this.fPos = this.oPos = this.ffPos = this.iiPos = this.tsPos = 0;
this.prev = ca.UNKNOWN;
};
h['openfl.display._internal.DrawCommandReader'] = Xf;
Xf.__name__ = 'openfl.display._internal.DrawCommandReader';
Xf.prototype = {
buffer: null,
bPos: null,
iiPos: null,
iPos: null,
ffPos: null,
fPos: null,
oPos: null,
prev: null,
tsPos: null,
advance: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
},
bool: function (a) {
return this.buffer.b[this.bPos + a];
},
destroy: function () {
this.buffer = null;
this.reset();
},
fArr: function (a) {
return this.buffer.ff[this.ffPos + a];
},
float: function (a) {
return this.buffer.f[this.fPos + a];
},
iArr: function (a) {
return this.buffer.ii[this.iiPos + a];
},
int: function (a) {
return this.buffer.i[this.iPos + a];
},
obj: function (a) {
return this.buffer.o[this.oPos + a];
},
readBeginBitmapFill: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.BEGIN_BITMAP_FILL;
return this;
},
readBeginFill: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.BEGIN_FILL;
return this;
},
readBeginGradientFill: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.BEGIN_GRADIENT_FILL;
return this;
},
readBeginShaderFill: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.BEGIN_SHADER_FILL;
return this;
},
readCubicCurveTo: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.CUBIC_CURVE_TO;
return this;
},
readCurveTo: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.CURVE_TO;
return this;
},
readDrawCircle: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.DRAW_CIRCLE;
return this;
},
readDrawEllipse: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.DRAW_ELLIPSE;
return this;
},
readDrawQuads: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.DRAW_QUADS;
return this;
},
readDrawRect: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.DRAW_RECT;
return this;
},
readDrawRoundRect: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.DRAW_ROUND_RECT;
return this;
},
readDrawTriangles: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.DRAW_TRIANGLES;
return this;
},
readEndFill: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.END_FILL;
return this;
},
readLineBitmapStyle: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.LINE_BITMAP_STYLE;
return this;
},
readLineGradientStyle: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.LINE_GRADIENT_STYLE;
return this;
},
readLineStyle: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.LINE_STYLE;
return this;
},
readLineTo: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.LINE_TO;
return this;
},
readMoveTo: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.MOVE_TO;
return this;
},
readOverrideBlendMode: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.OVERRIDE_BLEND_MODE;
return this;
},
readOverrideMatrix: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.OVERRIDE_MATRIX;
return this;
},
readWindingEvenOdd: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.WINDING_EVEN_ODD;
return this;
},
readWindingNonZero: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = ca.WINDING_NON_ZERO;
return this;
},
reset: function () {
this.bPos = this.iPos = this.fPos = this.oPos = this.ffPos = this.iiPos = this.tsPos = 0;
},
skip: function (a) {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1;
}
this.prev = a;
},
__class__: Xf
};
var ca = (E['openfl.display._internal.DrawCommandType'] = {
__ename__: 'openfl.display._internal.DrawCommandType',
__constructs__: null,
BEGIN_BITMAP_FILL: {
_hx_name: 'BEGIN_BITMAP_FILL',
_hx_index: 0,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
BEGIN_FILL: {
_hx_name: 'BEGIN_FILL',
_hx_index: 1,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
BEGIN_GRADIENT_FILL: {
_hx_name: 'BEGIN_GRADIENT_FILL',
_hx_index: 2,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
BEGIN_SHADER_FILL: {
_hx_name: 'BEGIN_SHADER_FILL',
_hx_index: 3,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
CUBIC_CURVE_TO: {
_hx_name: 'CUBIC_CURVE_TO',
_hx_index: 4,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
CURVE_TO: {
_hx_name: 'CURVE_TO',
_hx_index: 5,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
DRAW_CIRCLE: {
_hx_name: 'DRAW_CIRCLE',
_hx_index: 6,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
DRAW_ELLIPSE: {
_hx_name: 'DRAW_ELLIPSE',
_hx_index: 7,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
DRAW_QUADS: {
_hx_name: 'DRAW_QUADS',
_hx_index: 8,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
DRAW_RECT: {
_hx_name: 'DRAW_RECT',
_hx_index: 9,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
DRAW_ROUND_RECT: {
_hx_name: 'DRAW_ROUND_RECT',
_hx_index: 10,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
DRAW_TILES: {
_hx_name: 'DRAW_TILES',
_hx_index: 11,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
DRAW_TRIANGLES: {
_hx_name: 'DRAW_TRIANGLES',
_hx_index: 12,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
END_FILL: {
_hx_name: 'END_FILL',
_hx_index: 13,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
LINE_BITMAP_STYLE: {
_hx_name: 'LINE_BITMAP_STYLE',
_hx_index: 14,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
LINE_GRADIENT_STYLE: {
_hx_name: 'LINE_GRADIENT_STYLE',
_hx_index: 15,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
LINE_STYLE: {
_hx_name: 'LINE_STYLE',
_hx_index: 16,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
LINE_TO: {
_hx_name: 'LINE_TO',
_hx_index: 17,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
MOVE_TO: {
_hx_name: 'MOVE_TO',
_hx_index: 18,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
OVERRIDE_BLEND_MODE: {
_hx_name: 'OVERRIDE_BLEND_MODE',
_hx_index: 19,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
OVERRIDE_MATRIX: {
_hx_name: 'OVERRIDE_MATRIX',
_hx_index: 20,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
WINDING_EVEN_ODD: {
_hx_name: 'WINDING_EVEN_ODD',
_hx_index: 21,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
WINDING_NON_ZERO: {
_hx_name: 'WINDING_NON_ZERO',
_hx_index: 22,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
},
UNKNOWN: {
_hx_name: 'UNKNOWN',
_hx_index: 23,
__enum__: 'openfl.display._internal.DrawCommandType',
toString: w
}
});
ca.__constructs__ = [
ca.BEGIN_BITMAP_FILL,
ca.BEGIN_FILL,
ca.BEGIN_GRADIENT_FILL,
ca.BEGIN_SHADER_FILL,
ca.CUBIC_CURVE_TO,
ca.CURVE_TO,
ca.DRAW_CIRCLE,
ca.DRAW_ELLIPSE,
ca.DRAW_QUADS,
ca.DRAW_RECT,
ca.DRAW_ROUND_RECT,
ca.DRAW_TILES,
ca.DRAW_TRIANGLES,
ca.END_FILL,
ca.LINE_BITMAP_STYLE,
ca.LINE_GRADIENT_STYLE,
ca.LINE_STYLE,
ca.LINE_TO,
ca.MOVE_TO,
ca.OVERRIDE_BLEND_MODE,
ca.OVERRIDE_MATRIX,
ca.WINDING_EVEN_ODD,
ca.WINDING_NON_ZERO,
ca.UNKNOWN
];
var Gh = function () {};
h['openfl.display._internal.FlashRenderer'] = Gh;
Gh.__name__ = 'openfl.display._internal.FlashRenderer';
Gh.register = function (a) {
null == Gh.instances &&
((Gh.instances = px.toObjectMap(null, !0)),
Ma.get_current().stage.addEventListener('enterFrame', Gh.render, !1, -2147483648));
Gh.instances.set(a, !0);
};
Gh.render = function (a) {
for (a = Gh.instances.keys(); a.hasNext(); ) a.next().__renderFlash();
};
var bp = function () {};
h['openfl.display._internal.IDisplayObject'] = bp;
bp.__name__ = 'openfl.display._internal.IDisplayObject';
bp.__isInterface__ = !0;
bp.prototype = { __renderFlash: null, __class__: bp };
var hi = function () {};
h['openfl.display._internal.FlashTilemap'] = hi;
hi.__name__ = 'openfl.display._internal.FlashTilemap';
hi.render = function (a) {};
hi.renderTileContainer = function (a, b, c, d, f, g, p, l, k, n, h, m) {};
var ai = function (a, b, c, d, f, g, p) {
null == p && (p = 0.05);
null == g && (g = !1);
Yi.call(this, a, b, c, d, f, g, p);
this.p_perm = [];
for (b = 0; 512 > b; ) (c = b++), (this.p_perm[c] = ai.P[c & 255]);
this.base_factor = 0.03125;
this.setSeed(a);
};
h['openfl.display._internal.PerlinNoise'] = ai;
ai.__name__ = 'openfl.display._internal.PerlinNoise';
ai.__super__ = Yi;
ai.prototype = r(Yi.prototype, {
p_perm: null,
x_offset: null,
y_offset: null,
z_offset: null,
base_factor: null,
fill: function (a, b, c, d) {
var e = a.width,
g = a.height,
p = this.octaves,
l = this.octaves_frequencies,
k = this.octaves_persistences,
n = 1 == (1 & this.channels),
h = 2 == (2 & this.channels),
m = 4 == (4 & this.channels),
t = 0;
n && ++t;
h && ++t;
m && ++t;
var u = this.grayscale,
r = (this.stitch_threshold * e) | 0,
q = (this.stitch_threshold * g) | 0,
w = b * this.base_factor + this.x_offset;
c = c * this.base_factor + this.y_offset;
d = d * this.base_factor + this.z_offset;
for (var x = 0; x < g; ) {
var z = x++;
b = w;
for (var E = 0, I = e; E < I; ) {
for (var H = E++, C = 0, A = 0, ra = 0, D = 0, F = p; D < F; ) {
var B = D++,
G = l[B];
B = k[B];
C += this.noise(b * G, c * G, d * G) * B;
u ||
(1 < t && (A += this.noise((b + 1) * G, (c + 1) * G, d * G) * B),
2 < t && (ra += this.noise((b + 2) * G, (c + 2) * G, d * G) * B));
}
D = 0;
u
? (D = this.color(C, C, C))
: n && h && m
? (D = this.color(C, A, ra))
: n && h
? (D = this.color(C, A, null))
: n && m
? (D = this.color(C, null, A))
: h && m
? (D = this.color(null, C, A))
: n
? (D = this.color(C, null, null))
: h
? (D = this.color(null, C, null))
: m && (D = this.color(null, null, C));
this.stitch && (D = this.stitching(a, D, H, z, r, q, e, g));
a.setPixel32(H, z, D);
b += this.base_factor;
}
c += this.base_factor;
}
},
noise: function (a, b, c) {
var d = a - (a % 1),
f = b - (b % 1),
g = c - (c % 1);
a -= d;
b -= f;
c -= g;
var p = (d | 0) & 255,
l = (f | 0) & 255,
k = (g | 0) & 255;
g = this.fade(a);
f = this.fade(b);
d = this.fade(c);
var n = this.p_perm[p] + l,
h = this.p_perm[n] + k;
n = this.p_perm[n + 1] + k;
l = this.p_perm[p + 1] + l;
p = this.p_perm[l] + k;
var m = this.p_perm[l + 1] + k,
t = a - 1,
u = b - 1,
r = c - 1,
q = this.p_perm[m + 1] & 15;
k =
(0 == (q & 1) ? (8 > q ? t : u) : 8 > q ? -t : -u) +
(0 == (q & 2) ? (4 > q ? u : 12 == q ? t : r) : 4 > q ? -u : 14 == q ? -t : -r);
q = this.p_perm[n + 1] & 15;
l =
(0 == (q & 1) ? (8 > q ? a : u) : 8 > q ? -a : -u) +
(0 == (q & 2) ? (4 > q ? u : 12 == q ? a : r) : 4 > q ? -u : 14 == q ? -a : -r);
q = this.p_perm[p + 1] & 15;
var w =
(0 == (q & 1) ? (8 > q ? t : b) : 8 > q ? -t : -b) +
(0 == (q & 2) ? (4 > q ? b : 12 == q ? t : r) : 4 > q ? -b : 14 == q ? -t : -r);
q = this.p_perm[h + 1] & 15;
r =
(0 == (q & 1) ? (8 > q ? a : b) : 8 > q ? -a : -b) +
(0 == (q & 2) ? (4 > q ? b : 12 == q ? a : r) : 4 > q ? -b : 14 == q ? -a : -r);
q = this.p_perm[m] & 15;
m =
(0 == (q & 1) ? (8 > q ? t : u) : 8 > q ? -t : -u) +
(0 == (q & 2) ? (4 > q ? u : 12 == q ? t : c) : 4 > q ? -u : 14 == q ? -t : -c);
q = this.p_perm[n] & 15;
n =
(0 == (q & 1) ? (8 > q ? a : u) : 8 > q ? -a : -u) +
(0 == (q & 2) ? (4 > q ? u : 12 == q ? a : c) : 4 > q ? -u : 14 == q ? -a : -c);
q = this.p_perm[p] & 15;
p =
(0 == (q & 1) ? (8 > q ? t : b) : 8 > q ? -t : -b) +
(0 == (q & 2) ? (4 > q ? b : 12 == q ? t : c) : 4 > q ? -b : 14 == q ? -t : -c);
q = this.p_perm[h] & 15;
a =
(0 == (q & 1) ? (8 > q ? a : b) : 8 > q ? -a : -b) +
(0 == (q & 2) ? (4 > q ? b : 12 == q ? a : c) : 4 > q ? -b : 14 == q ? -a : -c);
r += g * (w - r);
a += g * (p - a);
a += f * (n + g * (m - n) - a);
return a + d * (r + f * (l + g * (k - l) - r) - a);
},
setSeed: function (a) {
this.x_offset = a = (16807 * a) % 2147483647 | 0;
this.y_offset = a = (16807 * a) % 2147483647 | 0;
this.z_offset = (16807 * a) % 2147483647 | 0;
},
__class__: ai
});
var Ug = function (a, b, c, d, f, g, p) {
null == p && (p = !1);
null == g && (g = !1);
null == f && (f = !1);
null == d && (d = 0);
null == c && (c = 2);
null == b && (b = 5);
null == a && (a = 0);
this.wrap = a;
this.filter = b;
this.mipfilter = c;
this.lodBias = d;
this.ignoreSampler = f;
this.centroid = g;
this.textureAlpha = p;
};
h['openfl.display._internal.SamplerState'] = Ug;
Ug.__name__ = 'openfl.display._internal.SamplerState';
Ug.prototype = {
centroid: null,
filter: null,
ignoreSampler: null,
lodBias: null,
mipfilter: null,
mipmapGenerated: null,
textureAlpha: null,
wrap: null,
clone: function () {
var a = new Ug(
this.wrap,
this.filter,
this.mipfilter,
this.lodBias,
this.ignoreSampler,
this.centroid,
this.textureAlpha
);
a.mipmapGenerated = this.mipmapGenerated;
return a;
},
copyFrom: function (a) {
null == a ||
a.ignoreSampler ||
((this.wrap = a.wrap),
(this.filter = a.filter),
(this.mipfilter = a.mipfilter),
(this.lodBias = a.lodBias),
(this.centroid = a.centroid),
(this.textureAlpha = a.textureAlpha));
},
equals: function (a) {
return null == a
? !1
: this.wrap == a.wrap &&
this.filter == a.filter &&
this.mipfilter == a.mipfilter &&
this.lodBias == a.lodBias
? this.textureAlpha == a.textureAlpha
: !1;
},
__class__: Ug
};
var Mm = function () {
this.inputRefs = [];
this.inputFilter = [];
this.inputMipFilter = [];
this.inputs = [];
this.inputWrap = [];
this.overrideIntNames = [];
this.overrideIntValues = [];
this.overrideFloatNames = [];
this.overrideFloatValues = [];
this.overrideBoolNames = [];
this.overrideBoolValues = [];
this.paramLengths = [];
this.paramPositions = [];
this.paramRefs_Bool = [];
this.paramRefs_Float = [];
this.paramRefs_Int = [];
this.paramTypes = [];
};
h['openfl.display._internal.ShaderBuffer'] = Mm;
Mm.__name__ = 'openfl.display._internal.ShaderBuffer';
Mm.prototype = {
inputCount: null,
inputRefs: null,
inputFilter: null,
inputMipFilter: null,
inputs: null,
inputWrap: null,
overrideBoolCount: null,
overrideBoolNames: null,
overrideBoolValues: null,
overrideFloatCount: null,
overrideFloatNames: null,
overrideFloatValues: null,
overrideIntCount: null,
overrideIntNames: null,
overrideIntValues: null,
paramBoolCount: null,
paramCount: null,
paramData: null,
paramDataBuffer: null,
paramDataLength: null,
paramFloatCount: null,
paramIntCount: null,
paramLengths: null,
paramPositions: null,
paramRefs_Bool: null,
paramRefs_Float: null,
paramRefs_Int: null,
paramTypes: null,
shader: null,
addBoolOverride: function (a, b) {
this.overrideBoolNames[this.overrideBoolCount] = a;
this.overrideBoolValues[this.overrideBoolCount] = b;
this.overrideBoolCount++;
},
addFloatOverride: function (a, b) {
this.overrideFloatNames[this.overrideFloatCount] = a;
this.overrideFloatValues[this.overrideFloatCount] = b;
this.overrideFloatCount++;
},
addIntOverride: function (a, b) {
this.overrideIntNames[this.overrideIntCount] = a;
this.overrideIntValues[this.overrideIntCount] = b;
this.overrideIntCount++;
},
clearOverride: function () {
this.overrideBoolCount = this.overrideFloatCount = this.overrideIntCount = 0;
},
update: function (a) {
this.paramIntCount =
this.paramFloatCount =
this.paramDataLength =
this.paramCount =
this.paramBoolCount =
this.overrideBoolCount =
this.overrideFloatCount =
this.overrideIntCount =
this.inputCount =
0;
this.shader = null;
if (null != a) {
a.__init();
this.inputCount = a.__inputBitmapData.length;
for (var b, c = 0, d = this.inputCount; c < d; ) {
var f = c++;
b = a.__inputBitmapData[f];
this.inputs[f] = b.input;
this.inputFilter[f] = b.filter;
this.inputMipFilter[f] = b.mipFilter;
this.inputRefs[f] = b;
this.inputWrap[f] = b.wrap;
}
b = a.__paramBool.length;
var g = a.__paramFloat.length,
p = a.__paramInt.length;
this.paramCount = b + g + p;
this.paramBoolCount = b;
this.paramFloatCount = g;
this.paramIntCount = p;
var l = 0;
c = 0;
for (d = b; c < d; ) {
f = c++;
var k = a.__paramBool[f];
this.paramPositions[l] = this.paramDataLength;
var n = null != k.value ? k.value.length : 0;
this.paramLengths[l] = n;
this.paramDataLength += n;
this.paramTypes[l] = 0;
this.paramRefs_Bool[f] = k;
++l;
}
c = 0;
for (d = g; c < d; )
(f = c++),
(k = a.__paramFloat[f]),
(this.paramPositions[l] = this.paramDataLength),
(n = null != k.value ? k.value.length : 0),
(this.paramLengths[l] = n),
(this.paramDataLength += n),
(this.paramTypes[l] = 1),
(this.paramRefs_Float[f] = k),
++l;
c = 0;
for (d = p; c < d; )
(f = c++),
(k = a.__paramInt[f]),
(this.paramPositions[l] = this.paramDataLength),
(n = null != k.value ? k.value.length : 0),
(this.paramLengths[l] = n),
(this.paramDataLength += n),
(this.paramTypes[l] = 2),
(this.paramRefs_Int[f] = k),
++l;
if (0 < this.paramDataLength)
if (null == this.paramData) {
c = this.paramDataLength;
var h = (k = l = p = d = null);
this.paramData = c =
null != c
? new Float32Array(c)
: null != d
? new Float32Array(d)
: null != p
? new Float32Array(p.__array)
: null != l
? new Float32Array(l)
: null != k
? null == h
? new Float32Array(k, 0)
: new Float32Array(k, 0, h)
: null;
} else
this.paramDataLength > this.paramData.length &&
((c = this.paramDataLength),
(h = k = l = p = d = null),
(c =
null != c
? new Float32Array(c)
: null != d
? new Float32Array(d)
: null != p
? new Float32Array(p.__array)
: null != l
? new Float32Array(l)
: null != k
? null == h
? new Float32Array(k, 0)
: new Float32Array(k, 0, h)
: null),
c.set(this.paramData),
(this.paramData = c));
c = h = k = l = p = 0;
for (d = this.paramCount; c < d; )
if (((f = c++), (n = this.paramLengths[f]), f < b)) {
f = this.paramRefs_Bool[p];
++p;
for (var m = 0; m < n; ) {
var t = m++;
this.paramData[h] = f.value[t] ? 1 : 0;
++h;
}
} else if (f < b + g)
for (f = this.paramRefs_Float[l], ++l, m = 0; m < n; )
(t = m++), (this.paramData[h] = f.value[t]), ++h;
else
for (f = this.paramRefs_Int[k], ++k, m = 0; m < n; )
(t = m++), (this.paramData[h] = f.value[t]), ++h;
this.shader = a;
}
},
__class__: Mm
};
var $b = function (a, b, c) {
this.profile = 3;
this.driverInfo = 'OpenGL (Direct blitting)';
this.backBufferHeight = this.backBufferWidth = 0;
db.call(this);
this.__stage = a;
this.__contextState = b;
this.__stage3D = c;
this.__context = a.window.context;
this.gl = this.__context.webgl;
null == this.__contextState && (this.__contextState = new bk());
this.__state = new bk();
var d;
this.__vertexConstants = a = new Float32Array(512);
this.__fragmentConstants = a = new Float32Array(512);
var f = null;
a = [1, 1, 1, 1];
var g = (d = c = b = null);
this.__positionScale = a =
null != f
? new Float32Array(f)
: null != a
? new Float32Array(a)
: null != b
? new Float32Array(b.__array)
: null != c
? new Float32Array(c)
: null != d
? null == g
? new Float32Array(d, 0)
: new Float32Array(d, 0, g)
: null;
this.__programs = new qa();
-1 == $b.__glMaxViewportDims &&
($b.__glMaxViewportDims = this.gl.getParameter(this.gl.MAX_VIEWPORT_DIMS));
this.maxBackBufferHeight = this.maxBackBufferWidth = $b.__glMaxViewportDims;
-1 == $b.__glMaxTextureMaxAnisotropy &&
((a = this.gl.getExtension('EXT_texture_filter_anisotropic')),
(null != a &&
Object.prototype.hasOwnProperty.call(a, 'MAX_TEXTURE_MAX_ANISOTROPY_EXT')) ||
(a = this.gl.getExtension('MOZ_EXT_texture_filter_anisotropic')),
(null != a &&
Object.prototype.hasOwnProperty.call(a, 'MAX_TEXTURE_MAX_ANISOTROPY_EXT')) ||
(a = this.gl.getExtension('WEBKIT_EXT_texture_filter_anisotropic')),
null != a
? (($b.__glTextureMaxAnisotropy = a.TEXTURE_MAX_ANISOTROPY_EXT),
($b.__glMaxTextureMaxAnisotropy = this.gl.getParameter(
a.MAX_TEXTURE_MAX_ANISOTROPY_EXT
)))
: (($b.__glTextureMaxAnisotropy = 0), ($b.__glMaxTextureMaxAnisotropy = 0)));
-1 == $b.__glDepthStencil && ($b.__glDepthStencil = this.gl.DEPTH_STENCIL);
-1 == $b.__glMemoryTotalAvailable &&
((a = this.gl.getExtension('NVX_gpu_memory_info')),
null != a &&
(($b.__glMemoryTotalAvailable = a.GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX),
($b.__glMemoryCurrentAvailable = a.GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX)));
null == $b.__driverInfo &&
((a = this.gl.getParameter(this.gl.VENDOR)),
(b = this.gl.getParameter(this.gl.VERSION)),
(c = this.gl.getParameter(this.gl.RENDERER)),
(d = this.gl.getParameter(this.gl.SHADING_LANGUAGE_VERSION)),
($b.__driverInfo =
'OpenGL Vendor=' + a + ' Version=' + b + ' Renderer=' + c + ' GLSL=' + d));
this.driverInfo = $b.__driverInfo;
this.__quadIndexBufferElements = 16383;
f = this.__quadIndexBufferCount = 6 * this.__quadIndexBufferElements;
g = d = c = b = a = null;
a =
null != f
? new Uint16Array(f)
: null != a
? new Uint16Array(a)
: null != b
? new Uint16Array(b.__array)
: null != c
? new Uint16Array(c)
: null != d
? null == g
? new Uint16Array(d, 0)
: new Uint16Array(d, 0, g)
: null;
d = c = b = 0;
for (g = this.__quadIndexBufferElements; d < g; )
d++,
(a[b] = c),
(a[b + 1] = c + 1),
(a[b + 2] = c + 2),
(a[b + 3] = c + 2),
(a[b + 4] = c + 1),
(a[b + 5] = c + 3),
(b += 6),
(c += 4);
this.__quadIndexBuffer = this.createIndexBuffer(this.__quadIndexBufferCount);
this.__quadIndexBuffer.uploadFromTypedArray(a);
};
h['openfl.display3D.Context3D'] = $b;
$b.__name__ = 'openfl.display3D.Context3D';
$b.__super__ = db;
$b.prototype = r(db.prototype, {
backBufferHeight: null,
backBufferWidth: null,
driverInfo: null,
maxBackBufferHeight: null,
maxBackBufferWidth: null,
profile: null,
gl: null,
__backBufferAntiAlias: null,
__backBufferTexture: null,
__backBufferWantsBestResolution: null,
__backBufferWantsBestResolutionOnBrowserZoom: null,
__cleared: null,
__context: null,
__contextState: null,
__renderStage3DProgram: null,
__enableErrorChecking: null,
__fragmentConstants: null,
__frontBufferTexture: null,
__positionScale: null,
__present: null,
__programs: null,
__quadIndexBuffer: null,
__quadIndexBufferCount: null,
__quadIndexBufferElements: null,
__stage: null,
__stage3D: null,
__state: null,
__vertexConstants: null,
clear: function (a, b, c, d, f, g, p) {
null == p && (p = 7);
null == g && (g = 0);
null == f && (f = 1);
null == d && (d = 1);
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
this.__flushGLFramebuffer();
this.__flushGLViewport();
var e = 0;
if (0 != (p & 1)) {
null == this.__state.renderToTexture &&
(this.__stage.context3D != this ||
this.__stage.__renderer.__cleared ||
(this.__stage.__renderer.__cleared = !0),
(this.__cleared = !0));
e |= this.gl.COLOR_BUFFER_BIT;
if (
1 != this.__contextState.colorMaskRed ||
1 != this.__contextState.colorMaskGreen ||
1 != this.__contextState.colorMaskBlue ||
1 != this.__contextState.colorMaskAlpha
)
this.gl.colorMask(!0, !0, !0, !0),
(this.__contextState.colorMaskRed = !0),
(this.__contextState.colorMaskGreen = !0),
(this.__contextState.colorMaskBlue = !0),
(this.__contextState.colorMaskAlpha = !0);
this.gl.clearColor(a, b, c, d);
}
0 != (p & 2) &&
((e |= this.gl.DEPTH_BUFFER_BIT),
1 != this.__contextState.depthMask &&
(this.gl.depthMask(!0), (this.__contextState.depthMask = !0)),
this.gl.clearDepth(f));
0 != (p & 4) &&
((e |= this.gl.STENCIL_BUFFER_BIT),
255 != this.__contextState.stencilWriteMask &&
(this.gl.stencilMask(255), (this.__contextState.stencilWriteMask = 255)),
this.gl.clearStencil(g),
(this.__contextState.stencilWriteMask = 255));
0 != e && (this.__setGLScissorTest(!1), this.gl.clear(e));
},
configureBackBuffer: function (a, b, c, d, f, g) {
null == g && (g = !1);
null == f && (f = !1);
null == d && (d = !0);
if (null == this.__stage3D)
(this.backBufferWidth = a),
(this.backBufferHeight = b),
(this.__backBufferAntiAlias = c),
(this.__state.backBufferEnableDepthAndStencil = d),
(this.__backBufferWantsBestResolution = f),
(this.__backBufferWantsBestResolutionOnBrowserZoom = g);
else {
if (
null == this.__backBufferTexture ||
this.backBufferWidth != a ||
this.backBufferHeight != b
) {
null != this.__backBufferTexture && this.__backBufferTexture.dispose();
null != this.__frontBufferTexture && this.__frontBufferTexture.dispose();
this.__backBufferTexture = this.createRectangleTexture(a, b, 1, !0);
this.__frontBufferTexture = this.createRectangleTexture(a, b, 1, !0);
null == this.__stage3D.__vertexBuffer &&
(this.__stage3D.__vertexBuffer = this.createVertexBuffer(4, 5));
var e = yb.toFloatVector(null, null, null, [
a,
b,
0,
1,
1,
0,
b,
0,
0,
1,
a,
0,
0,
1,
0,
0,
0,
0,
0,
0
]);
this.__stage3D.__vertexBuffer.uploadFromVector(e, 0, 20);
null == this.__stage3D.__indexBuffer &&
((this.__stage3D.__indexBuffer = this.createIndexBuffer(6)),
(e = yb.toIntVector(null, null, null, [0, 1, 2, 2, 1, 3])),
this.__stage3D.__indexBuffer.uploadFromVector(e, 0, 6));
}
this.backBufferWidth = a;
this.backBufferHeight = b;
this.__backBufferAntiAlias = c;
this.__state.backBufferEnableDepthAndStencil = d;
this.__backBufferWantsBestResolution = f;
this.__backBufferWantsBestResolutionOnBrowserZoom = g;
this.__state.__primaryGLFramebuffer = this.__backBufferTexture.__getGLFramebuffer(
d,
c,
0
);
this.__frontBufferTexture.__getGLFramebuffer(d, c, 0);
}
},
createCubeTexture: function (a, b, c, d) {
null == d && (d = 0);
return new Zi(this, a, b, c, d);
},
createIndexBuffer: function (a, b) {
null == b && (b = 1);
return new cp(this, a, b);
},
createProgram: function (a) {
null == a && (a = 0);
return new dp(this, a);
},
createRectangleTexture: function (a, b, c, d) {
return new ck(this, a, b, dk.toString(c), d);
},
createTexture: function (a, b, c, d, f) {
null == f && (f = 0);
return new ii(this, a, b, c, d, f);
},
createVertexBuffer: function (a, b, c) {
null == c && (c = 1);
return new ep(this, a, b, Kw.toString(c));
},
createVideoTexture: function () {
return new en(this);
},
dispose: function (a) {
this.gl = null;
this.__dispose();
},
drawToBitmapData: function (a, b, c) {
if (null != a)
if (
((b =
null != b
? b.__toLimeRectangle()
: new Qd(0, 0, this.backBufferWidth, this.backBufferHeight)),
(c = null != c ? c.__toLimeVector2() : new Xd()),
this.__stage.context3D == this)
) {
if (null != this.__stage.window) {
if (null != this.__stage3D) {
var d = -this.__stage3D.get_x() | 0,
f = -this.__stage3D.get_y() | 0;
c.x = d;
c.y = f;
}
f = this.__stage.window.readPixels();
a.image.copyPixels(f, b, c);
}
} else if (null != this.__backBufferTexture) {
d = this.__state.renderToTexture;
this.setRenderToBackBuffer();
this.__flushGLFramebuffer();
this.__flushGLViewport();
f = this.backBufferWidth * this.backBufferHeight * 4;
var g = (f = null != f ? new Uint8Array(f) : null);
f = this.gl;
f.readPixels(
0,
0,
this.backBufferWidth,
this.backBufferHeight,
this.__backBufferTexture.__format,
this.gl.UNSIGNED_BYTE,
g
);
f = new Fb(new Rf(g, this.backBufferWidth, this.backBufferHeight, 32, 2));
a.image.copyPixels(f, b, c);
null != d &&
this.setRenderToTexture(
d,
this.__state.renderToTextureDepthStencil,
this.__state.renderToTextureAntiAlias,
this.__state.renderToTextureSurfaceSelector
);
}
},
drawTriangles: function (a, b, c) {
null == c && (c = -1);
null == b && (b = 0);
null == this.__state.renderToTexture &&
(this.__stage.context3D != this || this.__stage.__renderer.__cleared
? this.__cleared || this.clear(0, 0, 0, 0, 1, 0, 1)
: this.__stage.__renderer.__clear());
this.__flushGL();
null != this.__state.program && this.__state.program.__flush();
c = -1 == c ? a.__numIndices : 3 * c;
this.__bindGLElementArrayBuffer(a.__id);
this.gl.drawElements(this.gl.TRIANGLES, c, this.gl.UNSIGNED_SHORT, 2 * b);
},
present: function () {
this.setRenderToBackBuffer();
if (null != this.__stage3D && null != this.__backBufferTexture) {
this.__cleared || this.clear(0, 0, 0, 0, 1, 0, 1);
var a = this.__backBufferTexture;
this.__backBufferTexture = this.__frontBufferTexture;
this.__frontBufferTexture = a;
this.__state.__primaryGLFramebuffer = this.__backBufferTexture.__getGLFramebuffer(
this.__state.backBufferEnableDepthAndStencil,
this.__backBufferAntiAlias,
0
);
this.__cleared = !1;
}
this.__present = !0;
},
setBlendFactors: function (a, b) {
this.setBlendFactorsSeparate(a, b, a, b);
},
setBlendFactorsSeparate: function (a, b, c, d) {
this.__state.blendSourceRGBFactor = a;
this.__state.blendDestinationRGBFactor = b;
this.__state.blendSourceAlphaFactor = c;
this.__state.blendDestinationAlphaFactor = d;
this.__setGLBlendEquation(this.gl.FUNC_ADD);
},
setColorMask: function (a, b, c, d) {
this.__state.colorMaskRed = a;
this.__state.colorMaskGreen = b;
this.__state.colorMaskBlue = c;
this.__state.colorMaskAlpha = d;
},
setCulling: function (a) {
this.__state.culling = a;
},
setDepthTest: function (a, b) {
this.__state.depthMask = a;
this.__state.depthCompareMode = b;
},
setProgram: function (a) {
this.__state.program = a;
this.__state.shader = null;
if (null != a)
for (var b = 0, c = a.__samplerStates.length; b < c; ) {
var d = b++;
null == this.__state.samplerStates[d]
? (this.__state.samplerStates[d] = a.__samplerStates[d].clone())
: this.__state.samplerStates[d].copyFrom(a.__samplerStates[d]);
}
},
setProgramConstantsFromByteArray: function (a, b, c, d, f) {
if (
0 != c &&
null != this.__state.program &&
(null == this.__state.program || 1 != this.__state.program.__format)
) {
-1 == c && (c = (zb.get_length(d) >>> 2) - f);
var e = (a = 1 == a) ? this.__vertexConstants : this.__fragmentConstants,
p = zb.toBytes(d),
l = 0;
d = zb.get_length(d);
null == l && (l = 0);
d =
null == l
? new Float32Array(p.b.bufferValue)
: null == d
? new Float32Array(p.b.bufferValue, l)
: new Float32Array(p.b.bufferValue, l, d);
p = 4 * b;
f = (Ba.toFloat(f) / Ba.toFloat(4)) | 0;
l = 0;
for (var k = 4 * c; l < k; ) {
var n = l++;
e[p + n] = d[f + n];
}
null != this.__state.program && this.__state.program.__markDirty(a, b, c);
}
},
setProgramConstantsFromMatrix: function (a, b, c, d) {
null == d && (d = !1);
if (null != this.__state.program && 1 == this.__state.program.__format)
this.__flushGLProgram(),
(a = new Float32Array(16)),
(a[0] = c.rawData.get(0)),
(a[1] = c.rawData.get(1)),
(a[2] = c.rawData.get(2)),
(a[3] = c.rawData.get(3)),
(a[4] = c.rawData.get(4)),
(a[5] = c.rawData.get(5)),
(a[6] = c.rawData.get(6)),
(a[7] = c.rawData.get(7)),
(a[8] = c.rawData.get(8)),
(a[9] = c.rawData.get(9)),
(a[10] = c.rawData.get(10)),
(a[11] = c.rawData.get(11)),
(a[12] = c.rawData.get(12)),
(a[13] = c.rawData.get(13)),
(a[14] = c.rawData.get(14)),
(a[15] = c.rawData.get(15)),
bc.uniformMatrix4fv(this.gl, b, d, a);
else {
var e = (a = 1 == a) ? this.__vertexConstants : this.__fragmentConstants;
c = c.rawData;
var g = 4 * b;
d
? ((e[g++] = c.get(0)),
(e[g++] = c.get(4)),
(e[g++] = c.get(8)),
(e[g++] = c.get(12)),
(e[g++] = c.get(1)),
(e[g++] = c.get(5)),
(e[g++] = c.get(9)),
(e[g++] = c.get(13)),
(e[g++] = c.get(2)),
(e[g++] = c.get(6)),
(e[g++] = c.get(10)),
(e[g++] = c.get(14)),
(e[g++] = c.get(3)),
(e[g++] = c.get(7)),
(e[g++] = c.get(11)))
: ((e[g++] = c.get(0)),
(e[g++] = c.get(1)),
(e[g++] = c.get(2)),
(e[g++] = c.get(3)),
(e[g++] = c.get(4)),
(e[g++] = c.get(5)),
(e[g++] = c.get(6)),
(e[g++] = c.get(7)),
(e[g++] = c.get(8)),
(e[g++] = c.get(9)),
(e[g++] = c.get(10)),
(e[g++] = c.get(11)),
(e[g++] = c.get(12)),
(e[g++] = c.get(13)),
(e[g++] = c.get(14)));
e[g++] = c.get(15);
null != this.__state.program && this.__state.program.__markDirty(a, b, 4);
}
},
setProgramConstantsFromVector: function (a, b, c, d) {
null == d && (d = -1);
if (0 != d && (null == this.__state.program || 1 != this.__state.program.__format)) {
-1 == d && (d = c.get_length() >> 2);
for (
var e = (a = 1 == a) ? this.__vertexConstants : this.__fragmentConstants,
g = 0,
p = 4 * b,
l = 0,
k = d;
l < k;
)
l++,
(e[p++] = c.get(g++)),
(e[p++] = c.get(g++)),
(e[p++] = c.get(g++)),
(e[p++] = c.get(g++));
null != this.__state.program && this.__state.program.__markDirty(a, b, d);
}
},
setRenderToBackBuffer: function () {
this.__state.renderToTexture = null;
},
setRenderToTexture: function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = !1);
this.__state.renderToTexture = a;
this.__state.renderToTextureDepthStencil = b;
this.__state.renderToTextureAntiAlias = c;
this.__state.renderToTextureSurfaceSelector = d;
},
setSamplerStateAt: function (a, b, c, d) {
null == this.__state.samplerStates[a] && (this.__state.samplerStates[a] = new Ug());
a = this.__state.samplerStates[a];
a.wrap = b;
a.filter = c;
a.mipfilter = d;
},
setScissorRectangle: function (a) {
null != a
? ((this.__state.scissorEnabled = !0), this.__state.scissorRectangle.copyFrom(a))
: (this.__state.scissorEnabled = !1);
},
setStencilActions: function (a, b, c, d, f) {
null == f && (f = 5);
null == d && (d = 5);
null == c && (c = 5);
null == b && (b = 0);
null == a && (a = 2);
this.__state.stencilTriangleFace = a;
this.__state.stencilCompareMode = b;
this.__state.stencilPass = c;
this.__state.stencilDepthFail = d;
this.__state.stencilFail = f;
},
setStencilReferenceValue: function (a, b, c) {
null == c && (c = 255);
null == b && (b = 255);
this.__state.stencilReferenceValue = a;
this.__state.stencilReadMask = b;
this.__state.stencilWriteMask = c;
},
setTextureAt: function (a, b) {
this.__state.textures[a] = b;
},
setVertexBufferAt: function (a, b, c, d) {
null == d && (d = 4);
null == c && (c = 0);
if (null == b) this.gl.disableVertexAttribArray(a), this.__bindGLArrayBuffer(null);
else
switch (
(this.__bindGLArrayBuffer(b.__id), this.gl.enableVertexAttribArray(a), (c *= 4), d)
) {
case 0:
this.gl.vertexAttribPointer(a, 4, this.gl.UNSIGNED_BYTE, !0, b.__stride, c);
break;
case 1:
this.gl.vertexAttribPointer(a, 1, this.gl.FLOAT, !1, b.__stride, c);
break;
case 2:
this.gl.vertexAttribPointer(a, 2, this.gl.FLOAT, !1, b.__stride, c);
break;
case 3:
this.gl.vertexAttribPointer(a, 3, this.gl.FLOAT, !1, b.__stride, c);
break;
case 4:
this.gl.vertexAttribPointer(a, 4, this.gl.FLOAT, !1, b.__stride, c);
break;
default:
throw M.thrown(new kd());
}
},
__bindGLArrayBuffer: function (a) {
this.__contextState.__currentGLArrayBuffer != a &&
(this.gl.bindBuffer(this.gl.ARRAY_BUFFER, a),
(this.__contextState.__currentGLArrayBuffer = a));
},
__bindGLElementArrayBuffer: function (a) {
this.__contextState.__currentGLElementArrayBuffer != a &&
(this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER, a),
(this.__contextState.__currentGLElementArrayBuffer = a));
},
__bindGLFramebuffer: function (a) {
this.__contextState.__currentGLFramebuffer != a &&
(this.gl.bindFramebuffer(this.gl.FRAMEBUFFER, a),
(this.__contextState.__currentGLFramebuffer = a));
},
__bindGLTexture2D: function (a) {
this.gl.bindTexture(this.gl.TEXTURE_2D, a);
this.__contextState.__currentGLTexture2D = a;
},
__bindGLTextureCubeMap: function (a) {
this.gl.bindTexture(this.gl.TEXTURE_CUBE_MAP, a);
this.__contextState.__currentGLTextureCubeMap = a;
},
__dispose: function () {
this.driverInfo += ' (Disposed)';
null != this.__stage3D &&
((this.__stage3D.__indexBuffer = null),
(this.__stage3D.__vertexBuffer = null),
(this.__stage3D = this.__stage3D.context3D = null));
this.__positionScale =
this.__frontBufferTexture =
this.__fragmentConstants =
this.__renderStage3DProgram =
this.__context =
this.__backBufferTexture =
null;
this.__present = !1;
this.__vertexConstants = this.__stage = this.__quadIndexBuffer = null;
},
__drawTriangles: function (a, b) {
null == a && (a = 0);
null == this.__state.renderToTexture &&
(this.__stage.context3D != this || this.__stage.__renderer.__cleared
? this.__cleared || this.clear(0, 0, 0, 0, 1, 0, 1)
: this.__stage.__renderer.__clear());
this.__flushGL();
null != this.__state.program && this.__state.program.__flush();
this.gl.drawArrays(this.gl.TRIANGLES, a, b);
},
__flushGL: function () {
this.__flushGLProgram();
this.__flushGLFramebuffer();
this.__flushGLViewport();
this.__flushGLBlend();
if (
this.__contextState.colorMaskRed != this.__state.colorMaskRed ||
this.__contextState.colorMaskGreen != this.__state.colorMaskGreen ||
this.__contextState.colorMaskBlue != this.__state.colorMaskBlue ||
this.__contextState.colorMaskAlpha != this.__state.colorMaskAlpha
)
this.gl.colorMask(
this.__state.colorMaskRed,
this.__state.colorMaskGreen,
this.__state.colorMaskBlue,
this.__state.colorMaskAlpha
),
(this.__contextState.colorMaskRed = this.__state.colorMaskRed),
(this.__contextState.colorMaskGreen = this.__state.colorMaskGreen),
(this.__contextState.colorMaskBlue = this.__state.colorMaskBlue),
(this.__contextState.colorMaskAlpha = this.__state.colorMaskAlpha);
this.__flushGLCulling();
this.__flushGLDepth();
this.__flushGLScissor();
this.__flushGLStencil();
this.__flushGLTextures();
},
__flushGLBlend: function () {
if (
this.__contextState.blendDestinationRGBFactor !=
this.__state.blendDestinationRGBFactor ||
this.__contextState.blendSourceRGBFactor != this.__state.blendSourceRGBFactor ||
this.__contextState.blendDestinationAlphaFactor !=
this.__state.blendDestinationAlphaFactor ||
this.__contextState.blendSourceAlphaFactor != this.__state.blendSourceAlphaFactor
)
this.__setGLBlend(!0),
this.__state.blendDestinationRGBFactor == this.__state.blendDestinationAlphaFactor &&
this.__state.blendSourceRGBFactor == this.__state.blendSourceAlphaFactor
? this.gl.blendFunc(
this.__getGLBlend(this.__state.blendSourceRGBFactor),
this.__getGLBlend(this.__state.blendDestinationRGBFactor)
)
: this.gl.blendFuncSeparate(
this.__getGLBlend(this.__state.blendSourceRGBFactor),
this.__getGLBlend(this.__state.blendDestinationRGBFactor),
this.__getGLBlend(this.__state.blendSourceAlphaFactor),
this.__getGLBlend(this.__state.blendDestinationAlphaFactor)
),
(this.__contextState.blendDestinationRGBFactor =
this.__state.blendDestinationRGBFactor),
(this.__contextState.blendSourceRGBFactor = this.__state.blendSourceRGBFactor),
(this.__contextState.blendDestinationAlphaFactor =
this.__state.blendDestinationAlphaFactor),
(this.__contextState.blendSourceAlphaFactor = this.__state.blendSourceAlphaFactor);
},
__flushGLColor: function () {
if (
this.__contextState.colorMaskRed != this.__state.colorMaskRed ||
this.__contextState.colorMaskGreen != this.__state.colorMaskGreen ||
this.__contextState.colorMaskBlue != this.__state.colorMaskBlue ||
this.__contextState.colorMaskAlpha != this.__state.colorMaskAlpha
)
this.gl.colorMask(
this.__state.colorMaskRed,
this.__state.colorMaskGreen,
this.__state.colorMaskBlue,
this.__state.colorMaskAlpha
),
(this.__contextState.colorMaskRed = this.__state.colorMaskRed),
(this.__contextState.colorMaskGreen = this.__state.colorMaskGreen),
(this.__contextState.colorMaskBlue = this.__state.colorMaskBlue),
(this.__contextState.colorMaskAlpha = this.__state.colorMaskAlpha);
},
__flushGLCulling: function () {
if (this.__contextState.culling != this.__state.culling) {
if (3 == this.__state.culling) this.__setGLCullFace(!1);
else
switch ((this.__setGLCullFace(!0), this.__state.culling)) {
case 0:
this.gl.cullFace(this.gl.BACK);
break;
case 1:
this.gl.cullFace(this.gl.FRONT);
break;
case 2:
this.gl.cullFace(this.gl.FRONT_AND_BACK);
break;
case 3:
break;
default:
throw M.thrown(new kd());
}
this.__contextState.culling = this.__state.culling;
}
},
__flushGLDepth: function () {
var a =
this.__state.depthMask &&
(null != this.__state.renderToTexture
? this.__state.renderToTextureDepthStencil
: this.__state.backBufferEnableDepthAndStencil);
this.__contextState.depthMask != a &&
(this.gl.depthMask(a), (this.__contextState.depthMask = a));
if (this.__contextState.depthCompareMode != this.__state.depthCompareMode) {
switch (this.__state.depthCompareMode) {
case 0:
this.gl.depthFunc(this.gl.ALWAYS);
break;
case 1:
this.gl.depthFunc(this.gl.EQUAL);
break;
case 2:
this.gl.depthFunc(this.gl.GREATER);
break;
case 3:
this.gl.depthFunc(this.gl.GEQUAL);
break;
case 4:
this.gl.depthFunc(this.gl.LESS);
break;
case 5:
this.gl.depthFunc(this.gl.LEQUAL);
break;
case 6:
this.gl.depthFunc(this.gl.NEVER);
break;
case 7:
this.gl.depthFunc(this.gl.NOTEQUAL);
break;
default:
throw M.thrown(new kd());
}
this.__contextState.depthCompareMode = this.__state.depthCompareMode;
}
},
__flushGLFramebuffer: function () {
if (null != this.__state.renderToTexture) {
if (
this.__contextState.renderToTexture != this.__state.renderToTexture ||
this.__contextState.renderToTextureSurfaceSelector !=
this.__state.renderToTextureSurfaceSelector
) {
var a = this.__state.renderToTexture.__getGLFramebuffer(
this.__state.renderToTextureDepthStencil,
this.__state.renderToTextureAntiAlias,
this.__state.renderToTextureSurfaceSelector
);
this.__bindGLFramebuffer(a);
this.__contextState.renderToTexture = this.__state.renderToTexture;
this.__contextState.renderToTextureAntiAlias = this.__state.renderToTextureAntiAlias;
this.__contextState.renderToTextureDepthStencil =
this.__state.renderToTextureDepthStencil;
this.__contextState.renderToTextureSurfaceSelector =
this.__state.renderToTextureSurfaceSelector;
}
this.__setGLDepthTest(this.__state.renderToTextureDepthStencil);
this.__setGLStencilTest(this.__state.renderToTextureDepthStencil);
this.__setGLFrontFace(!0);
} else {
if (null == this.__stage && 0 == this.backBufferWidth && 0 == this.backBufferHeight)
throw M.thrown(new dd('Context3D backbuffer has not been configured'));
if (
null != this.__contextState.renderToTexture ||
this.__contextState.__currentGLFramebuffer != this.__state.__primaryGLFramebuffer ||
this.__contextState.backBufferEnableDepthAndStencil !=
this.__state.backBufferEnableDepthAndStencil
)
this.__bindGLFramebuffer(this.__state.__primaryGLFramebuffer),
(this.__contextState.renderToTexture = null),
(this.__contextState.backBufferEnableDepthAndStencil =
this.__state.backBufferEnableDepthAndStencil);
this.__setGLDepthTest(this.__state.backBufferEnableDepthAndStencil);
this.__setGLStencilTest(this.__state.backBufferEnableDepthAndStencil);
this.__setGLFrontFace(this.__stage.context3D != this);
}
},
__flushGLProgram: function () {
var a = this.__state.shader,
b = this.__state.program;
this.__contextState.shader != a &&
(null != this.__contextState.shader && this.__contextState.shader.__disable(),
null != a && a.__enable(),
(this.__contextState.shader = a));
this.__contextState.program != b &&
(null != this.__contextState.program && this.__contextState.program.__disable(),
null != b && b.__enable(),
(this.__contextState.program = b));
null != b &&
0 == b.__format &&
((this.__positionScale[1] =
this.__stage.context3D == this && null == this.__state.renderToTexture ? 1 : -1),
b.__setPositionScale(this.__positionScale));
},
__flushGLScissor: function () {
if (this.__state.scissorEnabled) {
this.__setGLScissorTest(!0);
this.__contextState.scissorEnabled = !0;
var a = this.__state.scissorRectangle.x | 0,
b = this.__state.scissorRectangle.y | 0,
c = this.__state.scissorRectangle.width | 0,
d = this.__state.scissorRectangle.height | 0;
null == this.__state.renderToTexture &&
null == this.__stage3D &&
(b =
((this.__stage.window.__height * this.__stage.window.__scale) | 0) -
(this.__state.scissorRectangle.height | 0) -
b);
if (
this.__contextState.scissorRectangle.x != a ||
this.__contextState.scissorRectangle.y != b ||
this.__contextState.scissorRectangle.width != c ||
this.__contextState.scissorRectangle.height != d
)
this.gl.scissor(a, b, c, d), this.__contextState.scissorRectangle.setTo(a, b, c, d);
} else
this.__contextState.scissorEnabled != this.__state.scissorEnabled &&
(this.__setGLScissorTest(!1), (this.__contextState.scissorEnabled = !1));
},
__flushGLStencil: function () {
if (
this.__contextState.stencilTriangleFace != this.__state.stencilTriangleFace ||
this.__contextState.stencilPass != this.__state.stencilPass ||
this.__contextState.stencilDepthFail != this.__state.stencilDepthFail ||
this.__contextState.stencilFail != this.__state.stencilFail
)
this.gl.stencilOpSeparate(
this.__getGLTriangleFace(this.__state.stencilTriangleFace),
this.__getGLStencilAction(this.__state.stencilFail),
this.__getGLStencilAction(this.__state.stencilDepthFail),
this.__getGLStencilAction(this.__state.stencilPass)
),
(this.__contextState.stencilTriangleFace = this.__state.stencilTriangleFace),
(this.__contextState.stencilPass = this.__state.stencilPass),
(this.__contextState.stencilDepthFail = this.__state.stencilDepthFail),
(this.__contextState.stencilFail = this.__state.stencilFail);
this.__contextState.stencilWriteMask != this.__state.stencilWriteMask &&
(this.gl.stencilMask(this.__state.stencilWriteMask),
(this.__contextState.stencilWriteMask = this.__state.stencilWriteMask));
if (
this.__contextState.stencilCompareMode != this.__state.stencilCompareMode ||
this.__contextState.stencilReferenceValue != this.__state.stencilReferenceValue ||
this.__contextState.stencilReadMask != this.__state.stencilReadMask
)
this.gl.stencilFunc(
this.__getGLCompareMode(this.__state.stencilCompareMode),
this.__state.stencilReferenceValue,
this.__state.stencilReadMask
),
(this.__contextState.stencilCompareMode = this.__state.stencilCompareMode),
(this.__contextState.stencilReferenceValue = this.__state.stencilReferenceValue),
(this.__contextState.stencilReadMask = this.__state.stencilReadMask);
},
__flushGLTextures: function () {
for (var a = 0, b, c, d = 0, f = this.__state.textures.length; d < f; ) {
var g = d++;
b = this.__state.textures[g];
c = this.__state.samplerStates[g];
null == c &&
((this.__state.samplerStates[g] = new Ug()), (c = this.__state.samplerStates[g]));
this.gl.activeTexture(this.gl.TEXTURE0 + a);
null != b
? (b.__textureTarget == this.gl.TEXTURE_2D
? this.__bindGLTexture2D(b.__getTexture())
: this.__bindGLTextureCubeMap(b.__getTexture()),
(this.__contextState.textures[g] = b),
b.__setSamplerState(c))
: this.__bindGLTexture2D(null);
null != this.__state.program &&
0 == this.__state.program.__format &&
c.textureAlpha &&
(this.gl.activeTexture(this.gl.TEXTURE0 + a + 4),
null != b && null != b.__alphaTexture
? (b.__alphaTexture.__textureTarget == this.gl.TEXTURE_2D
? this.__bindGLTexture2D(b.__alphaTexture.__getTexture())
: this.__bindGLTextureCubeMap(b.__alphaTexture.__getTexture()),
b.__alphaTexture.__setSamplerState(c),
this.gl.uniform1i(this.__state.program.__agalAlphaSamplerEnabled[a].location, 1))
: (this.__bindGLTexture2D(null),
null != this.__state.program.__agalAlphaSamplerEnabled[a] &&
this.gl.uniform1i(
this.__state.program.__agalAlphaSamplerEnabled[a].location,
0
)));
++a;
}
},
__flushGLViewport: function () {
if (null == this.__state.renderToTexture)
if (this.__stage.context3D == this) {
var a = null == this.__stage3D ? 0 : this.__stage3D.get_x() | 0,
b =
(this.__stage.window.__height * this.__stage.window.__scale -
this.backBufferHeight -
(null == this.__stage3D ? 0 : this.__stage3D.get_y())) |
0;
this.gl.viewport(a, b, this.backBufferWidth, this.backBufferHeight);
} else this.gl.viewport(0, 0, this.backBufferWidth, this.backBufferHeight);
else
(b = a = 0),
this.__state.renderToTexture instanceof ii
? ((b = this.__state.renderToTexture), (a = b.__width), (b = b.__height))
: this.__state.renderToTexture instanceof ck
? ((b = this.__state.renderToTexture), (a = b.__width), (b = b.__height))
: this.__state.renderToTexture instanceof Zi &&
((b = this.__state.renderToTexture), (b = a = b.__size)),
this.gl.viewport(0, 0, a, b);
},
__getGLBlend: function (a) {
switch (a) {
case 0:
return this.gl.DST_ALPHA;
case 1:
return this.gl.DST_COLOR;
case 2:
return this.gl.ONE;
case 3:
return this.gl.ONE_MINUS_DST_ALPHA;
case 4:
return this.gl.ONE_MINUS_DST_COLOR;
case 5:
return this.gl.ONE_MINUS_SRC_ALPHA;
case 6:
return this.gl.ONE_MINUS_SRC_COLOR;
case 7:
return this.gl.SRC_ALPHA;
case 8:
return this.gl.SRC_COLOR;
case 9:
return this.gl.ZERO;
default:
throw M.thrown(new kd());
}
},
__getGLCompareMode: function (a) {
switch (a) {
case 0:
return this.gl.ALWAYS;
case 1:
return this.gl.EQUAL;
case 2:
return this.gl.GREATER;
case 3:
return this.gl.GEQUAL;
case 4:
return this.gl.LESS;
case 5:
return this.gl.LEQUAL;
case 6:
return this.gl.NEVER;
case 7:
return this.gl.NOTEQUAL;
default:
return this.gl.EQUAL;
}
},
__getGLStencilAction: function (a) {
switch (a) {
case 0:
return this.gl.DECR;
case 1:
return this.gl.DECR_WRAP;
case 2:
return this.gl.INCR;
case 3:
return this.gl.INCR_WRAP;
case 4:
return this.gl.INVERT;
case 5:
return this.gl.KEEP;
case 6:
return this.gl.REPLACE;
case 7:
return this.gl.ZERO;
default:
return this.gl.KEEP;
}
},
__getGLTriangleFace: function (a) {
switch (a) {
case 0:
return this.gl.BACK;
case 1:
return this.gl.FRONT;
case 2:
return this.gl.FRONT_AND_BACK;
case 3:
return this.gl.NONE;
default:
return this.gl.FRONT_AND_BACK;
}
},
__renderStage3D: function (a) {
var b = a.context3D;
if (
null != b &&
b != this &&
null != b.__frontBufferTexture &&
a.visible &&
0 < this.backBufferHeight &&
0 < this.backBufferWidth
) {
if (null == this.__renderStage3DProgram) {
var c = new Y();
c.assemble(Lw.toString(1), 'm44 op, va0, vc0\nmov v0, va1');
var d = new Y();
d.assemble(Lw.toString(0), 'tex ft1, v0, fs0 <2d,nearest,nomip>\nmov oc, ft1');
this.__renderStage3DProgram = this.createProgram();
this.__renderStage3DProgram.upload(c.agalcode, d.agalcode);
}
this.setProgram(this.__renderStage3DProgram);
this.setBlendFactors(2, 9);
this.setColorMask(!0, !0, !0, !0);
this.setCulling(3);
this.setDepthTest(!1, 0);
this.setStencilActions();
this.setStencilReferenceValue(0, 0, 0);
this.setScissorRectangle(null);
this.setTextureAt(0, b.__frontBufferTexture);
this.setVertexBufferAt(0, a.__vertexBuffer, 0, 3);
this.setVertexBufferAt(1, a.__vertexBuffer, 3, 2);
this.setProgramConstantsFromMatrix(1, 0, a.__renderTransform, !0);
this.drawTriangles(a.__indexBuffer);
this.__present = !0;
}
},
__setGLBlend: function (a) {
this.__contextState.__enableGLBlend != a &&
(a ? this.gl.enable(this.gl.BLEND) : this.gl.disable(this.gl.BLEND),
(this.__contextState.__enableGLBlend = a));
},
__setGLBlendEquation: function (a) {
this.__contextState.__glBlendEquation != a &&
(this.gl.blendEquation(a), (this.__contextState.__glBlendEquation = a));
},
__setGLCullFace: function (a) {
this.__contextState.__enableGLCullFace != a &&
(a ? this.gl.enable(this.gl.CULL_FACE) : this.gl.disable(this.gl.CULL_FACE),
(this.__contextState.__enableGLCullFace = a));
},
__setGLDepthTest: function (a) {
this.__contextState.__enableGLDepthTest != a &&
(a ? this.gl.enable(this.gl.DEPTH_TEST) : this.gl.disable(this.gl.DEPTH_TEST),
(this.__contextState.__enableGLDepthTest = a));
},
__setGLFrontFace: function (a) {
this.__contextState.__frontFaceGLCCW != a &&
(this.gl.frontFace(a ? this.gl.CCW : this.gl.CW),
(this.__contextState.__frontFaceGLCCW = a));
},
__setGLScissorTest: function (a) {
this.__contextState.__enableGLScissorTest != a &&
(a ? this.gl.enable(this.gl.SCISSOR_TEST) : this.gl.disable(this.gl.SCISSOR_TEST),
(this.__contextState.__enableGLScissorTest = a));
},
__setGLStencilTest: function (a) {
this.__contextState.__enableGLStencilTest != a &&
(a ? this.gl.enable(this.gl.STENCIL_TEST) : this.gl.disable(this.gl.STENCIL_TEST),
(this.__contextState.__enableGLStencilTest = a));
},
get_enableErrorChecking: function () {
return this.__enableErrorChecking;
},
set_enableErrorChecking: function (a) {
return (this.__enableErrorChecking = a);
},
get_totalGPUMemory: function () {
if (-1 != $b.__glMemoryCurrentAvailable) {
var a = this.gl.getParameter($b.__glMemoryCurrentAvailable),
b = this.gl.getParameter($b.__glMemoryTotalAvailable);
if (0 < b) return 1024 * (b - a);
}
return 0;
},
__class__: $b,
__properties__: {
get_totalGPUMemory: 'get_totalGPUMemory',
set_enableErrorChecking: 'set_enableErrorChecking',
get_enableErrorChecking: 'get_enableErrorChecking'
}
});
var Kw = {
fromString: function (a) {
switch (a) {
case 'dynamicDraw':
return 0;
case 'staticDraw':
return 1;
default:
return null;
}
},
toString: function (a) {
switch (a) {
case 0:
return 'dynamicDraw';
case 1:
return 'staticDraw';
default:
return null;
}
}
},
Lw = {
fromString: function (a) {
switch (a) {
case 'fragment':
return 0;
case 'vertex':
return 1;
default:
return null;
}
},
toString: function (a) {
switch (a) {
case 0:
return 'fragment';
case 1:
return 'vertex';
default:
return null;
}
}
},
dk = {
fromString: function (a) {
switch (a) {
case 'bgrPacked565':
return 0;
case 'bgra':
return 1;
case 'bgraPacked4444':
return 2;
case 'compressed':
return 3;
case 'compressedAlpha':
return 4;
case 'rgbaHalfFloat':
return 5;
default:
return null;
}
},
toString: function (a) {
switch (a) {
case 0:
return 'bgrPacked565';
case 1:
return 'bgra';
case 2:
return 'bgraPacked4444';
case 3:
return 'compressed';
case 4:
return 'compressedAlpha';
case 5:
return 'rgbaHalfFloat';
default:
return null;
}
}
},
cp = function (a, b, c) {
this.__context = a;
this.__numIndices = b;
a = this.__context.gl;
this.__id = a.createBuffer();
this.__usage = 0 == c ? a.DYNAMIC_DRAW : a.STATIC_DRAW;
};
h['openfl.display3D.IndexBuffer3D'] = cp;
cp.__name__ = 'openfl.display3D.IndexBuffer3D';
cp.prototype = {
__context: null,
__id: null,
__memoryUsage: null,
__numIndices: null,
__tempUInt16Array: null,
__usage: null,
dispose: function () {
this.__context.gl.deleteBuffer(this.__id);
},
uploadFromByteArray: function (a, b, c, d) {
b += 2 * c;
a = zb.toArrayBuffer(a);
null == b && (b = 0);
d = null != a ? (null == d ? new Uint16Array(a, b) : new Uint16Array(a, b, d)) : null;
this.uploadFromTypedArray(d);
},
uploadFromTypedArray: function (a, b) {
null != a &&
((b = this.__context.gl),
this.__context.__bindGLElementArrayBuffer(this.__id),
bc.bufferData(b, b.ELEMENT_ARRAY_BUFFER, a, this.__usage));
},
uploadFromVector: function (a, b, c) {
if (null != a) {
var d = b + c,
f = this.__tempUInt16Array;
if (null == this.__tempUInt16Array || this.__tempUInt16Array.length < c)
(this.__tempUInt16Array = null != c ? new Uint16Array(c) : null),
null != f && this.__tempUInt16Array.set(f);
for (c = b; c < d; ) (f = c++), (this.__tempUInt16Array[f - b] = a.get(f));
this.uploadFromTypedArray(this.__tempUInt16Array);
}
},
__class__: cp
};
var dp = function (a, b) {
this.__context = a;
this.__format = b;
0 == this.__format
? ((this.__agalSamplerUsageMask = 0),
(this.__agalUniforms = new K()),
(this.__agalSamplerUniforms = new K()),
(this.__agalAlphaSamplerUniforms = new K()),
(this.__agalAlphaSamplerEnabled = []))
: ((this.__glslAttribNames = []),
(this.__glslAttribTypes = []),
(this.__glslSamplerNames = []),
(this.__glslUniformLocations = []),
(this.__glslUniformNames = []),
(this.__glslUniformTypes = []));
this.__samplerStates = [];
};
h['openfl.display3D.Program3D'] = dp;
dp.__name__ = 'openfl.display3D.Program3D';
dp.prototype = {
__agalAlphaSamplerEnabled: null,
__agalAlphaSamplerUniforms: null,
__agalFragmentUniformMap: null,
__agalPositionScale: null,
__agalSamplerUniforms: null,
__agalSamplerUsageMask: null,
__agalUniforms: null,
__agalVertexUniformMap: null,
__context: null,
__format: null,
__glFragmentShader: null,
__glFragmentSource: null,
__glProgram: null,
__glslAttribNames: null,
__glslAttribTypes: null,
__glslSamplerNames: null,
__glslUniformLocations: null,
__glslUniformNames: null,
__glslUniformTypes: null,
__glVertexShader: null,
__glVertexSource: null,
__samplerStates: null,
dispose: function () {
this.__deleteShaders();
},
getAttributeIndex: function (a) {
if (0 == this.__format) return U.startsWith(a, 'va') ? B.parseInt(a.substring(2)) : -1;
for (var b = 0, c = this.__glslAttribNames.length; b < c; ) {
var d = b++;
if (this.__glslAttribNames[d] == a) return d;
}
return -1;
},
getConstantIndex: function (a) {
if (0 == this.__format)
return U.startsWith(a, 'vc')
? B.parseInt(a.substring(2))
: U.startsWith(a, 'fc')
? B.parseInt(a.substring(2))
: -1;
for (var b = 0, c = this.__glslUniformNames.length; b < c; ) {
var d = b++;
if (this.__glslUniformNames[d] == a) return this.__glslUniformLocations[d];
}
return -1;
},
upload: function (a, b) {
if (0 == this.__format) {
var c = [];
a = Ee.convertToGLSL(a, null);
b = Ee.convertToGLSL(b, c);
5 == Xa.level &&
(Xa.info(a, {
fileName: 'openfl/display3D/Program3D.hx',
lineNumber: 399,
className: 'openfl.display3D.Program3D',
methodName: 'upload'
}),
Xa.info(b, {
fileName: 'openfl/display3D/Program3D.hx',
lineNumber: 400,
className: 'openfl.display3D.Program3D',
methodName: 'upload'
}));
this.__deleteShaders();
this.__uploadFromGLSL(a, b);
this.__buildAGALUniformList();
b = 0;
for (a = c.length; b < a; ) {
var d = b++;
this.__samplerStates[d] = c[d];
}
}
},
uploadSources: function (a, b) {
if (1 == this.__format) {
var c =
'#ifdef GL_ES\n\t\t\t#ifdef GL_FRAGMENT_PRECISION_HIGH\n\t\t\tprecision highp float;\n\t\t\t#else\n\t\t\tprecision mediump float;\n\t\t\t#endif\n\t\t\t#endif\n\t\t\t' +
a,
d =
'#ifdef GL_ES\n\t\t\t#ifdef GL_FRAGMENT_PRECISION_HIGH\n\t\t\tprecision highp float;\n\t\t\t#else\n\t\t\tprecision mediump float;\n\t\t\t#endif\n\t\t\t#endif\n\t\t\t' +
b;
if (c != this.__glVertexSource || d != this.__glFragmentSource) {
this.__processGLSLData(a, 'attribute');
this.__processGLSLData(a, 'uniform');
this.__processGLSLData(b, 'uniform');
this.__deleteShaders();
this.__uploadFromGLSL(c, d);
var f = this.__glslSamplerNames;
d = this.__glslAttribNames;
var g = this.__glslAttribTypes;
a = this.__glslUniformNames;
this.__glslSamplerNames = [];
this.__glslAttribNames = [];
this.__glslAttribTypes = [];
this.__glslUniformLocations = [];
b = this.__context.gl;
for (c = 0; c < f.length; ) {
var p = f[c];
++c;
var l = b.getUniformLocation(this.__glProgram, p);
this.__glslSamplerNames[l] = p;
}
c = 0;
for (f = d.length; c < f; )
(p = c++),
(l = b.getAttribLocation(this.__glProgram, d[p])),
(this.__glslAttribNames[l] = d[p]),
(this.__glslAttribTypes[l] = g[p]);
c = 0;
for (f = a.length; c < f; )
(p = c++),
(d = b.getUniformLocation(this.__glProgram, a[p])),
(this.__glslUniformLocations[p] = d);
}
}
},
__buildAGALUniformList: function () {
if (1 != this.__format) {
var a = this.__context.gl;
this.__agalUniforms.clear();
this.__agalSamplerUniforms.clear();
this.__agalAlphaSamplerUniforms.clear();
this.__agalAlphaSamplerEnabled = [];
this.__agalSamplerUsageMask = 0;
var b = a.getProgramParameter(this.__glProgram, a.ACTIVE_UNIFORMS);
for (var c = new K(), d = new K(), f = 0; f < b; ) {
var g = f++,
p = a.getActiveUniform(this.__glProgram, g),
l = p.name,
k = p.size,
n = p.type;
p = new fn(this.__context);
p.name = l;
p.size = k;
p.type = n;
p.location = a.getUniformLocation(this.__glProgram, p.name);
l = p.name.indexOf('[');
0 <= l && (p.name = p.name.substring(0, l));
switch (p.type) {
case 35674:
p.regCount = 2;
break;
case 35675:
p.regCount = 3;
break;
case 35676:
p.regCount = 4;
break;
default:
p.regCount = 1;
}
p.regCount *= p.size;
this.__agalUniforms.add(p);
if ('vcPositionScale' == p.name) this.__agalPositionScale = p;
else if (U.startsWith(p.name, 'vc'))
(p.regIndex = B.parseInt(p.name.substring(2))),
(p.regData = this.__context.__vertexConstants),
c.add(p);
else if (U.startsWith(p.name, 'fc'))
(p.regIndex = B.parseInt(p.name.substring(2))),
(p.regData = this.__context.__fragmentConstants),
d.add(p);
else if (U.startsWith(p.name, 'sampler') && -1 == p.name.indexOf('alpha'))
for (
p.regIndex = B.parseInt(p.name.substring(7)),
this.__agalSamplerUniforms.add(p),
l = 0,
k = p.regCount;
l < k;
)
(n = l++), (this.__agalSamplerUsageMask |= 1 << (p.regIndex + n));
else
U.startsWith(p.name, 'sampler') && U.endsWith(p.name, '_alpha')
? ((l = p.name.indexOf('_') - 7),
(p.regIndex = B.parseInt(p.name.substring(7, 7 + l)) + 4),
this.__agalAlphaSamplerUniforms.add(p))
: U.startsWith(p.name, 'sampler') &&
U.endsWith(p.name, '_alphaEnabled') &&
((p.regIndex = B.parseInt(p.name.substring(7))),
(this.__agalAlphaSamplerEnabled[p.regIndex] = p));
5 == Xa.level &&
Xa.verbose(
'' +
g +
' name:' +
p.name +
' type:' +
p.type +
' size:' +
p.size +
' location:' +
B.string(p.location),
{
fileName: 'openfl/display3D/Program3D.hx',
lineNumber: 577,
className: 'openfl.display3D.Program3D',
methodName: '__buildAGALUniformList'
}
);
}
this.__agalVertexUniformMap = new ek(Tc.array(c));
this.__agalFragmentUniformMap = new ek(Tc.array(d));
}
},
__deleteShaders: function () {
var a = this.__context.gl;
null != this.__glProgram && (this.__glProgram = null);
null != this.__glVertexShader &&
(a.deleteShader(this.__glVertexShader), (this.__glVertexShader = null));
null != this.__glFragmentShader &&
(a.deleteShader(this.__glFragmentShader), (this.__glFragmentShader = null));
},
__disable: function () {},
__enable: function () {
var a = this.__context.gl;
a.useProgram(this.__glProgram);
if (0 == this.__format) {
this.__agalVertexUniformMap.markAllDirty();
this.__agalFragmentUniformMap.markAllDirty();
for (var b = this.__agalSamplerUniforms.h; null != b; ) {
var c = b.item;
b = b.next;
if (1 == c.regCount) a.uniform1i(c.location, c.regIndex);
else throw M.thrown(new kd('!!! TODO: uniform location on webgl'));
}
for (b = this.__agalAlphaSamplerUniforms.h; null != b; )
if (((c = b.item), (b = b.next), 1 == c.regCount))
a.uniform1i(c.location, c.regIndex);
else throw M.thrown(new kd('!!! TODO: uniform location on webgl'));
}
},
__flush: function () {
0 == this.__format &&
(this.__agalVertexUniformMap.flush(), this.__agalFragmentUniformMap.flush());
},
__getSamplerState: function (a) {
return this.__samplerStates[a];
},
__markDirty: function (a, b, c) {
1 != this.__format &&
(a
? this.__agalVertexUniformMap.markDirty(b, c)
: this.__agalFragmentUniformMap.markDirty(b, c));
},
__processGLSLData: function (a, b) {
var c = 0,
d;
for (
d =
'uniform' == b
? new Ja('uniform ([A-Za-z0-9]+) ([A-Za-z0-9_]+)', '')
: new Ja('attribute ([A-Za-z0-9]+) ([A-Za-z0-9_]+)', '');
d.matchSub(a, c);
) {
var f = d.matched(1);
var g = d.matched(2);
if (!U.startsWith(g, 'gl_')) {
if (U.startsWith(f, 'sampler')) this.__glslSamplerNames.push(g);
else {
switch (f) {
case 'bool':
c = 0;
break;
case 'bvec2':
c = 1;
break;
case 'bvec3':
c = 2;
break;
case 'bvec4':
c = 3;
break;
case 'dvec2':
case 'vec2':
c = 5;
break;
case 'dvec3':
case 'vec3':
c = 6;
break;
case 'double':
case 'float':
c = 4;
break;
case 'ivec3':
case 'uvec3':
c = 10;
break;
case 'ivec4':
case 'uvec4':
c = 11;
break;
case 'mat2':
case 'mat2x2':
c = 12;
break;
case 'mat2x3':
c = 13;
break;
case 'mat2x4':
c = 14;
break;
case 'mat3x2':
c = 15;
break;
case 'mat3':
case 'mat3x3':
c = 16;
break;
case 'mat3x4':
c = 17;
break;
case 'mat4':
case 'mat4x4':
c = 20;
break;
case 'mat4x2':
c = 18;
break;
case 'mat4x3':
c = 19;
break;
case 'int':
case 'uint':
c = 8;
break;
case 'ivec2':
case 'uvec2':
c = 9;
break;
case 'dvec4':
case 'vec4':
c = 7;
break;
default:
c = null;
}
'uniform' == b
? (this.__glslUniformNames.push(g), this.__glslUniformTypes.push(c))
: (this.__glslAttribNames.push(g), this.__glslAttribTypes.push(c));
}
g = d.matchedPos();
c = g.pos + g.len;
}
}
},
__setPositionScale: function (a) {
1 != this.__format &&
null != this.__agalPositionScale &&
this.__context.gl.uniform4fv(this.__agalPositionScale.location, a);
},
__setSamplerState: function (a, b) {
this.__samplerStates[a] = b;
},
__uploadFromGLSL: function (a, b) {
var c = this.__context.gl;
this.__glVertexSource = a;
this.__glFragmentSource = b;
this.__glVertexShader = c.createShader(c.VERTEX_SHADER);
c.shaderSource(this.__glVertexShader, a);
c.compileShader(this.__glVertexShader);
if (0 == c.getShaderParameter(this.__glVertexShader, c.COMPILE_STATUS)) {
var d = 'Error compiling vertex shader\n' + c.getShaderInfoLog(this.__glVertexShader);
Xa.error(d + ('\n' + a), {
fileName: 'openfl/display3D/Program3D.hx',
lineNumber: 869,
className: 'openfl.display3D.Program3D',
methodName: '__uploadFromGLSL'
});
}
this.__glFragmentShader = c.createShader(c.FRAGMENT_SHADER);
c.shaderSource(this.__glFragmentShader, b);
c.compileShader(this.__glFragmentShader);
0 == c.getShaderParameter(this.__glFragmentShader, c.COMPILE_STATUS) &&
((d =
'Error compiling fragment shader\n' + c.getShaderInfoLog(this.__glFragmentShader)),
Xa.error(d + ('\n' + b), {
fileName: 'openfl/display3D/Program3D.hx',
lineNumber: 881,
className: 'openfl.display3D.Program3D',
methodName: '__uploadFromGLSL'
}));
this.__glProgram = c.createProgram();
if (0 == this.__format)
for (b = 0; 16 > b; ) {
var f = b++;
d = 'va' + f;
-1 != a.indexOf(' ' + d) && c.bindAttribLocation(this.__glProgram, f, d);
}
else
for (b = 0, a = this.__glslAttribNames; b < a.length; )
if (((d = a[b]), ++b, -1 < d.indexOf('Position') && U.startsWith(d, 'openfl_'))) {
c.bindAttribLocation(this.__glProgram, 0, d);
break;
}
c.attachShader(this.__glProgram, this.__glVertexShader);
c.attachShader(this.__glProgram, this.__glFragmentShader);
c.linkProgram(this.__glProgram);
0 == c.getProgramParameter(this.__glProgram, c.LINK_STATUS) &&
((d =
'Unable to initialize the shader program\n' + c.getProgramInfoLog(this.__glProgram)),
Xa.error(d, {
fileName: 'openfl/display3D/Program3D.hx',
lineNumber: 922,
className: 'openfl.display3D.Program3D',
methodName: '__uploadFromGLSL'
}));
},
__class__: dp
};
var fn = function (a) {
this.context = a;
this.isDirty = !0;
this.regDataPointer = new Uf(null, 0);
};
h['openfl.display3D.Uniform'] = fn;
fn.__name__ = 'openfl.display3D.Uniform';
fn.prototype = {
name: null,
location: null,
type: null,
size: null,
regData: null,
regIndex: null,
regCount: null,
isDirty: null,
context: null,
regDataPointer: null,
flush: function () {
var a = this.context.gl,
b = 4 * this.regIndex;
switch (this.type) {
case 35664:
ex.uniform2fv(a, this.location, this.regData.subarray(b, b + 2 * this.regCount));
break;
case 35665:
var c = this.location;
b = this.regData.subarray(b, b + 3 * this.regCount);
var d = null;
null != d ? a.uniform3fv(c, b, d, null) : a.uniform3fv(c, b);
break;
case 35666:
c = this.location;
b = this.regData.subarray(b, b + 4 * this.regCount);
d = null;
null != d ? a.uniform4fv(c, b, d, null) : a.uniform4fv(c, b);
break;
case 35674:
bc.uniformMatrix2fv(
a,
this.location,
!1,
this.regData.subarray(b, b + 4 * this.size)
);
break;
case 35675:
bc.uniformMatrix3fv(
a,
this.location,
!1,
this.regData.subarray(b, b + 9 * this.size)
);
break;
case 35676:
bc.uniformMatrix4fv(
a,
this.location,
!1,
this.regData.subarray(b, b + 16 * this.size)
);
break;
default:
(c = this.location),
(b = this.regData.subarray(b, b + 4 * this.regCount)),
(d = null),
null != d ? a.uniform4fv(c, b, d, null) : a.uniform4fv(c, b);
}
},
__getUniformRegisters: function (a, b) {
return this.regData.subarray(a, a + b);
},
__class__: fn
};
var ek = function (a) {
this.__uniforms = a;
this.__uniforms.sort(function (a, b) {
return Z.compare(a.regIndex, b.regIndex);
});
var b = 0;
a = 0;
for (var c = this.__uniforms; a < c.length; ) {
var d = c[a];
++a;
d.regIndex + d.regCount > b && (b = d.regIndex + d.regCount);
}
this.__registerLookup = yb.toObjectVector(null, b);
a = 0;
for (c = this.__uniforms; a < c.length; ) {
d = c[a];
++a;
b = 0;
for (var f = d.regCount; b < f; ) {
var g = b++;
this.__registerLookup.set(d.regIndex + g, d);
}
}
this.__anyDirty = this.__allDirty = !0;
};
h['openfl.display3D.UniformMap'] = ek;
ek.__name__ = 'openfl.display3D.UniformMap';
ek.prototype = {
__allDirty: null,
__anyDirty: null,
__registerLookup: null,
__uniforms: null,
flush: function () {
if (this.__anyDirty) {
for (var a = 0, b = this.__uniforms; a < b.length; ) {
var c = b[a];
++a;
if (this.__allDirty || c.isDirty) c.flush(), (c.isDirty = !1);
}
this.__anyDirty = this.__allDirty = !1;
}
},
markAllDirty: function () {
this.__anyDirty = this.__allDirty = !0;
},
markDirty: function (a, b) {
if (!this.__allDirty)
for (
b = a + b,
b > this.__registerLookup.get_length() && (b = this.__registerLookup.get_length());
a < b;
) {
var c = this.__registerLookup.get(a);
null != c ? ((this.__anyDirty = c.isDirty = !0), (a = c.regIndex + c.regCount)) : ++a;
}
},
__class__: ek
};
var ep = function (a, b, c, d) {
this.__context = a;
this.__numVertices = b;
this.__vertexSize = c;
a = this.__context.gl;
this.__id = a.createBuffer();
this.__stride = 4 * this.__vertexSize;
this.__usage = 0 == Kw.fromString(d) ? a.DYNAMIC_DRAW : a.STATIC_DRAW;
};
h['openfl.display3D.VertexBuffer3D'] = ep;
ep.__name__ = 'openfl.display3D.VertexBuffer3D';
ep.prototype = {
__context: null,
__data: null,
__id: null,
__memoryUsage: null,
__numVertices: null,
__stride: null,
__tempFloat32Array: null,
__usage: null,
__vertexSize: null,
dispose: function () {
this.__context.gl.deleteBuffer(this.__id);
},
uploadFromByteArray: function (a, b, c, d) {
b += c * this.__stride;
d *= this.__vertexSize;
a = zb.toArrayBuffer(a);
null == b && (b = 0);
a = null != a ? (null == d ? new Float32Array(a, b) : new Float32Array(a, b, d)) : null;
this.uploadFromTypedArray(Yg.toArrayBufferView(a));
},
uploadFromTypedArray: function (a, b) {
null != a &&
((b = this.__context.gl),
this.__context.__bindGLArrayBuffer(this.__id),
bc.bufferData(b, b.ARRAY_BUFFER, a, this.__usage));
},
uploadFromVector: function (a, b, c) {
if (null != a) {
b *= this.__vertexSize;
var d = c * this.__vertexSize;
c = b + d;
var f = this.__tempFloat32Array;
if (null == this.__tempFloat32Array || this.__tempFloat32Array.length < d)
(this.__tempFloat32Array = null != d ? new Float32Array(d) : null),
null != f && this.__tempFloat32Array.set(f);
for (d = b; d < c; ) (f = d++), (this.__tempFloat32Array[f - b] = a.get(f));
this.uploadFromTypedArray(Yg.toArrayBufferView(this.__tempFloat32Array));
}
},
__class__: ep
};
var Ee = function () {};
h['openfl.display3D._internal.AGALConverter'] = Ee;
Ee.__name__ = 'openfl.display3D._internal.AGALConverter';
Ee.prefixFromType = function (a, b) {
switch (a) {
case 0:
return 'va';
case 1:
return b == Fg.VERTEX ? 'vc' : 'fc';
case 2:
return b == Fg.VERTEX ? 'vt' : 'ft';
case 3:
return 'output_';
case 4:
return 'v';
case 5:
return 'sampler';
default:
throw M.thrown(new kd('Invalid data!'));
}
};
Ee.readUInt64 = function (a) {
var b = a.readInt();
a = a.readInt();
return new cb(a, b);
};
Ee.convertToGLSL = function (a, b) {
a.position = 0;
a.__endian = 1;
var c = a.readByte() & 255;
if (176 == c) return a.readUTF();
if (160 != c) throw M.thrown(new kd('Magic value must be 0xA0, may not be AGAL'));
var d = a.readInt();
if (1 != d) throw M.thrown(new kd('Version must be 1'));
if (161 != (a.readByte() & 255)) throw M.thrown(new kd('Shader type ID must be 0xA1'));
c = 0 == (a.readByte() & 255) ? Fg.VERTEX : Fg.FRAGMENT;
for (var f = new gn(), g = ''; ; ) {
d = a.position;
if (!Ba.gt(zb.get_length(a), d)) break;
var p = a.readInt();
d = a.readUnsignedInt();
var l = Ee.readUInt64(a),
k = Ee.readUInt64(a);
d = $i.parse(d, c);
l = ji.parse(l, c, d.mask);
var n = ji.parse(k, c, d.mask);
g += '\t';
switch (p) {
case 0:
g += B.string(d.toGLSL() + ' = ' + l.toGLSL() + '; // mov');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 1:
g += B.string(d.toGLSL() + ' = ' + l.toGLSL() + ' + ' + n.toGLSL() + '; // add');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 2:
g += B.string(d.toGLSL() + ' = ' + l.toGLSL() + ' - ' + n.toGLSL() + '; // sub');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 3:
g += B.string(d.toGLSL() + ' = ' + l.toGLSL() + ' * ' + n.toGLSL() + '; // mul');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 4:
g += B.string(d.toGLSL() + ' = ' + l.toGLSL() + ' / ' + n.toGLSL() + '; // div');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 5:
g =
-1 < l.toGLSL().indexOf('.')
? g + B.string(d.toGLSL() + ' = 1.0 / ' + l.toGLSL() + '; // rcp')
: g + B.string(d.toGLSL() + ' = vec4(1) / ' + l.toGLSL() + '; // rcp');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 6:
g += B.string(d.toGLSL() + ' = min(' + l.toGLSL() + ', ' + n.toGLSL() + '); // min');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 7:
g += B.string(d.toGLSL() + ' = max(' + l.toGLSL() + ', ' + n.toGLSL() + '); // max');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 8:
g += B.string(d.toGLSL() + ' = fract(' + l.toGLSL() + '); // frc');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 9:
g += B.string(d.toGLSL() + ' = sqrt(' + l.toGLSL() + '); // sqrt');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 10:
g += B.string(d.toGLSL() + ' = inversesqrt(' + l.toGLSL() + '); // rsq');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 11:
g += B.string(d.toGLSL() + ' = pow(' + l.toGLSL() + ', ' + n.toGLSL() + '); // pow');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 12:
g += B.string(d.toGLSL() + ' = log2(' + l.toGLSL() + '); // log');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 13:
g += B.string(d.toGLSL() + ' = exp2(' + l.toGLSL() + '); // exp');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 14:
g += B.string(d.toGLSL() + ' = normalize(' + l.toGLSL() + '); // normalize');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 15:
g += B.string(d.toGLSL() + ' = sin(' + l.toGLSL() + '); // sin');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 16:
g += B.string(d.toGLSL() + ' = cos(' + l.toGLSL() + '); // cos');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 17:
l.sourceMask = n.sourceMask = 7;
g += B.string(
d.toGLSL() + ' = cross(vec3(' + l.toGLSL() + '), vec3(' + n.toGLSL() + ')); // crs'
);
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 18:
l.sourceMask = n.sourceMask = 7;
g += B.string(
d.toGLSL() +
' = vec4(dot(vec3(' +
l.toGLSL() +
'), vec3(' +
n.toGLSL() +
')))' +
d.getWriteMask() +
'; // dp3'
);
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 19:
l.sourceMask = n.sourceMask = 15;
g += B.string(
d.toGLSL() +
' = vec4(dot(vec4(' +
l.toGLSL() +
'), vec4(' +
n.toGLSL() +
')))' +
d.getWriteMask() +
'; // dp4'
);
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 20:
g += B.string(d.toGLSL() + ' = abs(' + l.toGLSL() + '); // abs');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 21:
g += B.string(d.toGLSL() + ' = -' + l.toGLSL() + '; // neg');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 22:
g += B.string(d.toGLSL() + ' = clamp(' + l.toGLSL() + ', 0.0, 1.0); // saturate');
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
break;
case 23:
p = f.getRegisterUsage(n);
p != xa.VECTOR_4 && p != xa.VECTOR_4_ARRAY
? ((g += B.string(
d.toGLSL() + ' = ' + l.toGLSL() + ' * mat3(' + n.toGLSL(!1) + '); // m33'
)),
f.addDR(d, xa.VECTOR_4),
f.addSR(l, xa.VECTOR_4),
f.addSR(n, xa.MATRIX_4_4))
: ((l.sourceMask = n.sourceMask = 7),
(g += B.string(
d.toGLSL() +
' = vec3(dot(' +
l.toGLSL(!0) +
',' +
n.toGLSL(!0, 0) +
'), dot(' +
l.toGLSL(!0) +
',' +
n.toGLSL(!0, 1) +
'),dot(' +
l.toGLSL(!0) +
',' +
n.toGLSL(!0, 2) +
')); // m33'
)),
f.addDR(d, xa.VECTOR_4),
f.addSR(l, xa.VECTOR_4),
f.addSR(n, xa.VECTOR_4, 0),
f.addSR(n, xa.VECTOR_4, 1),
f.addSR(n, xa.VECTOR_4, 2));
break;
case 24:
p = f.getRegisterUsage(n);
p != xa.VECTOR_4 && p != xa.VECTOR_4_ARRAY
? ((g += B.string(
d.toGLSL() + ' = ' + l.toGLSL() + ' * ' + n.toGLSL(!1) + '; // m44'
)),
f.addDR(d, xa.VECTOR_4),
f.addSR(l, xa.VECTOR_4),
f.addSR(n, xa.MATRIX_4_4))
: ((l.sourceMask = n.sourceMask = 15),
(g += B.string(
d.toGLSL() +
' = vec4(dot(' +
l.toGLSL(!0) +
',' +
n.toGLSL(!0, 0) +
'), dot(' +
l.toGLSL(!0) +
',' +
n.toGLSL(!0, 1) +
'), dot(' +
l.toGLSL(!0) +
',' +
n.toGLSL(!0, 2) +
'), dot(' +
l.toGLSL(!0) +
',' +
n.toGLSL(!0, 3) +
')); // m44'
)),
f.addDR(d, xa.VECTOR_4),
f.addSR(l, xa.VECTOR_4),
f.addSR(n, xa.VECTOR_4, 0),
f.addSR(n, xa.VECTOR_4, 1),
f.addSR(n, xa.VECTOR_4, 2),
f.addSR(n, xa.VECTOR_4, 3));
break;
case 25:
d.mask &= 7;
p = f.getRegisterUsage(n);
p != xa.VECTOR_4 && p != xa.VECTOR_4_ARRAY
? ((g += B.string(
d.toGLSL() + ' = ' + l.toGLSL() + ' * ' + n.toGLSL(!1) + '; // m34'
)),
f.addDR(d, xa.VECTOR_4),
f.addSR(l, xa.VECTOR_4),
f.addSR(n, xa.MATRIX_4_4))
: ((l.sourceMask = n.sourceMask = 15),
(g += B.string(
d.toGLSL() +
' = vec3(dot(' +
l.toGLSL(!0) +
',' +
n.toGLSL(!0, 0) +
'), dot(' +
l.toGLSL(!0) +
',' +
n.toGLSL(!0, 1) +
'),dot(' +
l.toGLSL(!0) +
',' +
n.toGLSL(!0, 2) +
')); // m34'
)),
f.addDR(d, xa.VECTOR_4),
f.addSR(l, xa.VECTOR_4),
f.addSR(n, xa.VECTOR_4, 0),
f.addSR(n, xa.VECTOR_4, 1),
f.addSR(n, xa.VECTOR_4, 2));
break;
case 39:
l.sourceMask = 15;
g += B.string('if (any(lessThan(' + l.toGLSL() + ', vec4(0)))) discard;');
f.addSR(l, xa.VECTOR_4);
break;
case 40:
n = aj.parse(k, c);
switch (n.d) {
case 0:
2 == n.t
? ((l.sourceMask = 3),
f.addSaR(n, xa.SAMPLER_2D_ALPHA),
(g += B.string('if (' + n.toGLSL() + '_alphaEnabled) {\n')),
(g += B.string(
'\t\t' +
d.toGLSL() +
' = vec4(texture2D(' +
n.toGLSL() +
', ' +
l.toGLSL() +
').xyz, texture2D(' +
n.toGLSL() +
'_alpha, ' +
l.toGLSL() +
').x); // tex + alpha\n'
)),
(g += '\t} else {\n'),
(g += B.string(
'\t\t' +
d.toGLSL() +
' = texture2D(' +
n.toGLSL() +
', ' +
l.toGLSL() +
'); // tex\n'
)),
(g += '\t}'))
: ((l.sourceMask = 3),
f.addSaR(n, xa.SAMPLER_2D),
(g += B.string(
d.toGLSL() + ' = texture2D(' + n.toGLSL() + ', ' + l.toGLSL() + '); // tex'
)));
break;
case 1:
2 == n.t
? ((l.sourceMask = 7),
f.addSaR(n, xa.SAMPLER_CUBE_ALPHA),
(g += B.string('if (' + n.toGLSL() + '_alphaEnabled) {\n')),
(g += B.string(
'\t\t' +
d.toGLSL() +
' = vec4(textureCube(' +
n.toGLSL() +
', ' +
l.toGLSL() +
').xyz, textureCube(' +
n.toGLSL() +
'_alpha, ' +
l.toGLSL() +
').x); // tex + alpha\n'
)),
(g += '\t} else {\n'),
(g += B.string(
'\t\t' +
d.toGLSL() +
' = textureCube(' +
n.toGLSL() +
', ' +
l.toGLSL() +
'); // tex'
)),
(g += '\t}'))
: ((l.sourceMask = 7),
(g += B.string(
d.toGLSL() +
' = textureCube(' +
n.toGLSL() +
', ' +
l.toGLSL() +
'); // tex'
)),
f.addSaR(n, xa.SAMPLER_CUBE));
}
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
null != b && (b[n.n] = n.toSamplerState());
break;
case 41:
l.sourceMask = n.sourceMask = 15;
g += B.string(
d.toGLSL() +
' = vec4(greaterThanEqual(' +
l.toGLSL() +
', ' +
n.toGLSL() +
'))' +
d.getWriteMask() +
'; // ste'
);
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 42:
l.sourceMask = n.sourceMask = 15;
g += B.string(
d.toGLSL() +
' = vec4(lessThan(' +
l.toGLSL() +
', ' +
n.toGLSL() +
'))' +
d.getWriteMask() +
'; // slt'
);
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 44:
l.sourceMask = n.sourceMask = 15;
g += B.string(
d.toGLSL() +
' = vec4(equal(' +
l.toGLSL() +
', ' +
n.toGLSL() +
'))' +
d.getWriteMask() +
'; // seq'
);
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
case 45:
l.sourceMask = n.sourceMask = 15;
g += B.string(
d.toGLSL() +
' = vec4(notEqual(' +
l.toGLSL() +
', ' +
n.toGLSL() +
'))' +
d.getWriteMask() +
'; // sne'
);
f.addDR(d, xa.VECTOR_4);
f.addSR(l, xa.VECTOR_4);
f.addSR(n, xa.VECTOR_4);
break;
default:
throw M.thrown(new kd('Opcode ' + p));
}
g += '\n';
}
null == Ee.limitedProfile &&
((d = t.context.getParameter(7938)),
(Ee.limitedProfile = -1 < d.indexOf('OpenGL ES') || -1 < d.indexOf('WebGL')));
a = '' + B.string('// AGAL ' + (c == Fg.VERTEX ? 'vertex' : 'fragment') + ' shader\n');
a = Ee.limitedProfile
? a +
'#version 100\n#ifdef GL_FRAGMENT_PRECISION_HIGH\nprecision highp float;\n#else\nprecision mediump float;\n#endif\n'
: a + '#version 120\n';
a += B.string(f.toGLSL(!1));
c == Fg.VERTEX && (a += 'uniform vec4 vcPositionScale;\n');
a = a + 'void main() {\n' + B.string(f.toGLSL(!0));
a += B.string(g);
c == Fg.VERTEX && (a += '\tgl_Position *= vcPositionScale;\n');
return a + '}\n';
};
var $i = function () {};
h['openfl.display3D._internal._AGALConverter.DestRegister'] = $i;
$i.__name__ = 'openfl.display3D._internal._AGALConverter.DestRegister';
$i.parse = function (a, b) {
var c = new $i();
c.programType = b;
c.type = (a >>> 24) & 15;
c.mask = (a >>> 16) & 15;
c.n = a & 65535;
return c;
};
$i.prototype = {
mask: null,
n: null,
programType: null,
type: null,
getWriteMask: function () {
var a = '.';
0 != (this.mask & 1) && (a += 'x');
0 != (this.mask & 2) && (a += 'y');
0 != (this.mask & 4) && (a += 'z');
0 != (this.mask & 8) && (a += 'w');
return a;
},
toGLSL: function (a) {
null == a && (a = !0);
var b =
3 == this.type
? this.programType == Fg.VERTEX
? 'gl_Position'
: 'gl_FragColor'
: Ee.prefixFromType(this.type, this.programType) + this.n;
a && 15 != this.mask && (b += this.getWriteMask());
return b;
},
__class__: $i
};
var Fg = (E['openfl.display3D._internal._AGALConverter.ProgramType'] = {
__ename__: 'openfl.display3D._internal._AGALConverter.ProgramType',
__constructs__: null,
VERTEX: {
_hx_name: 'VERTEX',
_hx_index: 0,
__enum__: 'openfl.display3D._internal._AGALConverter.ProgramType',
toString: w
},
FRAGMENT: {
_hx_name: 'FRAGMENT',
_hx_index: 1,
__enum__: 'openfl.display3D._internal._AGALConverter.ProgramType',
toString: w
}
});
Fg.__constructs__ = [Fg.VERTEX, Fg.FRAGMENT];
var gn = function () {
this.mEntries = [];
};
h['openfl.display3D._internal.RegisterMap'] = gn;
gn.__name__ = 'openfl.display3D._internal.RegisterMap';
gn.prototype = {
mEntries: null,
add: function (a, b, c, d) {
for (var e = 0, g = this.mEntries; e < g.length; ) {
var p = g[e];
++e;
if (p.type == a && p.name == b && p.number == c) {
if (p.usage != d)
throw M.thrown(new kd('Cannot use register in multiple ways yet (mat4/vec4)'));
return;
}
}
p = new fp();
p.type = a;
p.name = b;
p.number = c;
p.usage = d;
this.mEntries.push(p);
},
addDR: function (a, b) {
this.add(a.type, a.toGLSL(!1), a.n, b);
},
addSaR: function (a, b) {
this.add(a.type, a.toGLSL(), a.n, b);
},
addSR: function (a, b, c) {
null == c && (c = 0);
0 != a.d
? (this.add(a.itype, Ee.prefixFromType(a.itype, a.programType) + a.n, a.n, xa.VECTOR_4),
this.add(
a.type,
Ee.prefixFromType(a.type, a.programType) + a.o,
a.o,
xa.VECTOR_4_ARRAY
))
: this.add(a.type, a.toGLSL(!1, c), a.n + c, b);
},
getRegisterUsage: function (a) {
return 0 != a.d ? xa.VECTOR_4_ARRAY : this.getUsage(a.type, a.toGLSL(!1), a.n);
},
getUsage: function (a, b, c) {
for (var d = 0, f = this.mEntries; d < f.length; ) {
var g = f[d];
++d;
if (g.type == a && g.name == b && g.number == c) return g.usage;
}
return xa.UNUSED;
},
toGLSL: function (a) {
this.mEntries.sort(function (a, b) {
return a.number - b.number;
});
this.mEntries.sort(function (a, b) {
return x.__cast(a.type, Ab) - x.__cast(b.type, Ab);
});
for (var b = '', c = 0, d = this.mEntries.length; c < d; ) {
var f = c++;
f = this.mEntries[f];
if (!((a && 2 != f.type) || (!a && 2 == f.type)) && 3 != f.type) {
switch (f.type) {
case 0:
b += 'attribute ';
break;
case 1:
b += 'uniform ';
break;
case 2:
b += '\t';
break;
case 3:
break;
case 4:
b += 'varying ';
break;
case 5:
b += 'uniform ';
break;
default:
throw M.thrown(new kd());
}
switch (f.usage._hx_index) {
case 0:
Xa.info('Missing switch patten: RegisterUsage.UNUSED', {
fileName: 'openfl/display3D/_internal/AGALConverter.hx',
lineNumber: 750,
className: 'openfl.display3D._internal.RegisterMap',
methodName: 'toGLSL'
});
break;
case 1:
b += 'vec4 ';
break;
case 2:
b += 'mat4 ';
break;
case 3:
b += 'sampler2D ';
break;
case 5:
b += 'samplerCube ';
break;
case 7:
b += 'vec4 ';
}
f.usage == xa.SAMPLER_2D_ALPHA
? ((b += 'sampler2D '),
(b += B.string(f.name)),
(b += ';\n'),
(b += 'uniform '),
(b += 'sampler2D '),
(b += B.string(f.name + '_alpha')),
(b += ';\n'),
(b += 'uniform '),
(b += 'bool '),
(b += B.string(f.name + '_alphaEnabled')))
: f.usage == xa.SAMPLER_CUBE_ALPHA
? ((b += 'samplerCube '),
(b += B.string(f.name)),
(b += ';\n'),
(b += 'uniform '),
(b += 'samplerCube '),
(b += B.string(f.name + '_alpha')),
(b += ';\n'),
(b += 'uniform '),
(b += 'bool '),
(b += B.string(f.name + '_alphaEnabled')))
: (b =
f.usage == xa.VECTOR_4_ARRAY
? b + B.string(f.name + '[128]')
: b + B.string(f.name));
b += ';\n';
}
}
return b;
},
__class__: gn
};
var fp = function () {};
h['openfl.display3D._internal._AGALConverter.RegisterMapEntry'] = fp;
fp.__name__ = 'openfl.display3D._internal._AGALConverter.RegisterMapEntry';
fp.prototype = {
name: null,
number: null,
type: null,
usage: null,
__class__: fp
};
var xa = (E['openfl.display3D._internal._AGALConverter.RegisterUsage'] = {
__ename__: 'openfl.display3D._internal._AGALConverter.RegisterUsage',
__constructs__: null,
UNUSED: {
_hx_name: 'UNUSED',
_hx_index: 0,
__enum__: 'openfl.display3D._internal._AGALConverter.RegisterUsage',
toString: w
},
VECTOR_4: {
_hx_name: 'VECTOR_4',
_hx_index: 1,
__enum__: 'openfl.display3D._internal._AGALConverter.RegisterUsage',
toString: w
},
MATRIX_4_4: {
_hx_name: 'MATRIX_4_4',
_hx_index: 2,
__enum__: 'openfl.display3D._internal._AGALConverter.RegisterUsage',
toString: w
},
SAMPLER_2D: {
_hx_name: 'SAMPLER_2D',
_hx_index: 3,
__enum__: 'openfl.display3D._internal._AGALConverter.RegisterUsage',
toString: w
},
SAMPLER_2D_ALPHA: {
_hx_name: 'SAMPLER_2D_ALPHA',
_hx_index: 4,
__enum__: 'openfl.display3D._internal._AGALConverter.RegisterUsage',
toString: w
},
SAMPLER_CUBE: {
_hx_name: 'SAMPLER_CUBE',
_hx_index: 5,
__enum__: 'openfl.display3D._internal._AGALConverter.RegisterUsage',
toString: w
},
SAMPLER_CUBE_ALPHA: {
_hx_name: 'SAMPLER_CUBE_ALPHA',
_hx_index: 6,
__enum__: 'openfl.display3D._internal._AGALConverter.RegisterUsage',
toString: w
},
VECTOR_4_ARRAY: {
_hx_name: 'VECTOR_4_ARRAY',
_hx_index: 7,
__enum__: 'openfl.display3D._internal._AGALConverter.RegisterUsage',
toString: w
}
});
xa.__constructs__ = [
xa.UNUSED,
xa.VECTOR_4,
xa.MATRIX_4_4,
xa.SAMPLER_2D,
xa.SAMPLER_2D_ALPHA,
xa.SAMPLER_CUBE,
xa.SAMPLER_CUBE_ALPHA,
xa.VECTOR_4_ARRAY
];
var aj = function () {};
h['openfl.display3D._internal._AGALConverter.SamplerRegister'] = aj;
aj.__name__ = 'openfl.display3D._internal._AGALConverter.SamplerRegister';
aj.parse = function (a, b) {
var c = new aj();
c.programType = b;
b = 60;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 15;
c.f = b;
b = 56;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 15;
c.m = b;
b = 52;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 15;
c.w = b;
b = 48;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 15;
c.s = b;
b = 44;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 15;
c.d = b;
b = 40;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 15;
c.t = b;
b = 32;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 15;
c.type = b;
b = 16;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 255;
c.b = b;
b = a.low & 65535;
c.n = b;
return c;
};
aj.prototype = {
b: null,
d: null,
f: null,
m: null,
n: null,
programType: null,
s: null,
t: null,
type: null,
w: null,
toGLSL: function () {
return Ee.prefixFromType(this.type, this.programType) + this.n;
},
toSamplerState: function () {
switch (this.f) {
case 0:
var a = 5;
break;
case 1:
a = 4;
break;
default:
throw M.thrown(new kd());
}
switch (this.m) {
case 0:
var b = 2;
break;
case 1:
b = 1;
break;
case 2:
b = 0;
break;
default:
throw M.thrown(new kd());
}
switch (this.w) {
case 0:
var c = 0;
break;
case 1:
c = 2;
break;
default:
throw M.thrown(new kd());
}
return new Ug(
c,
a,
b,
((this.b << 24) >> 24) / 8,
4 == (this.s & 4),
1 == (this.s & 1),
2 == this.t
);
},
__class__: aj
};
var ji = function () {};
h['openfl.display3D._internal._AGALConverter.SourceRegister'] = ji;
ji.__name__ = 'openfl.display3D._internal._AGALConverter.SourceRegister';
ji.parse = function (a, b, c) {
var d = new ji();
d.programType = b;
b = 63;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 1;
d.d = b;
b = 48;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 3;
d.q = b;
b = 40;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 15;
d.itype = b;
b = 32;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 15;
d.type = b;
b = 24;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 255;
d.s = b;
b = 16;
b =
0 == b
? new cb(a.high, a.low)
: 32 > b
? new cb(a.high >> b, (a.high << (32 - b)) | (a.low >>> b))
: new cb(a.high >> 31, a.high >> (b - 32));
b = b.low & 255;
d.o = b;
b = a.low & 65535;
d.n = b;
d.sourceMask = c;
return d;
};
ji.prototype = {
d: null,
itype: null,
n: null,
o: null,
programType: null,
q: null,
s: null,
sourceMask: null,
type: null,
toGLSL: function (a, b) {
null == b && (b = 0);
null == a && (a = !0);
if (3 == this.type) return this.programType == Fg.VERTEX ? 'gl_Position' : 'gl_FragColor';
var c = 228 == this.s && 15 == this.sourceMask,
d = '';
if (5 != this.type && !c) {
if (0 != (this.sourceMask & 1))
switch (this.s & 3) {
case 0:
d += 'x';
break;
case 1:
d += 'y';
break;
case 2:
d += 'z';
break;
case 3:
d += 'w';
}
if (0 != (this.sourceMask & 2))
switch ((this.s >> 2) & 3) {
case 0:
d += 'x';
break;
case 1:
d += 'y';
break;
case 2:
d += 'z';
break;
case 3:
d += 'w';
}
if (0 != (this.sourceMask & 4))
switch ((this.s >> 4) & 3) {
case 0:
d += 'x';
break;
case 1:
d += 'y';
break;
case 2:
d += 'z';
break;
case 3:
d += 'w';
}
if (0 != (this.sourceMask & 8))
switch ((this.s >> 6) & 3) {
case 0:
d += 'x';
break;
case 1:
d += 'y';
break;
case 2:
d += 'z';
break;
case 3:
d += 'w';
}
}
c = Ee.prefixFromType(this.type, this.programType);
if (0 == this.d) c += this.n + b;
else {
c += this.o;
var f = '';
switch (this.q) {
case 0:
f = 'x';
break;
case 1:
f = 'y';
break;
case 2:
f = 'z';
break;
case 3:
f = 'w';
}
f = Ee.prefixFromType(this.itype, this.programType) + this.n + '.' + f;
c += '[ int(' + f + ') +' + b + ']';
}
a && '' != d && (c += '.' + d);
return c;
},
__class__: ji
};
var fk = function (a, b) {
this.version = 0;
a.position = b;
var c = a.readUTFBytes(3);
a.position = b;
if ('ATF' != c) throw M.thrown(new kd('ATF signature not found'));
255 == a.b[b + 6]
? ((this.version = a.b[b + 7]), (a.position = b + 8), (c = this.__readUInt32(a)))
: ((this.version = 0), (a.position = b + 3), (c = this.__readUInt24(a)));
if (Ba.gt(x.__cast(b + c, Ab), zb.get_length(a)))
throw M.thrown(new kd('ATF length exceeds byte array length'));
this.data = a;
};
h['openfl.display3D._internal.ATFReader'] = fk;
fk.__name__ = 'openfl.display3D._internal.ATFReader';
fk.prototype = {
atfFormat: null,
cubeMap: null,
data: null,
height: null,
mipCount: null,
version: null,
width: null,
readHeader: function (a, b, c) {
var d = this.data.readUnsignedByte(),
f = d >>> 7;
if (!c && 0 != f) throw M.thrown(new kd('ATF Cube map not expected'));
if (c && 1 != f) throw M.thrown(new kd('ATF Cube map expected'));
this.cubeMap = c;
this.atfFormat = d & 127;
3 != this.atfFormat &&
5 != this.atfFormat &&
Xa.warn('Only ATF block compressed textures without JPEG-XR+LZMA are supported', {
fileName: 'openfl/display3D/_internal/ATFReader.hx',
lineNumber: 96,
className: 'openfl.display3D._internal.ATFReader',
methodName: 'readHeader'
});
this.width = 1 << this.data.readUnsignedByte();
this.height = 1 << this.data.readUnsignedByte();
if (this.width != a || this.height != b)
throw M.thrown(new kd('ATF width and height dont match'));
this.mipCount = this.data.readUnsignedByte();
return 5 == this.atfFormat;
},
readTextures: function (a) {
for (var b = 3 > this.version ? 3 : 4, c = 0, d = this.cubeMap ? 6 : 1; c < d; )
for (var f = c++, g = 0, p = this.mipCount; g < p; )
for (var l = g++, k = 0, n = b; k < n; ) {
var h = k++,
m =
0 == this.version ? this.__readUInt24(this.data) : this.__readUInt32(this.data);
if (Ba.gt(this.data.position + m, zb.get_length(this.data)))
throw M.thrown(new kd('Block length exceeds ATF file length'));
if (Ba.gt(m, 0)) {
var t = new hb(new ArrayBuffer(m)),
u = this.data,
q = zb.fromBytes(t),
r = 0,
w = m;
null == w && (w = 0);
null == r && (r = 0);
u.readBytes(q, r, w);
a(f, l, h, this.width >> l, this.height >> l, m, t);
}
}
},
__readUInt24: function (a) {
var b = a.readUnsignedByte() << 16;
b |= a.readUnsignedByte() << 8;
return (b |= a.readUnsignedByte());
},
__readUInt32: function (a) {
var b = a.readUnsignedByte() << 24;
b |= a.readUnsignedByte() << 16;
b |= a.readUnsignedByte() << 8;
return (b |= a.readUnsignedByte());
},
__class__: fk
};
var bk = function () {
this.backBufferEnableDepthAndStencil = !1;
this.blendDestinationAlphaFactor = 9;
this.blendSourceAlphaFactor = 2;
this.blendDestinationRGBFactor = 9;
this.blendSourceRGBFactor = 2;
this.colorMaskAlpha = this.colorMaskBlue = this.colorMaskGreen = this.colorMaskRed = !0;
this.culling = 3;
this.depthCompareMode = 4;
this.depthMask = !0;
this.samplerStates = [];
this.scissorRectangle = new fa();
this.stencilCompareMode = 0;
this.stencilPass = this.stencilFail = this.stencilDepthFail = 5;
this.stencilReadMask = 255;
this.stencilReferenceValue = 0;
this.stencilTriangleFace = 2;
this.stencilWriteMask = 255;
this.textures = [];
this.__frontFaceGLCCW = !0;
this.__glBlendEquation = 32774;
};
h['openfl.display3D._internal.Context3DState'] = bk;
bk.__name__ = 'openfl.display3D._internal.Context3DState';
bk.prototype = {
backBufferEnableDepthAndStencil: null,
blendDestinationAlphaFactor: null,
blendSourceAlphaFactor: null,
blendDestinationRGBFactor: null,
blendSourceRGBFactor: null,
colorMaskRed: null,
colorMaskGreen: null,
colorMaskBlue: null,
colorMaskAlpha: null,
culling: null,
depthCompareMode: null,
depthMask: null,
program: null,
renderToTexture: null,
renderToTextureAntiAlias: null,
renderToTextureDepthStencil: null,
renderToTextureSurfaceSelector: null,
samplerStates: null,
scissorEnabled: null,
scissorRectangle: null,
stencilCompareMode: null,
stencilDepthFail: null,
stencilFail: null,
stencilPass: null,
stencilReadMask: null,
stencilReferenceValue: null,
stencilTriangleFace: null,
stencilWriteMask: null,
textures: null,
shader: null,
__currentGLArrayBuffer: null,
__currentGLElementArrayBuffer: null,
__currentGLFramebuffer: null,
__currentGLTexture2D: null,
__currentGLTextureCubeMap: null,
__enableGLBlend: null,
__enableGLCullFace: null,
__enableGLDepthTest: null,
__enableGLScissorTest: null,
__enableGLStencilTest: null,
__frontFaceGLCCW: null,
__glBlendEquation: null,
__primaryGLFramebuffer: null,
__rttDepthGLRenderbuffer: null,
__rttGLFramebuffer: null,
__rttGLRenderbuffer: null,
__rttStencilGLRenderbuffer: null,
__class__: bk
};
var dc = function (a) {
db.call(this);
this.__context = a;
var b = this.__context.gl;
this.__textureID = b.createTexture();
this.__textureContext = this.__context.__context;
if (null == dc.__supportsBGRA) {
dc.__textureInternalFormat = b.RGBA;
dc.__supportsBGRA = !1;
dc.__textureFormat = b.RGBA;
dc.__compressedFormats = new Za();
dc.__compressedFormatsAlpha = new Za();
a = b.getExtension('WEBGL_compressed_texture_s3tc');
var c = b.getExtension('WEBGL_compressed_texture_etc1');
b = b.getExtension('WEBKIT_WEBGL_compressed_texture_pvrtc');
if (null != a) {
var d = a.COMPRESSED_RGBA_S3TC_DXT1_EXT;
dc.__compressedFormats.h[0] = d;
d = a.COMPRESSED_RGBA_S3TC_DXT5_EXT;
dc.__compressedFormatsAlpha.h[0] = d;
}
null != c &&
((d = c.COMPRESSED_RGB_ETC1_WEBGL),
(dc.__compressedFormats.h[2] = d),
(d = c.COMPRESSED_RGB_ETC1_WEBGL),
(dc.__compressedFormatsAlpha.h[2] = d));
null != b &&
((d = b.COMPRESSED_RGB_PVRTC_4BPPV1_IMG),
(dc.__compressedFormats.h[1] = d),
(d = b.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG),
(dc.__compressedFormatsAlpha.h[1] = d));
}
this.__internalFormat = dc.__textureInternalFormat;
this.__format = dc.__textureFormat;
};
h['openfl.display3D.textures.TextureBase'] = dc;
dc.__name__ = 'openfl.display3D.textures.TextureBase';
dc.__super__ = db;
dc.prototype = r(db.prototype, {
__alphaTexture: null,
__context: null,
__format: null,
__glDepthRenderbuffer: null,
__glFramebuffer: null,
__glStencilRenderbuffer: null,
__height: null,
__internalFormat: null,
__optimizeForRenderToTexture: null,
__samplerState: null,
__streamingLevels: null,
__textureContext: null,
__textureID: null,
__textureTarget: null,
__width: null,
dispose: function () {
var a = this.__context.gl;
null != this.__alphaTexture &&
(this.__alphaTexture.dispose(), (this.__alphaTexture = null));
null != this.__textureID &&
(a.deleteTexture(this.__textureID), (this.__textureID = null));
null != this.__glFramebuffer &&
(a.deleteFramebuffer(this.__glFramebuffer), (this.__glFramebuffer = null));
null != this.__glDepthRenderbuffer &&
(a.deleteRenderbuffer(this.__glDepthRenderbuffer), (this.__glDepthRenderbuffer = null));
null != this.__glStencilRenderbuffer &&
(a.deleteRenderbuffer(this.__glStencilRenderbuffer),
(this.__glStencilRenderbuffer = null));
},
__getGLFramebuffer: function (a, b, c) {
b = this.__context.gl;
null == this.__glFramebuffer &&
((this.__glFramebuffer = b.createFramebuffer()),
this.__context.__bindGLFramebuffer(this.__glFramebuffer),
b.framebufferTexture2D(
b.FRAMEBUFFER,
b.COLOR_ATTACHMENT0,
b.TEXTURE_2D,
this.__textureID,
0
),
this.__context.__enableErrorChecking &&
((c = b.checkFramebufferStatus(b.FRAMEBUFFER)),
c != b.FRAMEBUFFER_COMPLETE &&
Xa.warn(
'Error: Context3D.setRenderToTexture status:' +
c +
' width:' +
this.__width +
' height:' +
this.__height,
{
fileName: 'openfl/display3D/textures/TextureBase.hx',
lineNumber: 201,
className: 'openfl.display3D.textures.TextureBase',
methodName: '__getGLFramebuffer'
}
)));
a &&
null == this.__glDepthRenderbuffer &&
(this.__context.__bindGLFramebuffer(this.__glFramebuffer),
0 != $b.__glDepthStencil
? ((this.__glStencilRenderbuffer = this.__glDepthRenderbuffer =
b.createRenderbuffer()),
b.bindRenderbuffer(b.RENDERBUFFER, this.__glDepthRenderbuffer),
b.renderbufferStorage(
b.RENDERBUFFER,
$b.__glDepthStencil,
this.__width,
this.__height
),
b.framebufferRenderbuffer(
b.FRAMEBUFFER,
b.DEPTH_STENCIL_ATTACHMENT,
b.RENDERBUFFER,
this.__glDepthRenderbuffer
))
: ((this.__glDepthRenderbuffer = b.createRenderbuffer()),
(this.__glStencilRenderbuffer = b.createRenderbuffer()),
b.bindRenderbuffer(b.RENDERBUFFER, this.__glDepthRenderbuffer),
b.renderbufferStorage(
b.RENDERBUFFER,
b.DEPTH_COMPONENT16,
this.__width,
this.__height
),
b.bindRenderbuffer(b.RENDERBUFFER, this.__glStencilRenderbuffer),
b.renderbufferStorage(
b.RENDERBUFFER,
b.STENCIL_INDEX8,
this.__width,
this.__height
),
b.framebufferRenderbuffer(
b.FRAMEBUFFER,
b.DEPTH_ATTACHMENT,
b.RENDERBUFFER,
this.__glDepthRenderbuffer
),
b.framebufferRenderbuffer(
b.FRAMEBUFFER,
b.STENCIL_ATTACHMENT,
b.RENDERBUFFER,
this.__glStencilRenderbuffer
)),
this.__context.__enableErrorChecking &&
((c = b.checkFramebufferStatus(b.FRAMEBUFFER)),
c != b.FRAMEBUFFER_COMPLETE &&
Xa.warn(
'Error: Context3D.setRenderToTexture status:' +
c +
' width:' +
this.__width +
' height:' +
this.__height,
{
fileName: 'openfl/display3D/textures/TextureBase.hx',
lineNumber: 239,
className: 'openfl.display3D.textures.TextureBase',
methodName: '__getGLFramebuffer'
}
)),
b.bindRenderbuffer(b.RENDERBUFFER, null));
return this.__glFramebuffer;
},
__getImage: function (a) {
var b = a.image;
if (!a.__isValid || null == b) return null;
Aa.sync(b, !1);
a = this.__context.gl;
b.type == ve.DATA || b.get_premultiplied()
? !b.get_premultiplied() &&
b.get_transparent() &&
(a.pixelStorei(a.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 0),
(b = b.clone()),
b.set_premultiplied(!0))
: a.pixelStorei(a.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1);
0 != b.get_format() && ((b = b.clone()), b.set_format(0), (b.buffer.premultiplied = !0));
return b;
},
__getTexture: function () {
return this.__textureID;
},
__setSamplerState: function (a) {
if (!a.equals(this.__samplerState)) {
var b = this.__context.gl;
this.__textureTarget == this.__context.gl.TEXTURE_CUBE_MAP
? this.__context.__bindGLTextureCubeMap(this.__textureID)
: this.__context.__bindGLTexture2D(this.__textureID);
var c;
switch (a.wrap) {
case 0:
var d = (c = b.CLAMP_TO_EDGE);
break;
case 1:
c = b.CLAMP_TO_EDGE;
d = b.REPEAT;
break;
case 2:
d = c = b.REPEAT;
break;
case 3:
c = b.REPEAT;
d = b.CLAMP_TO_EDGE;
break;
default:
throw M.thrown(new dd('wrap bad enum'));
}
var f = 5 == a.filter ? b.NEAREST : b.LINEAR;
switch (a.mipfilter) {
case 0:
var g = 5 == a.filter ? b.NEAREST_MIPMAP_LINEAR : b.LINEAR_MIPMAP_LINEAR;
break;
case 1:
g = 5 == a.filter ? b.NEAREST_MIPMAP_NEAREST : b.LINEAR_MIPMAP_NEAREST;
break;
case 2:
g = 5 == a.filter ? b.NEAREST : b.LINEAR;
break;
default:
throw M.thrown(new dd('mipfiter bad enum'));
}
b.texParameteri(this.__textureTarget, b.TEXTURE_MIN_FILTER, g);
b.texParameteri(this.__textureTarget, b.TEXTURE_MAG_FILTER, f);
b.texParameteri(this.__textureTarget, b.TEXTURE_WRAP_S, c);
b.texParameteri(this.__textureTarget, b.TEXTURE_WRAP_T, d);
null == this.__samplerState && (this.__samplerState = a.clone());
this.__samplerState.copyFrom(a);
return !0;
}
return !1;
},
__uploadFromImage: function (a) {
var b = this.__context.gl,
c;
if (this.__textureTarget == b.TEXTURE_2D) {
if (1 == a.buffer.bitsPerPixel) var d = (c = b.ALPHA);
else (c = dc.__textureInternalFormat), (d = dc.__textureFormat);
this.__context.__bindGLTexture2D(this.__textureID);
a.type == ve.DATA || a.get_premultiplied()
? !a.get_premultiplied() &&
a.get_transparent() &&
b.pixelStorei(b.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1)
: b.pixelStorei(b.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1);
a.type == ve.DATA
? bc.texImage2D(
b,
b.TEXTURE_2D,
0,
c,
a.buffer.width,
a.buffer.height,
0,
d,
b.UNSIGNED_BYTE,
a.get_data()
)
: bc.texImage2D(b, b.TEXTURE_2D, 0, c, d, b.UNSIGNED_BYTE, a.get_src());
this.__context.__bindGLTexture2D(null);
}
},
__class__: dc
});
var Zi = function (a, b, c, d, f) {
dc.call(this, a);
this.__width = this.__height = this.__size = b;
this.__optimizeForRenderToTexture = d;
this.__streamingLevels = f;
this.__textureTarget = this.__context.gl.TEXTURE_CUBE_MAP;
this.__uploadedSides = 0;
};
h['openfl.display3D.textures.CubeTexture'] = Zi;
Zi.__name__ = 'openfl.display3D.textures.CubeTexture';
Zi.__super__ = dc;
Zi.prototype = r(dc.prototype, {
__framebufferSurface: null,
__size: null,
__uploadedSides: null,
uploadCompressedTextureFromByteArray: function (a, b, c) {
null == c && (c = !1);
var d = this;
c
? Qe.delay(function () {
d.__uploadCompressedTextureFromByteArray(a, b);
var c = new oa('textureReady');
d.dispatchEvent(c);
}, 1)
: this.__uploadCompressedTextureFromByteArray(a, b);
},
uploadFromBitmapData: function (a, b, c, d) {
null == c && (c = 0);
if (
null != a &&
((d = this.__size >> c), 0 != d && ((a = this.__getImage(a)), null != a))
)
if (0 == c && null != a.buffer && null == a.buffer.data && null != a.buffer.get_src()) {
var e = this.__context.gl;
d = this.__size >> c;
0 != d &&
((d = this.__sideToTarget(b)),
this.__context.__bindGLTextureCubeMap(this.__textureID),
bc.texImage2D(
e,
d,
c,
this.__internalFormat,
this.__format,
e.UNSIGNED_BYTE,
a.buffer.get_src()
),
this.__context.__bindGLTextureCubeMap(null),
(this.__uploadedSides |= 1 << b));
} else this.uploadFromTypedArray(a.get_data(), b, c);
},
uploadFromByteArray: function (a, b, c, d) {
null == d && (d = 0);
0 == b
? this.uploadFromTypedArray(a.b, c, d)
: ((a = zb.toArrayBuffer(a)),
null == b && (b = 0),
(b = null != a ? new Uint8Array(a, b) : null),
this.uploadFromTypedArray(b, c, d));
},
uploadFromTypedArray: function (a, b, c) {
null == c && (c = 0);
if (null != a) {
var d = this.__context.gl,
f = this.__size >> c;
if (0 != f) {
var g = this.__sideToTarget(b);
this.__context.__bindGLTextureCubeMap(this.__textureID);
bc.texImage2D(
d,
g,
c,
this.__internalFormat,
f,
f,
0,
this.__format,
d.UNSIGNED_BYTE,
a
);
this.__context.__bindGLTextureCubeMap(null);
this.__uploadedSides |= 1 << b;
}
}
},
__getGLFramebuffer: function (a, b, c) {
var d = this.__context.gl;
null == this.__glFramebuffer &&
((this.__glFramebuffer = d.createFramebuffer()), (this.__framebufferSurface = -1));
if (
this.__framebufferSurface != c &&
((this.__framebufferSurface = c),
this.__context.__bindGLFramebuffer(this.__glFramebuffer),
d.framebufferTexture2D(
d.FRAMEBUFFER,
d.COLOR_ATTACHMENT0,
d.TEXTURE_CUBE_MAP_POSITIVE_X + c,
this.__textureID,
0
),
this.__context.__enableErrorChecking)
) {
var f = d.checkFramebufferStatus(d.FRAMEBUFFER);
f != d.FRAMEBUFFER_COMPLETE &&
Xa.error(
'Error: Context3D.setRenderToTexture status:' +
f +
' width:' +
this.__width +
' height:' +
this.__height,
{
fileName: 'openfl/display3D/textures/CubeTexture.hx',
lineNumber: 278,
className: 'openfl.display3D.textures.CubeTexture',
methodName: '__getGLFramebuffer'
}
);
}
return dc.prototype.__getGLFramebuffer.call(this, a, b, c);
},
__setSamplerState: function (a) {
if (dc.prototype.__setSamplerState.call(this, a)) {
var b = this.__context.gl;
2 == a.mipfilter ||
this.__samplerState.mipmapGenerated ||
(b.generateMipmap(b.TEXTURE_CUBE_MAP), (this.__samplerState.mipmapGenerated = !0));
if (0 != $b.__glMaxTextureMaxAnisotropy) {
switch (a.filter) {
case 0:
a = 16;
break;
case 1:
a = 2;
break;
case 2:
a = 4;
break;
case 3:
a = 8;
break;
default:
a = 1;
}
a > $b.__glMaxTextureMaxAnisotropy && (a = $b.__glMaxTextureMaxAnisotropy);
b.texParameterf(b.TEXTURE_CUBE_MAP, $b.__glTextureMaxAnisotropy, a);
}
return !0;
}
return !1;
},
__sideToTarget: function (a) {
var b = this.__context.gl;
switch (a) {
case 0:
return b.TEXTURE_CUBE_MAP_POSITIVE_X;
case 1:
return b.TEXTURE_CUBE_MAP_NEGATIVE_X;
case 2:
return b.TEXTURE_CUBE_MAP_POSITIVE_Y;
case 3:
return b.TEXTURE_CUBE_MAP_NEGATIVE_Y;
case 4:
return b.TEXTURE_CUBE_MAP_POSITIVE_Z;
case 5:
return b.TEXTURE_CUBE_MAP_NEGATIVE_Z;
default:
throw M.thrown(new kd());
}
},
__uploadCompressedTextureFromByteArray: function (a, b) {
var c = this;
a = new fk(a, b);
var d = a.readHeader(this.__size, this.__size, !0),
f = this.__context.gl;
this.__context.__bindGLTextureCubeMap(this.__textureID);
var g = !1;
a.readTextures(function (a, b, e, l, k, p, n) {
var h = d ? dc.__compressedFormatsAlpha.h[e] : dc.__compressedFormats.h[e];
if (0 != h)
if (
((g = !0),
(a = c.__sideToTarget(a)),
(c.__format = h),
(c.__internalFormat = h),
d && 2 == e)
) {
p = (p / 2) | 0;
var m = (e = null),
v = null,
t = null,
u = n.b.buffer,
q = 0;
null == q && (q = 0);
e =
null != e
? new Uint8Array(e)
: null != m
? new Uint8Array(m)
: null != v
? new Uint8Array(v.__array)
: null != t
? new Uint8Array(t)
: null != u
? null == p
? new Uint8Array(u, q)
: new Uint8Array(u, q, p)
: null;
bc.compressedTexImage2D(f, a, b, c.__internalFormat, l, k, 0, e);
var r = new Zi(
c.__context,
c.__size,
3,
c.__optimizeForRenderToTexture,
c.__streamingLevels
);
r.__format = h;
r.__internalFormat = h;
c.__context.__bindGLTextureCubeMap(r.__textureID);
t = v = m = e = null;
u = n.b.buffer;
q = p;
null == q && (q = 0);
e =
null != e
? new Uint8Array(e)
: null != m
? new Uint8Array(m)
: null != v
? new Uint8Array(v.__array)
: null != t
? new Uint8Array(t)
: null != u
? null == p
? new Uint8Array(u, q)
: new Uint8Array(u, q, p)
: null;
bc.compressedTexImage2D(f, a, b, r.__internalFormat, l, k, 0, e);
c.__alphaTexture = r;
} else
(t = v = m = e = null),
(u = n.b.buffer),
(q = 0),
null == q && (q = 0),
(e =
null != e
? new Uint8Array(e)
: null != m
? new Uint8Array(m)
: null != v
? new Uint8Array(v.__array)
: null != t
? new Uint8Array(t)
: null != u
? null == p
? new Uint8Array(u, q)
: new Uint8Array(u, q, p)
: null),
bc.compressedTexImage2D(f, a, b, c.__internalFormat, l, k, 0, e);
});
if (!g) {
a = this.__size * this.__size * 4;
var k = (b = null),
l = null,
h = null,
n = null;
a =
null != a
? new Uint8Array(a)
: null != b
? new Uint8Array(b)
: null != k
? new Uint8Array(k.__array)
: null != l
? new Uint8Array(l)
: null != h
? null == n
? new Uint8Array(h, 0)
: new Uint8Array(h, 0, n)
: null;
bc.texImage2D(
f,
this.__sideToTarget(0),
0,
this.__internalFormat,
this.__size,
this.__size,
0,
this.__format,
f.UNSIGNED_BYTE,
a
);
a = this.__size * this.__size * 4;
n = h = l = k = b = null;
a =
null != a
? new Uint8Array(a)
: null != b
? new Uint8Array(b)
: null != k
? new Uint8Array(k.__array)
: null != l
? new Uint8Array(l)
: null != h
? null == n
? new Uint8Array(h, 0)
: new Uint8Array(h, 0, n)
: null;
bc.texImage2D(
f,
this.__sideToTarget(1),
0,
this.__internalFormat,
this.__size,
this.__size,
0,
this.__format,
f.UNSIGNED_BYTE,
a
);
a = this.__size * this.__size * 4;
n = h = l = k = b = null;
a =
null != a
? new Uint8Array(a)
: null != b
? new Uint8Array(b)
: null != k
? new Uint8Array(k.__array)
: null != l
? new Uint8Array(l)
: null != h
? null == n
? new Uint8Array(h, 0)
: new Uint8Array(h, 0, n)
: null;
bc.texImage2D(
f,
this.__sideToTarget(2),
0,
this.__internalFormat,
this.__size,
this.__size,
0,
this.__format,
f.UNSIGNED_BYTE,
a
);
a = this.__size * this.__size * 4;
n = h = l = k = b = null;
a =
null != a
? new Uint8Array(a)
: null != b
? new Uint8Array(b)
: null != k
? new Uint8Array(k.__array)
: null != l
? new Uint8Array(l)
: null != h
? null == n
? new Uint8Array(h, 0)
: new Uint8Array(h, 0, n)
: null;
bc.texImage2D(
f,
this.__sideToTarget(3),
0,
this.__internalFormat,
this.__size,
this.__size,
0,
this.__format,
f.UNSIGNED_BYTE,
a
);
a = this.__size * this.__size * 4;
n = h = l = k = b = null;
a =
null != a
? new Uint8Array(a)
: null != b
? new Uint8Array(b)
: null != k
? new Uint8Array(k.__array)
: null != l
? new Uint8Array(l)
: null != h
? null == n
? new Uint8Array(h, 0)
: new Uint8Array(h, 0, n)
: null;
bc.texImage2D(
f,
this.__sideToTarget(4),
0,
this.__internalFormat,
this.__size,
this.__size,
0,
this.__format,
f.UNSIGNED_BYTE,
a
);
a = this.__size * this.__size * 4;
n = h = l = k = b = null;
a =
null != a
? new Uint8Array(a)
: null != b
? new Uint8Array(b)
: null != k
? new Uint8Array(k.__array)
: null != l
? new Uint8Array(l)
: null != h
? null == n
? new Uint8Array(h, 0)
: new Uint8Array(h, 0, n)
: null;
bc.texImage2D(
f,
this.__sideToTarget(5),
0,
this.__internalFormat,
this.__size,
this.__size,
0,
this.__format,
f.UNSIGNED_BYTE,
a
);
}
this.__context.__bindGLTextureCubeMap(null);
},
__class__: Zi
});
var ck = function (a, b, c, d, f) {
dc.call(this, a);
this.__width = b;
this.__height = c;
this.__optimizeForRenderToTexture = f;
this.__textureTarget = this.__context.gl.TEXTURE_2D;
this.uploadFromTypedArray(null);
f && this.__getGLFramebuffer(!0, 0, 0);
};
h['openfl.display3D.textures.RectangleTexture'] = ck;
ck.__name__ = 'openfl.display3D.textures.RectangleTexture';
ck.__super__ = dc;
ck.prototype = r(dc.prototype, {
uploadFromBitmapData: function (a) {
if (null != a && ((a = this.__getImage(a)), null != a))
if (null != a.buffer && null == a.buffer.data && null != a.buffer.get_src()) {
var b = this.__context.gl;
this.__context.__bindGLTexture2D(this.__textureID);
bc.texImage2D(
b,
this.__textureTarget,
0,
this.__internalFormat,
this.__format,
b.UNSIGNED_BYTE,
a.buffer.get_src()
);
this.__context.__bindGLTexture2D(null);
} else this.uploadFromTypedArray(a.get_data());
},
uploadFromByteArray: function (a, b) {
0 == b
? this.uploadFromTypedArray(a.b)
: ((a = zb.toArrayBuffer(a)),
null == b && (b = 0),
(b = null != a ? new Uint8Array(a, b) : null),
this.uploadFromTypedArray(b));
},
uploadFromTypedArray: function (a) {
var b = this.__context.gl;
this.__context.__bindGLTexture2D(this.__textureID);
bc.texImage2D(
b,
this.__textureTarget,
0,
this.__internalFormat,
this.__width,
this.__height,
0,
this.__format,
b.UNSIGNED_BYTE,
a
);
this.__context.__bindGLTexture2D(null);
},
__setSamplerState: function (a) {
if (dc.prototype.__setSamplerState.call(this, a)) {
var b = this.__context.gl;
if (0 != $b.__glMaxTextureMaxAnisotropy) {
switch (a.filter) {
case 0:
a = 16;
break;
case 1:
a = 2;
break;
case 2:
a = 4;
break;
case 3:
a = 8;
break;
default:
a = 1;
}
a > $b.__glMaxTextureMaxAnisotropy && (a = $b.__glMaxTextureMaxAnisotropy);
b.texParameterf(b.TEXTURE_2D, $b.__glTextureMaxAnisotropy, a);
}
return !0;
}
return !1;
},
__class__: ck
});
var ii = function (a, b, c, d, f, g) {
dc.call(this, a);
this.__width = b;
this.__height = c;
this.__optimizeForRenderToTexture = f;
this.__streamingLevels = g;
a = this.__context.gl;
this.__textureTarget = a.TEXTURE_2D;
this.__context.__bindGLTexture2D(this.__textureID);
bc.texImage2D(
a,
this.__textureTarget,
0,
this.__internalFormat,
this.__width,
this.__height,
0,
this.__format,
a.UNSIGNED_BYTE,
null
);
this.__context.__bindGLTexture2D(null);
f && this.__getGLFramebuffer(!0, 0, 0);
};
h['openfl.display3D.textures.Texture'] = ii;
ii.__name__ = 'openfl.display3D.textures.Texture';
ii.__super__ = dc;
ii.prototype = r(dc.prototype, {
uploadCompressedTextureFromByteArray: function (a, b, c) {
null == c && (c = !1);
var d = this;
c
? Qe.delay(function () {
d.__uploadCompressedTextureFromByteArray(a, b);
var c = new oa('textureReady');
d.dispatchEvent(c);
}, 1)
: this.__uploadCompressedTextureFromByteArray(a, b);
},
uploadFromBitmapData: function (a, b, c) {
null == b && (b = 0);
if (null != a) {
c = this.__width >> b;
var d = this.__height >> b;
if (0 != c || 0 != d) {
0 == c && (c = 1);
0 == d && (d = 1);
if (a.width != c || a.height != d) (c = new ja(c, d, !0, 0)), c.draw(a), (a = c);
a = this.__getImage(a);
if (null != a)
if (
0 == b &&
null != a.buffer &&
null == a.buffer.data &&
null != a.buffer.get_src()
) {
var f = this.__context.gl;
c = this.__width >> b;
d = this.__height >> b;
if (0 != c || 0 != d)
this.__context.__bindGLTexture2D(this.__textureID),
bc.texImage2D(
f,
this.__textureTarget,
b,
this.__internalFormat,
this.__format,
f.UNSIGNED_BYTE,
a.buffer.get_src()
),
this.__context.__bindGLTexture2D(null);
} else this.uploadFromTypedArray(a.get_data(), b);
}
}
},
uploadFromByteArray: function (a, b, c) {
null == c && (c = 0);
0 == b
? this.uploadFromTypedArray(a.b, c)
: ((a = zb.toArrayBuffer(a)),
null == b && (b = 0),
(b = null != a ? new Uint8Array(a, b) : null),
this.uploadFromTypedArray(b, c));
},
uploadFromTypedArray: function (a, b) {
null == b && (b = 0);
if (null != a) {
var c = this.__context.gl,
d = this.__width >> b,
f = this.__height >> b;
if (0 != d || 0 != f)
0 == d && (d = 1),
0 == f && (f = 1),
this.__context.__bindGLTexture2D(this.__textureID),
bc.texImage2D(
c,
this.__textureTarget,
b,
this.__internalFormat,
d,
f,
0,
this.__format,
c.UNSIGNED_BYTE,
a
),
this.__context.__bindGLTexture2D(null);
}
},
__setSamplerState: function (a) {
if (dc.prototype.__setSamplerState.call(this, a)) {
var b = this.__context.gl;
2 == a.mipfilter ||
this.__samplerState.mipmapGenerated ||
(b.generateMipmap(b.TEXTURE_2D), (this.__samplerState.mipmapGenerated = !0));
if (0 != $b.__glMaxTextureMaxAnisotropy) {
switch (a.filter) {
case 0:
a = 16;
break;
case 1:
a = 2;
break;
case 2:
a = 4;
break;
case 3:
a = 8;
break;
default:
a = 1;
}
a > $b.__glMaxTextureMaxAnisotropy && (a = $b.__glMaxTextureMaxAnisotropy);
b.texParameterf(b.TEXTURE_2D, $b.__glTextureMaxAnisotropy, a);
}
return !0;
}
return !1;
},
__uploadCompressedTextureFromByteArray: function (a, b) {
var c = this;
a = new fk(a, b);
var d = a.readHeader(this.__width, this.__height, !1),
f = this.__context.gl;
this.__context.__bindGLTexture2D(this.__textureID);
var g = !1;
a.readTextures(function (a, b, e, k, h, m, t) {
a = d ? dc.__compressedFormatsAlpha.h[e] : dc.__compressedFormats.h[e];
if (0 != a)
if (((g = !0), (c.__format = a), (c.__internalFormat = a), d && 2 == e)) {
m = (m / 2) | 0;
var l = (e = null),
p = null,
n = null,
v = t.b.buffer,
u = 0;
null == u && (u = 0);
e =
null != e
? new Uint8Array(e)
: null != l
? new Uint8Array(l)
: null != p
? new Uint8Array(p.__array)
: null != n
? new Uint8Array(n)
: null != v
? null == m
? new Uint8Array(v, u)
: new Uint8Array(v, u, m)
: null;
bc.compressedTexImage2D(f, c.__textureTarget, b, c.__internalFormat, k, h, 0, e);
var q = new ii(
c.__context,
c.__width,
c.__height,
3,
c.__optimizeForRenderToTexture,
c.__streamingLevels
);
q.__format = a;
q.__internalFormat = a;
c.__context.__bindGLTexture2D(q.__textureID);
n = p = l = e = null;
v = t.b.buffer;
u = m;
null == u && (u = 0);
e =
null != e
? new Uint8Array(e)
: null != l
? new Uint8Array(l)
: null != p
? new Uint8Array(p.__array)
: null != n
? new Uint8Array(n)
: null != v
? null == m
? new Uint8Array(v, u)
: new Uint8Array(v, u, m)
: null;
bc.compressedTexImage2D(f, q.__textureTarget, b, q.__internalFormat, k, h, 0, e);
c.__alphaTexture = q;
} else
(n = p = l = e = null),
(v = t.b.buffer),
(u = 0),
null == u && (u = 0),
(e =
null != e
? new Uint8Array(e)
: null != l
? new Uint8Array(l)
: null != p
? new Uint8Array(p.__array)
: null != n
? new Uint8Array(n)
: null != v
? null == m
? new Uint8Array(v, u)
: new Uint8Array(v, u, m)
: null),
bc.compressedTexImage2D(f, c.__textureTarget, b, c.__internalFormat, k, h, 0, e);
});
g ||
((a = this.__width * this.__height * 4),
(a = null != a ? new Uint8Array(a) : null),
bc.texImage2D(
f,
this.__textureTarget,
0,
this.__internalFormat,
this.__width,
this.__height,
0,
this.__format,
f.UNSIGNED_BYTE,
a
));
this.__context.__bindGLTexture2D(null);
},
__class__: ii
});
var en = function (a) {
dc.call(this, a);
this.__textureTarget = this.__context.gl.TEXTURE_2D;
};
h['openfl.display3D.textures.VideoTexture'] = en;
en.__name__ = 'openfl.display3D.textures.VideoTexture';
en.__super__ = dc;
en.prototype = r(dc.prototype, {
videoHeight: null,
videoWidth: null,
__cacheTime: null,
__netStream: null,
attachNetStream: function (a) {
var b = this;
null != this.__netStream &&
this.__netStream.__video.removeEventListener('canplay', q(this, this.__onCanPlay), !1);
this.__cacheTime = -1;
this.__netStream = a;
null != this.__netStream &&
(2 <= this.__netStream.__video.readyState
? Qe.delay(function () {
b.__textureReady();
}, 0)
: this.__netStream.__video.addEventListener(
'canplay',
q(this, this.__onCanPlay),
!1
));
},
dispose: function () {
null != this.__netStream &&
null != this.__netStream.__video &&
this.__netStream.__video.removeEventListener(
'timeupdate',
q(this, this.__onTimeUpdate)
);
dc.prototype.dispose.call(this);
},
__onCanPlay: function (a) {
this.__netStream.__video.addEventListener('timeupdate', q(this, this.__onTimeUpdate));
this.__textureReady();
},
__onTimeUpdate: function (a) {
null != this.__netStream &&
this.__netStream.__video.currentTime != this.__cacheTime &&
2 <= this.__netStream.__video.readyState &&
this.__textureReady();
},
__getTexture: function () {
if (
this.__netStream.__video.currentTime != this.__cacheTime &&
2 <= this.__netStream.__video.readyState
) {
var a = this.__context.gl;
this.__context.__bindGLTexture2D(this.__textureID);
bc.texImage2D(
a,
a.TEXTURE_2D,
0,
a.RGBA,
a.RGBA,
a.UNSIGNED_BYTE,
this.__netStream.__video
);
this.__cacheTime = this.__netStream.__video.currentTime;
}
return this.__textureID;
},
__textureReady: function () {
this.videoWidth = this.__netStream.__video.videoWidth;
this.videoHeight = this.__netStream.__video.videoHeight;
var a = new oa('textureReady');
this.dispatchEvent(a);
},
__class__: en
});
var dd = function (a, b) {
null == b && (b = 0);
null == a && (a = '');
this.message = a;
this.errorID = b;
this.name = 'Error';
};
h['openfl.errors.Error'] = dd;
dd.__name__ = 'openfl.errors.Error';
dd.prototype = {
errorID: null,
message: null,
name: null,
getStackTrace: function () {
return mf.toString(mf.exceptionStack());
},
toString: function () {
return null != this.message ? this.message : 'Error';
},
__class__: dd
};
var qi = function (a) {
null == a && (a = '');
dd.call(this, a);
this.name = 'ArgumentError';
};
h['openfl.errors.ArgumentError'] = qi;
qi.__name__ = 'openfl.errors.ArgumentError';
qi.__super__ = dd;
qi.prototype = r(dd.prototype, { __class__: qi });
var bj = function (a) {
null == a && (a = '');
dd.call(this, a);
this.name = 'IOError';
};
h['openfl.errors.IOError'] = bj;
bj.__name__ = 'openfl.errors.IOError';
bj.__super__ = dd;
bj.prototype = r(dd.prototype, { __class__: bj });
var fh = function (a, b) {
bj.call(this, 'End of file was encountered');
this.name = 'EOFError';
this.errorID = 2030;
};
h['openfl.errors.EOFError'] = fh;
fh.__name__ = 'openfl.errors.EOFError';
fh.__super__ = bj;
fh.prototype = r(bj.prototype, { __class__: fh });
var kd = function (a) {
null == a && (a = '');
dd.call(this, a, 0);
this.name = 'IllegalOperationError';
};
h['openfl.errors.IllegalOperationError'] = kd;
kd.__name__ = 'openfl.errors.IllegalOperationError';
kd.__super__ = dd;
kd.prototype = r(dd.prototype, { __class__: kd });
var Ih = function (a) {
null == a && (a = '');
dd.call(this, a, 0);
this.name = 'RangeError';
};
h['openfl.errors.RangeError'] = Ih;
Ih.__name__ = 'openfl.errors.RangeError';
Ih.__super__ = dd;
Ih.prototype = r(dd.prototype, { __class__: Ih });
var gp = function (a) {
null == a && (a = '');
dd.call(this, a, 0);
this.name = 'SecurityError';
};
h['openfl.errors.SecurityError'] = gp;
gp.__name__ = 'openfl.errors.SecurityError';
gp.__super__ = dd;
gp.prototype = r(dd.prototype, { __class__: gp });
var oj = function (a) {
null == a && (a = '');
dd.call(this, a, 0);
this.name = 'TypeError';
};
h['openfl.errors.TypeError'] = oj;
oj.__name__ = 'openfl.errors.TypeError';
oj.__super__ = dd;
oj.prototype = r(dd.prototype, { __class__: oj });
var gh = function (a, b, c, d) {
null == d && (d = !1);
null == c && (c = !1);
null == b && (b = !1);
oa.call(this, a, b, c);
this.activating = d;
};
h['openfl.events.ActivityEvent'] = gh;
gh.__name__ = 'openfl.events.ActivityEvent';
gh.__super__ = oa;
gh.prototype = r(oa.prototype, {
activating: null,
clone: function () {
var a = new gh(this.type, this.bubbles, this.cancelable, this.activating);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('ActivityEvent', [
'type',
'bubbles',
'cancelable',
'activating'
]);
},
__init: function () {
oa.prototype.__init.call(this);
this.activating = !1;
},
__class__: gh
});
var ef = function (a, b, c, d) {
null == d && (d = '');
null == c && (c = !1);
null == b && (b = !1);
oa.call(this, a, b, c);
this.text = d;
};
h['openfl.events.TextEvent'] = ef;
ef.__name__ = 'openfl.events.TextEvent';
ef.__super__ = oa;
ef.prototype = r(oa.prototype, {
text: null,
clone: function () {
var a = new ef(this.type, this.bubbles, this.cancelable, this.text);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('TextEvent', ['type', 'bubbles', 'cancelable', 'text']);
},
__init: function () {
oa.prototype.__init.call(this);
this.text = '';
},
__class__: ef
});
var Ue = function (a, b, c, d, f) {
null == f && (f = 0);
null == d && (d = '');
null == c && (c = !1);
null == b && (b = !1);
ef.call(this, a, b, c, d);
this.errorID = f;
};
h['openfl.events.ErrorEvent'] = Ue;
Ue.__name__ = 'openfl.events.ErrorEvent';
Ue.__super__ = ef;
Ue.prototype = r(ef.prototype, {
errorID: null,
clone: function () {
var a = new Ue(this.type, this.bubbles, this.cancelable, this.text, this.errorID);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('ErrorEvent', [
'type',
'bubbles',
'cancelable',
'text',
'errorID'
]);
},
__init: function () {
ef.prototype.__init.call(this);
this.errorID = 0;
},
__class__: Ue
});
var nj = function (a) {
this.active = !1;
this.reset(a);
};
h['openfl.events._EventDispatcher.DispatchIterator'] = nj;
nj.__name__ = 'openfl.events._EventDispatcher.DispatchIterator';
nj.prototype = {
active: null,
index: null,
isCopy: null,
list: null,
copy: function () {
this.isCopy || ((this.list = this.list.slice()), (this.isCopy = !0));
},
hasNext: function () {
return this.index < this.list.length;
},
next: function () {
return this.list[this.index++];
},
remove: function (a, b) {
if (this.active)
if (this.isCopy) {
b = this.index;
for (var c = this.list.length; b < c; ) {
var d = b++;
if (this.list[d] == a) {
this.list.splice(d, 1);
break;
}
}
} else b < this.index && this.index--;
},
reset: function (a) {
this.list = a;
this.isCopy = !1;
this.index = 0;
},
start: function () {
this.active = !0;
},
stop: function () {
this.active = !1;
},
__class__: nj
};
var mj = function (a, b, c) {
this.callback = a;
this.useCapture = b;
this.priority = c;
};
h['openfl.events._EventDispatcher.Listener'] = mj;
mj.__name__ = 'openfl.events._EventDispatcher.Listener';
mj.prototype = {
callback: null,
priority: null,
useCapture: null,
match: function (a, b) {
return Z.compareMethods(this.callback, a) ? this.useCapture == b : !1;
},
__class__: mj
};
var Zf = function (a, b, c, d, f, g) {
null == g && (g = 0);
null == f && (f = !1);
null == c && (c = !1);
null == b && (b = !1);
oa.call(this, a, b, c);
this.keyCode = g;
this.shiftKey = f;
this.relatedObject = d;
};
h['openfl.events.FocusEvent'] = Zf;
Zf.__name__ = 'openfl.events.FocusEvent';
Zf.__super__ = oa;
Zf.prototype = r(oa.prototype, {
keyCode: null,
relatedObject: null,
shiftKey: null,
clone: function () {
var a = new Zf(
this.type,
this.bubbles,
this.cancelable,
this.relatedObject,
this.shiftKey,
this.keyCode
);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString(
'FocusEvent',
'type bubbles cancelable relatedObject shiftKey keyCode'.split(' ')
);
},
__init: function () {
oa.prototype.__init.call(this);
this.keyCode = 0;
this.shiftKey = !1;
this.relatedObject = null;
},
__class__: Zf
});
var eh = function (a, b, c, d, f) {
null == f && (f = !1);
null == d && (d = !1);
null == c && (c = !1);
null == b && (b = !1);
gh.call(this, a, b, c);
this.fullScreen = d;
this.interactive = f;
};
h['openfl.events.FullScreenEvent'] = eh;
eh.__name__ = 'openfl.events.FullScreenEvent';
eh.__super__ = gh;
eh.prototype = r(gh.prototype, {
fullScreen: null,
interactive: null,
clone: function () {
var a = new eh(
this.type,
this.bubbles,
this.cancelable,
this.fullScreen,
this.interactive
);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('FullscreenEvent', [
'type',
'bubbles',
'cancelable',
'fullscreen',
'interactive'
]);
},
__init: function () {
gh.prototype.__init.call(this);
this.interactive = this.fullScreen = !1;
},
__class__: eh
});
var Gg = function (a, b, c, d) {
null == c && (c = !1);
null == b && (b = !0);
oa.call(this, a, b, c);
this.device = d;
};
h['openfl.events.GameInputEvent'] = Gg;
Gg.__name__ = 'openfl.events.GameInputEvent';
Gg.__super__ = oa;
Gg.prototype = r(oa.prototype, {
device: null,
clone: function () {
var a = new Gg(this.type, this.bubbles, this.cancelable, this.device);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('GameInputEvent', [
'type',
'bubbles',
'cancelable',
'device'
]);
},
__init: function () {
oa.prototype.__init.call(this);
this.device = null;
},
__class__: Gg
});
var ki = function (a, b, c, d, f) {
null == f && (f = !1);
null == d && (d = 0);
null == c && (c = !1);
null == b && (b = !1);
this.status = d;
this.redirected = f;
oa.call(this, a, b, c);
};
h['openfl.events.HTTPStatusEvent'] = ki;
ki.__name__ = 'openfl.events.HTTPStatusEvent';
ki.__super__ = oa;
ki.prototype = r(oa.prototype, {
redirected: null,
responseHeaders: null,
responseURL: null,
status: null,
clone: function () {
var a = new ki(this.type, this.bubbles, this.cancelable, this.status, this.redirected);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('HTTPStatusEvent', [
'type',
'bubbles',
'cancelable',
'status',
'redirected'
]);
},
__init: function () {
oa.prototype.__init.call(this);
this.status = 0;
this.redirected = !1;
},
__class__: ki
});
var qg = function (a, b, c, d, f) {
null == f && (f = 0);
null == d && (d = '');
null == c && (c = !1);
null == b && (b = !0);
Ue.call(this, a, b, c, d, f);
};
h['openfl.events.IOErrorEvent'] = qg;
qg.__name__ = 'openfl.events.IOErrorEvent';
qg.__super__ = Ue;
qg.prototype = r(Ue.prototype, {
clone: function () {
var a = new qg(this.type, this.bubbles, this.cancelable, this.text, this.errorID);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('IOErrorEvent', [
'type',
'bubbles',
'cancelable',
'text',
'errorID'
]);
},
__class__: qg
});
var ei = function (a, b, c, d, f, g, k, l, h, n, t) {
null == t && (t = !1);
null == n && (n = !1);
null == h && (h = !1);
null == l && (l = !1);
null == k && (k = !1);
null == f && (f = 0);
null == d && (d = 0);
null == c && (c = !1);
null == b && (b = !1);
oa.call(this, a, b, c);
this.charCode = d;
this.keyCode = f;
this.keyLocation = null != g ? g : 0;
this.ctrlKey = k;
this.altKey = l;
this.shiftKey = h;
this.controlKey = n;
this.commandKey = t;
};
h['openfl.events.KeyboardEvent'] = ei;
ei.__name__ = 'openfl.events.KeyboardEvent';
ei.__super__ = oa;
ei.prototype = r(oa.prototype, {
altKey: null,
charCode: null,
commandKey: null,
controlKey: null,
ctrlKey: null,
keyCode: null,
keyLocation: null,
shiftKey: null,
clone: function () {
var a = new ei(
this.type,
this.bubbles,
this.cancelable,
this.charCode,
this.keyCode,
this.keyLocation,
this.ctrlKey,
this.altKey,
this.shiftKey,
this.controlKey,
this.commandKey
);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString(
'KeyboardEvent',
'type bubbles cancelable charCode keyCode keyLocation ctrlKey altKey shiftKey'.split(
' '
)
);
},
__init: function () {
oa.prototype.__init.call(this);
this.keyLocation = this.keyCode = this.charCode = 0;
this.commandKey = this.controlKey = this.shiftKey = this.altKey = this.ctrlKey = !1;
},
__class__: ei
});
var Lb = function (a, b, c, d, f, g, k, l, h, n, t, m, u) {
null == u && (u = 0);
null == m && (m = !1);
null == t && (t = 0);
null == n && (n = !1);
null == h && (h = !1);
null == l && (l = !1);
null == k && (k = !1);
null == f && (f = 0);
null == d && (d = 0);
null == c && (c = !1);
null == b && (b = !0);
oa.call(this, a, b, c);
this.shiftKey = h;
this.altKey = l;
this.ctrlKey = k;
this.bubbles = b;
this.relatedObject = g;
this.delta = t;
this.localX = d;
this.localY = f;
this.buttonDown = n;
this.commandKey = m;
this.clickCount = u;
this.isRelatedObjectInaccessible = !1;
this.stageY = this.stageX = NaN;
};
h['openfl.events.MouseEvent'] = Lb;
Lb.__name__ = 'openfl.events.MouseEvent';
Lb.__create = function (a, b, c, d, f, g, k) {
null == k && (k = 0);
a = new Lb(
a,
!0,
!1,
f.x,
f.y,
null,
Lb.__ctrlKey,
Lb.__altKey,
Lb.__shiftKey,
Lb.__buttonDown,
k,
Lb.__commandKey
);
a.stageX = c;
a.stageY = d;
a.target = g;
return a;
};
Lb.__super__ = oa;
Lb.prototype = r(oa.prototype, {
altKey: null,
buttonDown: null,
commandKey: null,
clickCount: null,
ctrlKey: null,
delta: null,
isRelatedObjectInaccessible: null,
localX: null,
localY: null,
relatedObject: null,
shiftKey: null,
stageX: null,
stageY: null,
clone: function () {
var a = new Lb(
this.type,
this.bubbles,
this.cancelable,
this.localX,
this.localY,
this.relatedObject,
this.ctrlKey,
this.altKey,
this.shiftKey,
this.buttonDown,
this.delta,
this.commandKey,
this.clickCount
);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString(
'MouseEvent',
'type bubbles cancelable localX localY relatedObject ctrlKey altKey shiftKey buttonDown delta'.split(
' '
)
);
},
updateAfterEvent: function () {},
__init: function () {
oa.prototype.__init.call(this);
this.bubbles = this.ctrlKey = this.altKey = this.shiftKey = !1;
this.relatedObject = null;
this.localY = this.localX = this.delta = 0;
this.commandKey = this.buttonDown = !1;
this.clickCount = 0;
this.isRelatedObjectInaccessible = !1;
this.stageY = this.stageX = NaN;
},
__class__: Lb
});
var li = function (a, b, c, d) {
null == c && (c = !1);
null == b && (b = !1);
this.info = d;
oa.call(this, a, b, c);
};
h['openfl.events.NetStatusEvent'] = li;
li.__name__ = 'openfl.events.NetStatusEvent';
li.__super__ = oa;
li.prototype = r(oa.prototype, {
info: null,
clone: function () {
var a = new li(this.type, this.bubbles, this.cancelable, this.info);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('NetStatusEvent', ['type', 'bubbles', 'cancelable', 'info']);
},
__init: function () {
oa.prototype.__init.call(this);
this.info = null;
},
__class__: li
});
var Eg = function (a, b, c, d, f) {
null == f && (f = 0);
null == d && (d = 0);
null == c && (c = !1);
null == b && (b = !1);
oa.call(this, a, b, c);
this.bytesLoaded = d;
this.bytesTotal = f;
};
h['openfl.events.ProgressEvent'] = Eg;
Eg.__name__ = 'openfl.events.ProgressEvent';
Eg.__super__ = oa;
Eg.prototype = r(oa.prototype, {
bytesLoaded: null,
bytesTotal: null,
clone: function () {
var a = new Eg(
this.type,
this.bubbles,
this.cancelable,
this.bytesLoaded,
this.bytesTotal
);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('ProgressEvent', [
'type',
'bubbles',
'cancelable',
'bytesLoaded',
'bytesTotal'
]);
},
__init: function () {
oa.prototype.__init.call(this);
this.bytesTotal = this.bytesLoaded = 0;
},
__class__: Eg
});
var ug = function (a, b, c, d, f, g) {
null == g && (g = !0);
null == c && (c = !1);
null == b && (b = !1);
oa.call(this, a, b, c);
this.objectMatrix = d;
this.objectColorTransform = f;
this.allowSmoothing = g;
};
h['openfl.events.RenderEvent'] = ug;
ug.__name__ = 'openfl.events.RenderEvent';
ug.__super__ = oa;
ug.prototype = r(oa.prototype, {
allowSmoothing: null,
objectColorTransform: null,
objectMatrix: null,
renderer: null,
clone: function () {
var a = new ug(
this.type,
this.bubbles,
this.cancelable,
this.objectMatrix.clone(),
this.objectColorTransform.__clone(),
this.allowSmoothing
);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('RenderEvent', ['type', 'bubbles', 'cancelable']);
},
__init: function () {
oa.prototype.__init.call(this);
this.objectColorTransform = this.objectMatrix = null;
this.allowSmoothing = !1;
this.renderer = null;
},
__class__: ug
});
var cj = function (a, b, c, d, f) {
null == f && (f = 0);
null == d && (d = '');
null == c && (c = !1);
null == b && (b = !1);
Ue.call(this, a, b, c, d, f);
};
h['openfl.events.SecurityErrorEvent'] = cj;
cj.__name__ = 'openfl.events.SecurityErrorEvent';
cj.__super__ = Ue;
cj.prototype = r(Ue.prototype, {
clone: function () {
var a = new cj(this.type, this.bubbles, this.cancelable, this.text, this.errorID);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('SecurityErrorEvent', [
'type',
'bubbles',
'cancelable',
'text',
'errorID'
]);
},
__class__: cj
});
var Vd = function (a, b, c, d, f, g, k, l, h, n, t, m, u, q, r, w, x, z, E, I) {
null == w && (w = !1);
null == r && (r = !1);
null == q && (q = !1);
null == u && (u = !1);
null == m && (m = !1);
null == n && (n = 0);
null == h && (h = 0);
null == l && (l = 0);
null == k && (k = 0);
null == g && (g = 0);
null == f && (f = !1);
null == d && (d = 0);
null == c && (c = !1);
null == b && (b = !0);
oa.call(this, a, b, c);
this.touchPointID = d;
this.isPrimaryTouchPoint = f;
this.localX = g;
this.localY = k;
this.sizeX = l;
this.sizeY = h;
this.pressure = n;
this.relatedObject = t;
this.ctrlKey = m;
this.altKey = u;
this.shiftKey = q;
this.commandKey = r;
this.controlKey = w;
this.stageY = this.stageX = NaN;
};
h['openfl.events.TouchEvent'] = Vd;
Vd.__name__ = 'openfl.events.TouchEvent';
Vd.__create = function (a, b, c, d, f, g) {
a = new Vd(a, !0, !1, 0, !0, f.x, f.y, 1, 1, 1);
a.stageX = c;
a.stageY = d;
a.target = g;
return a;
};
Vd.__super__ = oa;
Vd.prototype = r(oa.prototype, {
altKey: null,
commandKey: null,
controlKey: null,
ctrlKey: null,
delta: null,
isPrimaryTouchPoint: null,
localX: null,
localY: null,
pressure: null,
relatedObject: null,
shiftKey: null,
sizeX: null,
sizeY: null,
stageX: null,
stageY: null,
touchPointID: null,
clone: function () {
var a = new Vd(
this.type,
this.bubbles,
this.cancelable,
this.touchPointID,
this.isPrimaryTouchPoint,
this.localX,
this.localY,
this.sizeX,
this.sizeY,
this.pressure,
this.relatedObject,
this.ctrlKey,
this.altKey,
this.shiftKey,
this.commandKey,
this.controlKey
);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString(
'TouchEvent',
'type bubbles cancelable touchPointID isPrimaryTouchPoint localX localY sizeX sizeY pressure relatedObject ctrlKey altKey shiftKey commandKey controlKey'.split(
' '
)
);
},
updateAfterEvent: function () {},
__init: function () {
oa.prototype.__init.call(this);
this.touchPointID = 0;
this.isPrimaryTouchPoint = !1;
this.pressure = this.sizeY = this.sizeX = this.localY = this.localX = 0;
this.relatedObject = null;
this.controlKey = this.commandKey = this.shiftKey = this.altKey = this.ctrlKey = !1;
this.stageY = this.stageX = NaN;
},
__class__: Vd
});
var Wi = function (a, b, c, d) {
null == c && (c = !0);
null == b && (b = !0);
Ue.call(this, a, b, c);
this.error = d;
};
h['openfl.events.UncaughtErrorEvent'] = Wi;
Wi.__name__ = 'openfl.events.UncaughtErrorEvent';
Wi.__super__ = Ue;
Wi.prototype = r(Ue.prototype, {
error: null,
clone: function () {
var a = new Wi(this.type, this.bubbles, this.cancelable, this.error);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a;
},
toString: function () {
return this.__formatToString('UncaughtErrorEvent', [
'type',
'bubbles',
'cancelable',
'error'
]);
},
__init: function () {
Ue.prototype.__init.call(this);
this.error = null;
},
__class__: Wi
});
var Tm = function () {
db.call(this);
};
h['openfl.events.UncaughtErrorEvents'] = Tm;
Tm.__name__ = 'openfl.events.UncaughtErrorEvents';
Tm.__super__ = db;
Tm.prototype = r(db.prototype, { __class__: Tm });
var dj = function () {
this.__leftExtension = this.__bottomExtension = 0;
this.__needSecondBitmapData = !0;
this.__numShaderPasses = 0;
this.__preserveObject = !1;
this.__rightExtension = 0;
this.__shaderBlendMode = 10;
this.__topExtension = 0;
this.__smooth = !0;
};
h['openfl.filters.BitmapFilter'] = dj;
dj.__name__ = 'openfl.filters.BitmapFilter';
dj.prototype = {
__bottomExtension: null,
__leftExtension: null,
__needSecondBitmapData: null,
__numShaderPasses: null,
__preserveObject: null,
__renderDirty: null,
__rightExtension: null,
__shaderBlendMode: null,
__smooth: null,
__topExtension: null,
clone: function () {
return new dj();
},
__applyFilter: function (a, b, c, d) {
return b;
},
__initShader: function (a, b, c) {
return null;
},
__class__: dj
};
var ej = function (a) {
null == this.__glFragmentSource &&
(this.__glFragmentSource =
'varying vec2 openfl_TextureCoordv;\n\n\t\tuniform sampler2D openfl_Texture;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\tgl_FragColor = texture2D (openfl_Texture, openfl_TextureCoordv);\n\n\t\t}');
null == this.__glVertexSource &&
(this.__glVertexSource =
'attribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\n\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\t\t}');
df.call(this, a);
this.__isGenerated = !0;
this.__initGL();
};
h['openfl.filters.BitmapFilterShader'] = ej;
ej.__name__ = 'openfl.filters.BitmapFilterShader';
ej.__super__ = df;
ej.prototype = r(df.prototype, {
openfl_Position: null,
openfl_TextureCoord: null,
openfl_Matrix: null,
openfl_TextureSize: null,
openfl_Texture: null,
__class__: ej
});
var gk = function () {
null == this.__glFragmentSource &&
(this.__glFragmentSource =
'varying vec2 openfl_TextureCoordv;\n\t\tuniform sampler2D openfl_Texture;\n\n\t\tuniform mat4 uMultipliers;\n\t\tuniform vec4 uOffsets;\n\n\t\tvoid main(void) {\n\n\t\t\tvec4 color = texture2D (openfl_Texture, openfl_TextureCoordv);\n\n\t\t\tif (color.a == 0.0) {\n\n\t\t\t\tgl_FragColor = vec4 (0.0, 0.0, 0.0, 0.0);\n\n\t\t\t} else {\n\n\t\t\t\tcolor = vec4 (color.rgb / color.a, color.a);\n\t\t\t\tcolor = uOffsets + color * uMultipliers;\n\n\t\t\t\tgl_FragColor = vec4 (color.rgb * color.a, color.a);\n\n\t\t\t}\n\n\t\t}');
null == this.__glVertexSource &&
(this.__glVertexSource =
'attribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform vec2 openfl_TextureSize;\n\n\n\t\tvoid main(void) {\n\n\t\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\n\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\n\t\t}');
ej.call(this);
this.uMultipliers.value = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];
this.uOffsets.value = [0, 0, 0, 0];
this.__isGenerated = !0;
this.__initGL();
};
h['openfl.filters._ColorMatrixFilter.ColorMatrixShader'] = gk;
gk.__name__ = 'openfl.filters._ColorMatrixFilter.ColorMatrixShader';
gk.__super__ = ej;
gk.prototype = r(ej.prototype, {
init: function (a) {
var b = this.uMultipliers.value,
c = this.uOffsets.value;
b[0] = a[0];
b[1] = a[1];
b[2] = a[2];
b[3] = a[3];
b[4] = a[5];
b[5] = a[6];
b[6] = a[7];
b[7] = a[8];
b[8] = a[10];
b[9] = a[11];
b[10] = a[12];
b[11] = a[13];
b[12] = a[15];
b[13] = a[16];
b[14] = a[17];
b[15] = a[18];
c[0] = a[4] / 255;
c[1] = a[9] / 255;
c[2] = a[14] / 255;
c[3] = a[19] / 255;
},
uMultipliers: null,
uOffsets: null,
__class__: gk
});
var hg = function (a) {
dj.call(this);
this.set_matrix(a);
this.__numShaderPasses = 1;
this.__needSecondBitmapData = !1;
};
h['openfl.filters.ColorMatrixFilter'] = hg;
hg.__name__ = 'openfl.filters.ColorMatrixFilter';
hg.__super__ = dj;
hg.prototype = r(dj.prototype, {
__matrix: null,
clone: function () {
return new hg(this.__matrix);
},
__applyFilter: function (a, b, c, d) {
var e = b.image,
g = a.image;
Aa.convertToData(e);
Aa.convertToData(g);
var k = e.get_data(),
l = g.get_data(),
h = (d.x - c.x) | 0;
d = (d.y - c.y) | 0;
b = 4 * b.width;
var n = 4 * a.width,
t = e.buffer.format,
m = g.buffer.format;
e = e.buffer.premultiplied;
g = g.buffer.premultiplied;
for (var u, q = 0, r, w, x = c.y | 0, z = c.height | 0; x < z; )
for (var E = x++, I = c.x | 0, H = c.width | 0; I < H; ) {
w = I++;
r = E * b + 4 * w;
w = (E + h) * n + 4 * (w + d);
var C = t,
A = e;
null == A && (A = !1);
null == C && (C = 0);
switch (C) {
case 0:
u =
((k[r] & 255) << 24) |
((k[r + 1] & 255) << 16) |
((k[r + 2] & 255) << 8) |
(k[r + 3] & 255);
break;
case 1:
u =
((k[r + 1] & 255) << 24) |
((k[r + 2] & 255) << 16) |
((k[r + 3] & 255) << 8) |
(k[r] & 255);
break;
case 2:
u =
((k[r + 2] & 255) << 24) |
((k[r + 1] & 255) << 16) |
((k[r] & 255) << 8) |
(k[r + 3] & 255);
}
A &&
0 != (u & 255) &&
255 != (u & 255) &&
((N.unmult = 255 / (u & 255)),
(u =
((N.__clamp[Math.round(((u >>> 24) & 255) * N.unmult)] & 255) << 24) |
((N.__clamp[Math.round(((u >>> 16) & 255) * N.unmult)] & 255) << 16) |
((N.__clamp[Math.round(((u >>> 8) & 255) * N.unmult)] & 255) << 8) |
(u & 255)));
0 == (u & 255)
? (q = 0)
: ((q =
(((Math.max(
0,
Math.min(
this.__matrix[0] * ((u >>> 24) & 255) +
this.__matrix[1] * ((u >>> 16) & 255) +
this.__matrix[2] * ((u >>> 8) & 255) +
this.__matrix[3] * (u & 255) +
this.__matrix[4],
255
)
) |
0) &
255) <<
24) |
(((q >>> 16) & 255) << 16) |
(((q >>> 8) & 255) << 8) |
(q & 255)),
(q =
(((q >>> 24) & 255) << 24) |
(((Math.max(
0,
Math.min(
this.__matrix[5] * ((u >>> 24) & 255) +
this.__matrix[6] * ((u >>> 16) & 255) +
this.__matrix[7] * ((u >>> 8) & 255) +
this.__matrix[8] * (u & 255) +
this.__matrix[9],
255
)
) |
0) &
255) <<
16) |
(((q >>> 8) & 255) << 8) |
(q & 255)),
(q =
(((q >>> 24) & 255) << 24) |
(((q >>> 16) & 255) << 16) |
(((Math.max(
0,
Math.min(
this.__matrix[10] * ((u >>> 24) & 255) +
this.__matrix[11] * ((u >>> 16) & 255) +
this.__matrix[12] * ((u >>> 8) & 255) +
this.__matrix[13] * (u & 255) +
this.__matrix[14],
255
)
) |
0) &
255) <<
8) |
(q & 255)),
(q =
(((q >>> 24) & 255) << 24) |
(((q >>> 16) & 255) << 16) |
(((q >>> 8) & 255) << 8) |
((Math.max(
0,
Math.min(
this.__matrix[15] * ((u >>> 24) & 255) +
this.__matrix[16] * ((u >>> 16) & 255) +
this.__matrix[17] * ((u >>> 8) & 255) +
this.__matrix[18] * (u & 255) +
this.__matrix[19],
255
)
) |
0) &
255)));
r = m;
C = g;
null == C && (C = !1);
null == r && (r = 0);
C &&
(0 == (q & 255)
? 0 != q && (q = 0)
: 255 != (q & 255) &&
((N.a16 = N.__alpha16[q & 255]),
(q =
((((((q >>> 24) & 255) * N.a16) >> 16) & 255) << 24) |
((((((q >>> 16) & 255) * N.a16) >> 16) & 255) << 16) |
((((((q >>> 8) & 255) * N.a16) >> 16) & 255) << 8) |
(q & 255))));
switch (r) {
case 0:
l[w] = (q >>> 24) & 255;
l[w + 1] = (q >>> 16) & 255;
l[w + 2] = (q >>> 8) & 255;
l[w + 3] = q & 255;
break;
case 1:
l[w] = q & 255;
l[w + 1] = (q >>> 24) & 255;
l[w + 2] = (q >>> 16) & 255;
l[w + 3] = (q >>> 8) & 255;
break;
case 2:
(l[w] = (q >>> 8) & 255),
(l[w + 1] = (q >>> 16) & 255),
(l[w + 2] = (q >>> 24) & 255),
(l[w + 3] = q & 255);
}
}
a.image.dirty = !0;
return a;
},
__initShader: function (a, b, c) {
hg.__colorMatrixShader.init(this.get_matrix());
return hg.__colorMatrixShader;
},
get_matrix: function () {
return this.__matrix;
},
set_matrix: function (a) {
null == a && (a = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]);
return (this.__matrix = a);
},
__class__: hg,
__properties__: { set_matrix: 'set_matrix', get_matrix: 'get_matrix' }
});
var be = function (a) {
null != a && 16 == a.get_length()
? (this.rawData = a.concat(null))
: (this.rawData = yb.toFloatVector(
null,
null,
null,
[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]
));
};
h['openfl.geom.Matrix3D'] = be;
be.__name__ = 'openfl.geom.Matrix3D';
be.create2D = function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 1);
var e = (d * Math.PI) / 180;
d = Math.cos(e);
e = Math.sin(e);
return new be(
yb.toFloatVector(null, null, null, [
d * c,
-e * c,
0,
0,
e * c,
d * c,
0,
0,
0,
0,
1,
0,
a,
b,
0,
1
])
);
};
be.createABCD = function (a, b, c, d, f, g) {
return new be(
yb.toFloatVector(null, null, null, [a, b, 0, 0, c, d, 0, 0, 0, 0, 1, 0, f, g, 0, 1])
);
};
be.createOrtho = function (a, b, c, d, f, g) {
var e = 1 / (b - a),
l = 1 / (d - c),
k = 1 / (g - f);
return new be(
yb.toFloatVector(null, null, null, [
2 * e,
0,
0,
0,
0,
2 * l,
0,
0,
0,
0,
-2 * k,
0,
-(a + b) * e,
-(c + d) * l,
-(f + g) * k,
1
])
);
};
be.interpolate = function (a, b, c) {
for (var d = new be(), f = 0; 16 > f; ) {
var g = f++;
d.rawData.set(g, a.rawData.get(g) + (b.rawData.get(g) - a.rawData.get(g)) * c);
}
return d;
};
be.__getAxisRotation = function (a, b, c, d) {
var e = new be();
a = new od(a, b, c);
d = (Math.PI / 180) * -d;
c = Math.cos(d);
d = Math.sin(d);
b = 1 - c;
e.rawData.set(0, c + a.x * a.x * b);
e.rawData.set(5, c + a.y * a.y * b);
e.rawData.set(10, c + a.z * a.z * b);
c = a.x * a.y * b;
var g = a.z * d;
e.rawData.set(4, c + g);
e.rawData.set(1, c - g);
c = a.x * a.z * b;
g = a.y * d;
e.rawData.set(8, c - g);
e.rawData.set(2, c + g);
c = a.y * a.z * b;
g = a.x * d;
e.rawData.set(9, c + g);
e.rawData.set(6, c - g);
return e;
};
be.prototype = {
rawData: null,
append: function (a) {
var b = this.rawData.get(0),
c = this.rawData.get(4),
d = this.rawData.get(8),
f = this.rawData.get(12),
g = this.rawData.get(1),
k = this.rawData.get(5),
l = this.rawData.get(9),
h = this.rawData.get(13),
n = this.rawData.get(2),
t = this.rawData.get(6),
m = this.rawData.get(10),
u = this.rawData.get(14),
q = this.rawData.get(3),
r = this.rawData.get(7),
w = this.rawData.get(11),
x = this.rawData.get(15),
z = a.rawData.get(0),
E = a.rawData.get(4),
I = a.rawData.get(8),
H = a.rawData.get(12),
C = a.rawData.get(1),
A = a.rawData.get(5),
D = a.rawData.get(9),
ra = a.rawData.get(13),
F = a.rawData.get(2),
G = a.rawData.get(6),
B = a.rawData.get(10),
J = a.rawData.get(14),
y = a.rawData.get(3),
L = a.rawData.get(7),
M = a.rawData.get(11);
a = a.rawData.get(15);
this.rawData.set(0, b * z + g * E + n * I + q * H);
this.rawData.set(1, b * C + g * A + n * D + q * ra);
this.rawData.set(2, b * F + g * G + n * B + q * J);
this.rawData.set(3, b * y + g * L + n * M + q * a);
this.rawData.set(4, c * z + k * E + t * I + r * H);
this.rawData.set(5, c * C + k * A + t * D + r * ra);
this.rawData.set(6, c * F + k * G + t * B + r * J);
this.rawData.set(7, c * y + k * L + t * M + r * a);
this.rawData.set(8, d * z + l * E + m * I + w * H);
this.rawData.set(9, d * C + l * A + m * D + w * ra);
this.rawData.set(10, d * F + l * G + m * B + w * J);
this.rawData.set(11, d * y + l * L + m * M + w * a);
this.rawData.set(12, f * z + h * E + u * I + x * H);
this.rawData.set(13, f * C + h * A + u * D + x * ra);
this.rawData.set(14, f * F + h * G + u * B + x * J);
this.rawData.set(15, f * y + h * L + u * M + x * a);
},
appendRotation: function (a, b, c) {
var d = 0,
f = d,
g = f;
null != c && ((g = c.x), (f = c.y), (d = c.z));
c = (a * Math.PI) / 180;
a = Math.cos(c);
c = Math.sin(c);
var k = b.x,
l = b.y;
b = b.z;
var h = k * k,
n = l * l,
t = b * b,
m = h + n + t;
if (0 != m) {
var u = Math.sqrt(m);
k /= u;
l /= u;
b /= u;
h /= m;
n /= m;
t /= m;
}
m = 1 - a;
u = new be();
var q = u.rawData;
q.set(0, h + (n + t) * a);
q.set(1, k * l * m + b * c);
q.set(2, k * b * m - l * c);
q.set(4, k * l * m - b * c);
q.set(5, n + (h + t) * a);
q.set(6, l * b * m + k * c);
q.set(8, k * b * m + l * c);
q.set(9, l * b * m - k * c);
q.set(10, t + (h + n) * a);
q.set(12, (g * (n + t) - k * (f * l + d * b)) * m + (f * b - d * l) * c);
q.set(13, (f * (h + t) - l * (g * k + d * b)) * m + (d * k - g * b) * c);
q.set(14, (d * (h + n) - b * (g * k + f * l)) * m + (g * l - f * k) * c);
this.append(u);
},
appendScale: function (a, b, c) {
this.append(
new be(
yb.toFloatVector(null, null, null, [a, 0, 0, 0, 0, b, 0, 0, 0, 0, c, 0, 0, 0, 0, 1])
)
);
},
appendTranslation: function (a, b, c) {
var d = this.rawData;
d.set(12, d.get(12) + a);
d = this.rawData;
d.set(13, d.get(13) + b);
d = this.rawData;
d.set(14, d.get(14) + c);
},
clone: function () {
return new be(this.rawData.copy());
},
copyColumnFrom: function (a, b) {
switch (a) {
case 0:
this.rawData.set(0, b.x);
this.rawData.set(1, b.y);
this.rawData.set(2, b.z);
this.rawData.set(3, b.w);
break;
case 1:
this.rawData.set(4, b.x);
this.rawData.set(5, b.y);
this.rawData.set(6, b.z);
this.rawData.set(7, b.w);
break;
case 2:
this.rawData.set(8, b.x);
this.rawData.set(9, b.y);
this.rawData.set(10, b.z);
this.rawData.set(11, b.w);
break;
case 3:
this.rawData.set(12, b.x),
this.rawData.set(13, b.y),
this.rawData.set(14, b.z),
this.rawData.set(15, b.w);
}
},
copyColumnTo: function (a, b) {
switch (a) {
case 0:
b.x = this.rawData.get(0);
b.y = this.rawData.get(1);
b.z = this.rawData.get(2);
b.w = this.rawData.get(3);
break;
case 1:
b.x = this.rawData.get(4);
b.y = this.rawData.get(5);
b.z = this.rawData.get(6);
b.w = this.rawData.get(7);
break;
case 2:
b.x = this.rawData.get(8);
b.y = this.rawData.get(9);
b.z = this.rawData.get(10);
b.w = this.rawData.get(11);
break;
case 3:
(b.x = this.rawData.get(12)),
(b.y = this.rawData.get(13)),
(b.z = this.rawData.get(14)),
(b.w = this.rawData.get(15));
}
},
copyFrom: function (a) {
this.rawData = a.rawData.copy();
},
copyRawDataFrom: function (a, b, c) {
null == c && (c = !1);
null == b && (b = 0);
c && this.transpose();
for (var d = 0, f = a.get_length() - b; d < f; ) {
var g = d++;
this.rawData.set(g, a.get(g + b));
}
c && this.transpose();
},
copyRawDataTo: function (a, b, c) {
null == c && (c = !1);
null == b && (b = 0);
c && this.transpose();
for (var d = 0, f = this.rawData.get_length(); d < f; ) {
var g = d++;
a.set(g + b, this.rawData.get(g));
}
c && this.transpose();
},
copyRowFrom: function (a, b) {
switch (a) {
case 0:
this.rawData.set(0, b.x);
this.rawData.set(4, b.y);
this.rawData.set(8, b.z);
this.rawData.set(12, b.w);
break;
case 1:
this.rawData.set(1, b.x);
this.rawData.set(5, b.y);
this.rawData.set(9, b.z);
this.rawData.set(13, b.w);
break;
case 2:
this.rawData.set(2, b.x);
this.rawData.set(6, b.y);
this.rawData.set(10, b.z);
this.rawData.set(14, b.w);
break;
case 3:
this.rawData.set(3, b.x),
this.rawData.set(7, b.y),
this.rawData.set(11, b.z),
this.rawData.set(15, b.w);
}
},
copyRowTo: function (a, b) {
switch (a) {
case 0:
b.x = this.rawData.get(0);
b.y = this.rawData.get(4);
b.z = this.rawData.get(8);
b.w = this.rawData.get(12);
break;
case 1:
b.x = this.rawData.get(1);
b.y = this.rawData.get(5);
b.z = this.rawData.get(9);
b.w = this.rawData.get(13);
break;
case 2:
b.x = this.rawData.get(2);
b.y = this.rawData.get(6);
b.z = this.rawData.get(10);
b.w = this.rawData.get(14);
break;
case 3:
(b.x = this.rawData.get(3)),
(b.y = this.rawData.get(7)),
(b.z = this.rawData.get(11)),
(b.w = this.rawData.get(15));
}
},
copyToMatrix3D: function (a) {
a.rawData = this.rawData.copy();
},
decompose: function (a) {
null == a && (a = 1);
var b = yb.toObjectVector(null),
c = this.clone().rawData.copy(),
d = new od(c.get(12), c.get(13), c.get(14));
c.set(12, 0);
c.set(13, 0);
c.set(14, 0);
var f = new od();
f.x = Math.sqrt(c.get(0) * c.get(0) + c.get(1) * c.get(1) + c.get(2) * c.get(2));
f.y = Math.sqrt(c.get(4) * c.get(4) + c.get(5) * c.get(5) + c.get(6) * c.get(6));
f.z = Math.sqrt(c.get(8) * c.get(8) + c.get(9) * c.get(9) + c.get(10) * c.get(10));
0 >
c.get(0) * (c.get(5) * c.get(10) - c.get(6) * c.get(9)) -
c.get(1) * (c.get(4) * c.get(10) - c.get(6) * c.get(8)) +
c.get(2) * (c.get(4) * c.get(9) - c.get(5) * c.get(8)) && (f.z = -f.z);
var g = c;
g.set(0, g.get(0) / f.x);
g = c;
g.set(1, g.get(1) / f.x);
g = c;
g.set(2, g.get(2) / f.x);
g = c;
g.set(4, g.get(4) / f.y);
g = c;
g.set(5, g.get(5) / f.y);
g = c;
g.set(6, g.get(6) / f.y);
g = c;
g.set(8, g.get(8) / f.z);
g = c;
g.set(9, g.get(9) / f.z);
g = c;
g.set(10, g.get(10) / f.z);
g = new od();
switch (a) {
case 0:
g.w = Math.acos((c.get(0) + c.get(5) + c.get(10) - 1) / 2);
a = Math.sqrt(
(c.get(6) - c.get(9)) * (c.get(6) - c.get(9)) +
(c.get(8) - c.get(2)) * (c.get(8) - c.get(2)) +
(c.get(1) - c.get(4)) * (c.get(1) - c.get(4))
);
0 != a
? ((g.x = (c.get(6) - c.get(9)) / a),
(g.y = (c.get(8) - c.get(2)) / a),
(g.z = (c.get(1) - c.get(4)) / a))
: (g.x = g.y = g.z = 0);
break;
case 1:
g.y = Math.asin(-c.get(2));
1 != c.get(2) && -1 != c.get(2)
? ((g.x = Math.atan2(c.get(6), c.get(10))), (g.z = Math.atan2(c.get(1), c.get(0))))
: ((g.z = 0), (g.x = Math.atan2(c.get(4), c.get(5))));
break;
case 2:
(a = c.get(0) + c.get(5) + c.get(10)),
0 < a
? ((g.w = Math.sqrt(1 + a) / 2),
(g.x = (c.get(6) - c.get(9)) / (4 * g.w)),
(g.y = (c.get(8) - c.get(2)) / (4 * g.w)),
(g.z = (c.get(1) - c.get(4)) / (4 * g.w)))
: c.get(0) > c.get(5) && c.get(0) > c.get(10)
? ((g.x = Math.sqrt(1 + c.get(0) - c.get(5) - c.get(10)) / 2),
(g.w = (c.get(6) - c.get(9)) / (4 * g.x)),
(g.y = (c.get(1) + c.get(4)) / (4 * g.x)),
(g.z = (c.get(8) + c.get(2)) / (4 * g.x)))
: c.get(5) > c.get(10)
? ((g.y = Math.sqrt(1 + c.get(5) - c.get(0) - c.get(10)) / 2),
(g.x = (c.get(1) + c.get(4)) / (4 * g.y)),
(g.w = (c.get(8) - c.get(2)) / (4 * g.y)),
(g.z = (c.get(6) + c.get(9)) / (4 * g.y)))
: ((g.z = Math.sqrt(1 + c.get(10) - c.get(0) - c.get(5)) / 2),
(g.x = (c.get(8) + c.get(2)) / (4 * g.z)),
(g.y = (c.get(6) + c.get(9)) / (4 * g.z)),
(g.w = (c.get(1) - c.get(4)) / (4 * g.z)));
}
b.push(d);
b.push(g);
b.push(f);
return b;
},
deltaTransformVector: function (a) {
var b = a.x,
c = a.y;
a = a.z;
return new od(
b * this.rawData.get(0) + c * this.rawData.get(4) + a * this.rawData.get(8),
b * this.rawData.get(1) + c * this.rawData.get(5) + a * this.rawData.get(9),
b * this.rawData.get(2) + c * this.rawData.get(6) + a * this.rawData.get(10),
b * this.rawData.get(3) + c * this.rawData.get(7) + a * this.rawData.get(11)
);
},
identity: function () {
this.rawData = yb.toFloatVector(
null,
null,
null,
[1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]
);
},
interpolateTo: function (a, b) {
for (var c = 0; 16 > c; ) {
var d = c++;
this.rawData.set(d, this.rawData.get(d) + (a.rawData.get(d) - this.rawData.get(d)) * b);
}
},
invert: function () {
var a = this.get_determinant(),
b = 1e-11 < Math.abs(a);
if (b) {
a = 1 / a;
var c = this.rawData.get(0),
d = this.rawData.get(4),
f = this.rawData.get(8),
g = this.rawData.get(12),
k = this.rawData.get(1),
l = this.rawData.get(5),
h = this.rawData.get(9),
n = this.rawData.get(13),
t = this.rawData.get(2),
m = this.rawData.get(6),
u = this.rawData.get(10),
q = this.rawData.get(14),
r = this.rawData.get(3),
w = this.rawData.get(7),
x = this.rawData.get(11),
z = this.rawData.get(15);
this.rawData.set(
0,
a * (l * (u * z - q * x) - h * (m * z - q * w) + n * (m * x - u * w))
);
this.rawData.set(
1,
-a * (k * (u * z - q * x) - h * (t * z - q * r) + n * (t * x - u * r))
);
this.rawData.set(
2,
a * (k * (m * z - q * w) - l * (t * z - q * r) + n * (t * w - m * r))
);
this.rawData.set(
3,
-a * (k * (m * x - u * w) - l * (t * x - u * r) + h * (t * w - m * r))
);
this.rawData.set(
4,
-a * (d * (u * z - q * x) - f * (m * z - q * w) + g * (m * x - u * w))
);
this.rawData.set(
5,
a * (c * (u * z - q * x) - f * (t * z - q * r) + g * (t * x - u * r))
);
this.rawData.set(
6,
-a * (c * (m * z - q * w) - d * (t * z - q * r) + g * (t * w - m * r))
);
this.rawData.set(
7,
a * (c * (m * x - u * w) - d * (t * x - u * r) + f * (t * w - m * r))
);
this.rawData.set(
8,
a * (d * (h * z - n * x) - f * (l * z - n * w) + g * (l * x - h * w))
);
this.rawData.set(
9,
-a * (c * (h * z - n * x) - f * (k * z - n * r) + g * (k * x - h * r))
);
this.rawData.set(
10,
a * (c * (l * z - n * w) - d * (k * z - n * r) + g * (k * w - l * r))
);
this.rawData.set(
11,
-a * (c * (l * x - h * w) - d * (k * x - h * r) + f * (k * w - l * r))
);
this.rawData.set(
12,
-a * (d * (h * q - n * u) - f * (l * q - n * m) + g * (l * u - h * m))
);
this.rawData.set(
13,
a * (c * (h * q - n * u) - f * (k * q - n * t) + g * (k * u - h * t))
);
this.rawData.set(
14,
-a * (c * (l * q - n * m) - d * (k * q - n * t) + g * (k * m - l * t))
);
this.rawData.set(
15,
a * (c * (l * u - h * m) - d * (k * u - h * t) + f * (k * m - l * t))
);
}
return b;
},
pointAt: function (a, b, c) {
null == b && (b = new od(0, 0, -1));
null == c && (c = new od(0, -1, 0));
b = b.subtract(a);
c = c.clone();
b.normalize();
c.normalize();
var d = b.clone();
d.scaleBy(c.dotProduct(b));
c = c.subtract(d);
0 < c.get_length()
? c.normalize()
: (c = 0 != b.x ? new od(-b.y, b.x, 0) : new od(1, 0, 0));
d = c.crossProduct(b);
d.normalize();
this.rawData.set(0, d.x);
this.rawData.set(4, d.y);
this.rawData.set(8, d.z);
this.rawData.set(12, 0);
this.rawData.set(1, c.x);
this.rawData.set(5, c.y);
this.rawData.set(9, c.z);
this.rawData.set(13, 0);
this.rawData.set(2, b.x);
this.rawData.set(6, b.y);
this.rawData.set(10, b.z);
this.rawData.set(14, 0);
this.rawData.set(3, a.x);
this.rawData.set(7, a.y);
this.rawData.set(11, a.z);
this.rawData.set(15, 1);
},
prepend: function (a) {
var b = a.rawData.get(0),
c = a.rawData.get(4),
d = a.rawData.get(8),
f = a.rawData.get(12),
g = a.rawData.get(1),
k = a.rawData.get(5),
l = a.rawData.get(9),
h = a.rawData.get(13),
n = a.rawData.get(2),
t = a.rawData.get(6),
m = a.rawData.get(10),
u = a.rawData.get(14),
q = a.rawData.get(3),
r = a.rawData.get(7),
w = a.rawData.get(11);
a = a.rawData.get(15);
var x = this.rawData.get(0),
z = this.rawData.get(4),
E = this.rawData.get(8),
I = this.rawData.get(12),
H = this.rawData.get(1),
C = this.rawData.get(5),
A = this.rawData.get(9),
D = this.rawData.get(13),
ra = this.rawData.get(2),
F = this.rawData.get(6),
G = this.rawData.get(10),
B = this.rawData.get(14),
J = this.rawData.get(3),
y = this.rawData.get(7),
L = this.rawData.get(11),
M = this.rawData.get(15);
this.rawData.set(0, b * x + g * z + n * E + q * I);
this.rawData.set(1, b * H + g * C + n * A + q * D);
this.rawData.set(2, b * ra + g * F + n * G + q * B);
this.rawData.set(3, b * J + g * y + n * L + q * M);
this.rawData.set(4, c * x + k * z + t * E + r * I);
this.rawData.set(5, c * H + k * C + t * A + r * D);
this.rawData.set(6, c * ra + k * F + t * G + r * B);
this.rawData.set(7, c * J + k * y + t * L + r * M);
this.rawData.set(8, d * x + l * z + m * E + w * I);
this.rawData.set(9, d * H + l * C + m * A + w * D);
this.rawData.set(10, d * ra + l * F + m * G + w * B);
this.rawData.set(11, d * J + l * y + m * L + w * M);
this.rawData.set(12, f * x + h * z + u * E + a * I);
this.rawData.set(13, f * H + h * C + u * A + a * D);
this.rawData.set(14, f * ra + h * F + u * G + a * B);
this.rawData.set(15, f * J + h * y + u * L + a * M);
},
prependRotation: function (a, b, c) {
var d = 0,
f = d,
g = f;
null != c && ((g = c.x), (f = c.y), (d = c.z));
c = (a * Math.PI) / 180;
a = Math.cos(c);
c = Math.sin(c);
var k = b.x,
l = b.y;
b = b.z;
var h = k * k,
n = l * l,
t = b * b,
m = h + n + t;
if (0 != m) {
var u = Math.sqrt(m);
k /= u;
l /= u;
b /= u;
h /= m;
n /= m;
t /= m;
}
m = 1 - a;
u = new be();
var q = u.rawData;
q.set(0, h + (n + t) * a);
q.set(1, k * l * m + b * c);
q.set(2, k * b * m - l * c);
q.set(4, k * l * m - b * c);
q.set(5, n + (h + t) * a);
q.set(6, l * b * m + k * c);
q.set(8, k * b * m + l * c);
q.set(9, l * b * m - k * c);
q.set(10, t + (h + n) * a);
q.set(12, (g * (n + t) - k * (f * l + d * b)) * m + (f * b - d * l) * c);
q.set(13, (f * (h + t) - l * (g * k + d * b)) * m + (d * k - g * b) * c);
q.set(14, (d * (h + n) - b * (g * k + f * l)) * m + (g * l - f * k) * c);
this.prepend(u);
},
prependScale: function (a, b, c) {
this.prepend(
new be(
yb.toFloatVector(null, null, null, [a, 0, 0, 0, 0, b, 0, 0, 0, 0, c, 0, 0, 0, 0, 1])
)
);
},
prependTranslation: function (a, b, c) {
var d = new be();
d.set_position(new od(a, b, c));
this.prepend(d);
},
recompose: function (a, b) {
null == b && (b = 1);
if (3 > a.get_length() || 0 == a.get(2).x || 0 == a.get(2).y || 0 == a.get(2).z)
return !1;
this.identity();
var c = [];
c[0] = c[1] = c[2] = a.get(2).x;
c[4] = c[5] = c[6] = a.get(2).y;
c[8] = c[9] = c[10] = a.get(2).z;
if (1 == b) {
b = Math.cos(a.get(1).x);
var d = Math.cos(a.get(1).y),
f = Math.cos(a.get(1).z),
g = Math.sin(a.get(1).x),
k = Math.sin(a.get(1).y),
l = Math.sin(a.get(1).z);
this.rawData.set(0, d * f * c[0]);
this.rawData.set(1, d * l * c[1]);
this.rawData.set(2, -k * c[2]);
this.rawData.set(3, 0);
this.rawData.set(4, (g * k * f - b * l) * c[4]);
this.rawData.set(5, (g * k * l + b * f) * c[5]);
this.rawData.set(6, g * d * c[6]);
this.rawData.set(7, 0);
this.rawData.set(8, (b * k * f + g * l) * c[8]);
this.rawData.set(9, (b * k * l - g * f) * c[9]);
this.rawData.set(10, b * d * c[10]);
} else
(d = a.get(1).x),
(f = a.get(1).y),
(g = a.get(1).z),
(k = a.get(1).w),
0 == b &&
((d *= Math.sin(k / 2)),
(f *= Math.sin(k / 2)),
(g *= Math.sin(k / 2)),
(k = Math.cos(k / 2))),
this.rawData.set(0, (1 - 2 * f * f - 2 * g * g) * c[0]),
this.rawData.set(1, (2 * d * f + 2 * k * g) * c[1]),
this.rawData.set(2, (2 * d * g - 2 * k * f) * c[2]),
this.rawData.set(3, 0),
this.rawData.set(4, (2 * d * f - 2 * k * g) * c[4]),
this.rawData.set(5, (1 - 2 * d * d - 2 * g * g) * c[5]),
this.rawData.set(6, (2 * f * g + 2 * k * d) * c[6]),
this.rawData.set(7, 0),
this.rawData.set(8, (2 * d * g + 2 * k * f) * c[8]),
this.rawData.set(9, (2 * f * g - 2 * k * d) * c[9]),
this.rawData.set(10, (1 - 2 * d * d - 2 * f * f) * c[10]);
this.rawData.set(11, 0);
this.rawData.set(12, a.get(0).x);
this.rawData.set(13, a.get(0).y);
this.rawData.set(14, a.get(0).z);
this.rawData.set(15, 1);
0 == a.get(2).x && this.rawData.set(0, 1e-15);
0 == a.get(2).y && this.rawData.set(5, 1e-15);
0 == a.get(2).z && this.rawData.set(10, 1e-15);
return !(0 == a.get(2).x || 0 == a.get(2).y || 0 == a.get(2).y);
},
transformVector: function (a) {
var b = a.x,
c = a.y;
a = a.z;
return new od(
b * this.rawData.get(0) +
c * this.rawData.get(4) +
a * this.rawData.get(8) +
this.rawData.get(12),
b * this.rawData.get(1) +
c * this.rawData.get(5) +
a * this.rawData.get(9) +
this.rawData.get(13),
b * this.rawData.get(2) +
c * this.rawData.get(6) +
a * this.rawData.get(10) +
this.rawData.get(14),
b * this.rawData.get(3) +
c * this.rawData.get(7) +
a * this.rawData.get(11) +
this.rawData.get(15)
);
},
transformVectors: function (a, b) {
for (var c = 0, d, f, g; c + 3 <= a.get_length(); )
(d = a.get(c)),
(f = a.get(c + 1)),
(g = a.get(c + 2)),
b.set(
c,
d * this.rawData.get(0) +
f * this.rawData.get(4) +
g * this.rawData.get(8) +
this.rawData.get(12)
),
b.set(
c + 1,
d * this.rawData.get(1) +
f * this.rawData.get(5) +
g * this.rawData.get(9) +
this.rawData.get(13)
),
b.set(
c + 2,
d * this.rawData.get(2) +
f * this.rawData.get(6) +
g * this.rawData.get(10) +
this.rawData.get(14)
),
(c += 3);
},
transpose: function () {
var a = this.rawData.copy();
this.rawData.set(1, a.get(4));
this.rawData.set(2, a.get(8));
this.rawData.set(3, a.get(12));
this.rawData.set(4, a.get(1));
this.rawData.set(6, a.get(9));
this.rawData.set(7, a.get(13));
this.rawData.set(8, a.get(2));
this.rawData.set(9, a.get(6));
this.rawData.set(11, a.get(14));
this.rawData.set(12, a.get(3));
this.rawData.set(13, a.get(7));
this.rawData.set(14, a.get(11));
},
get_determinant: function () {
return (
(this.rawData.get(0) * this.rawData.get(5) -
this.rawData.get(4) * this.rawData.get(1)) *
(this.rawData.get(10) * this.rawData.get(15) -
this.rawData.get(14) * this.rawData.get(11)) -
(this.rawData.get(0) * this.rawData.get(9) -
this.rawData.get(8) * this.rawData.get(1)) *
(this.rawData.get(6) * this.rawData.get(15) -
this.rawData.get(14) * this.rawData.get(7)) +
(this.rawData.get(0) * this.rawData.get(13) -
this.rawData.get(12) * this.rawData.get(1)) *
(this.rawData.get(6) * this.rawData.get(11) -
this.rawData.get(10) * this.rawData.get(7)) +
(this.rawData.get(4) * this.rawData.get(9) -
this.rawData.get(8) * this.rawData.get(5)) *
(this.rawData.get(2) * this.rawData.get(15) -
this.rawData.get(14) * this.rawData.get(3)) -
(this.rawData.get(4) * this.rawData.get(13) -
this.rawData.get(12) * this.rawData.get(5)) *
(this.rawData.get(2) * this.rawData.get(11) -
this.rawData.get(10) * this.rawData.get(3)) +
(this.rawData.get(8) * this.rawData.get(13) -
this.rawData.get(12) * this.rawData.get(9)) *
(this.rawData.get(2) * this.rawData.get(7) -
this.rawData.get(6) * this.rawData.get(3))
);
},
get_position: function () {
return new od(this.rawData.get(12), this.rawData.get(13), this.rawData.get(14));
},
set_position: function (a) {
this.rawData.set(12, a.x);
this.rawData.set(13, a.y);
this.rawData.set(14, a.z);
return a;
},
__class__: be,
__properties__: {
set_position: 'set_position',
get_position: 'get_position',
get_determinant: 'get_determinant'
}
};
var tk = function (a) {
this.__colorTransform = new Kc();
this.concatenatedColorTransform = new Kc();
this.pixelBounds = new fa();
this.__displayObject = a;
this.__hasMatrix = !0;
};
h['openfl.geom.Transform'] = tk;
tk.__name__ = 'openfl.geom.Transform';
tk.prototype = {
concatenatedColorTransform: null,
pixelBounds: null,
__colorTransform: null,
__displayObject: null,
__hasMatrix: null,
__hasMatrix3D: null,
get_colorTransform: function () {
return this.__colorTransform;
},
set_colorTransform: function (a) {
this.__colorTransform.__equals(a, !1) ||
(this.__colorTransform.__copyFrom(a),
null != a && this.__displayObject.set_alpha(a.alphaMultiplier),
(a = this.__displayObject),
a.__renderDirty || ((a.__renderDirty = !0), a.__setParentRenderDirty()));
return this.__colorTransform;
},
get_concatenatedMatrix: function () {
return this.__hasMatrix ? this.__displayObject.__getWorldTransform().clone() : null;
},
get_matrix: function () {
return this.__hasMatrix ? this.__displayObject.__transform.clone() : null;
},
set_matrix: function (a) {
if (null == a) return (this.__hasMatrix = !1), null;
this.__hasMatrix = !0;
this.__hasMatrix3D = !1;
null != this.__displayObject && this.__setTransform(a.a, a.b, a.c, a.d, a.tx, a.ty);
return a;
},
get_matrix3D: function () {
if (this.__hasMatrix3D) {
var a = this.__displayObject.__transform;
return new be(
yb.toFloatVector(null, null, null, [
a.a,
a.b,
0,
0,
a.c,
a.d,
0,
0,
0,
0,
1,
0,
a.tx,
a.ty,
0,
1
])
);
}
return null;
},
set_matrix3D: function (a) {
if (null == a) return (this.__hasMatrix3D = !1), null;
this.__hasMatrix = !1;
this.__hasMatrix3D = !0;
this.__setTransform(
a.rawData.get(0),
a.rawData.get(1),
a.rawData.get(5),
a.rawData.get(6),
a.rawData.get(12),
a.rawData.get(13)
);
return a;
},
__setTransform: function (a, b, c, d, f, g) {
if (null != this.__displayObject) {
var e = this.__displayObject.__transform;
if (e.a != a || e.b != b || e.c != c || e.d != d || e.tx != f || e.ty != g) {
var l = 0 == b ? a : Math.sqrt(a * a + b * b);
var k = 0 == c ? d : Math.sqrt(c * c + d * d);
this.__displayObject.__scaleX = l;
this.__displayObject.__scaleY = k;
l = (180 / Math.PI) * Math.atan2(d, c) - 90;
l != this.__displayObject.__rotation &&
((this.__displayObject.__rotation = l),
(l *= Math.PI / 180),
(this.__displayObject.__rotationSine = Math.sin(l)),
(this.__displayObject.__rotationCosine = Math.cos(l)));
e.a = a;
e.b = b;
e.c = c;
e.d = d;
e.tx = f;
e.ty = g;
this.__displayObject.__setTransformDirty();
}
}
},
__class__: tk,
__properties__: {
set_matrix3D: 'set_matrix3D',
get_matrix3D: 'get_matrix3D',
set_matrix: 'set_matrix',
get_matrix: 'get_matrix',
get_concatenatedMatrix: 'get_concatenatedMatrix',
set_colorTransform: 'set_colorTransform',
get_colorTransform: 'get_colorTransform'
}
};
var od = function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
this.w = d;
this.x = a;
this.y = b;
this.z = c;
};
h['openfl.geom.Vector3D'] = od;
od.__name__ = 'openfl.geom.Vector3D';
od.__properties__ = {
get_Z_AXIS: 'get_Z_AXIS',
get_Y_AXIS: 'get_Y_AXIS',
get_X_AXIS: 'get_X_AXIS'
};
od.angleBetween = function (a, b) {
var c = a.get_length(),
d = b.get_length();
a = a.dotProduct(b);
0 != c && (a /= c);
0 != d && (a /= d);
return Math.acos(a);
};
od.distance = function (a, b) {
var c = b.x - a.x,
d = b.y - a.y;
a = b.z - a.z;
return Math.sqrt(c * c + d * d + a * a);
};
od.get_X_AXIS = function () {
return new od(1, 0, 0);
};
od.get_Y_AXIS = function () {
return new od(0, 1, 0);
};
od.get_Z_AXIS = function () {
return new od(0, 0, 1);
};
od.prototype = {
w: null,
x: null,
y: null,
z: null,
add: function (a) {
return new od(this.x + a.x, this.y + a.y, this.z + a.z);
},
clone: function () {
return new od(this.x, this.y, this.z, this.w);
},
copyFrom: function (a) {
this.x = a.x;
this.y = a.y;
this.z = a.z;
},
crossProduct: function (a) {
return new od(
this.y * a.z - this.z * a.y,
this.z * a.x - this.x * a.z,
this.x * a.y - this.y * a.x,
1
);
},
decrementBy: function (a) {
this.x -= a.x;
this.y -= a.y;
this.z -= a.z;
},
dotProduct: function (a) {
return this.x * a.x + this.y * a.y + this.z * a.z;
},
equals: function (a, b) {
null == b && (b = !1);
return this.x == a.x && this.y == a.y && this.z == a.z ? (b ? this.w == a.w : !0) : !1;
},
incrementBy: function (a) {
this.x += a.x;
this.y += a.y;
this.z += a.z;
},
nearEquals: function (a, b, c) {
null == c && (c = !1);
return Math.abs(this.x - a.x) < b &&
Math.abs(this.y - a.y) < b &&
Math.abs(this.z - a.z) < b
? c
? Math.abs(this.w - a.w) < b
: !0
: !1;
},
negate: function () {
this.x *= -1;
this.y *= -1;
this.z *= -1;
},
normalize: function () {
var a = this.get_length();
0 != a && ((this.x /= a), (this.y /= a), (this.z /= a));
return a;
},
project: function () {
this.x /= this.w;
this.y /= this.w;
this.z /= this.w;
},
scaleBy: function (a) {
this.x *= a;
this.y *= a;
this.z *= a;
},
setTo: function (a, b, c) {
this.x = a;
this.y = b;
this.z = c;
},
subtract: function (a) {
return new od(this.x - a.x, this.y - a.y, this.z - a.z);
},
toString: function () {
return 'Vector3D(' + this.x + ', ' + this.y + ', ' + this.z + ')';
},
get_length: function () {
return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z);
},
get_lengthSquared: function () {
return this.x * this.x + this.y * this.y + this.z * this.z;
},
__class__: od,
__properties__: {
get_lengthSquared: 'get_lengthSquared',
get_length: 'get_length'
}
};
var hp = function () {};
h['openfl.media.ID3Info'] = hp;
hp.__name__ = 'openfl.media.ID3Info';
hp.prototype = {
album: null,
artist: null,
comment: null,
genre: null,
songName: null,
track: null,
year: null,
__class__: hp
};
var yf = function (a, b) {
db.call(this, this);
this.bytesTotal = this.bytesLoaded = 0;
this.isBuffering = !1;
this.url = null;
null != a && this.load(a, b);
};
h['openfl.media.Sound'] = yf;
yf.__name__ = 'openfl.media.Sound';
yf.fromAudioBuffer = function (a) {
var b = new yf();
b.__buffer = a;
return b;
};
yf.fromFile = function (a) {
return yf.fromAudioBuffer(Wc.fromFile(a));
};
yf.loadFromFile = function (a) {
return Wc.loadFromFile(a).then(function (a) {
return kb.withValue(yf.fromAudioBuffer(a));
});
};
yf.loadFromFiles = function (a) {
return Wc.loadFromFiles(a).then(function (a) {
return kb.withValue(yf.fromAudioBuffer(a));
});
};
yf.__super__ = db;
yf.prototype = r(db.prototype, {
bytesLoaded: null,
bytesTotal: null,
isBuffering: null,
url: null,
__buffer: null,
close: function () {
null != this.__buffer && (this.__buffer.dispose(), (this.__buffer = null));
},
load: function (a, b) {
var c = this;
this.url = a.url;
a = wa.getLibrary('default');
if (null != a && Object.prototype.hasOwnProperty.call(a.cachedAudioBuffers.h, this.url))
this.AudioBuffer_onURLLoad(a.cachedAudioBuffers.h[this.url]);
else
Wc.loadFromFile(this.url)
.onComplete(q(this, this.AudioBuffer_onURLLoad))
.onError(function (a) {
c.AudioBuffer_onURLLoad(null);
});
},
loadCompressedDataFromByteArray: function (a, b) {
if (null == a || 0 >= b) this.dispatchEvent(new qg('ioError'));
else {
if (Ba.gt(a.position, 0) || Ba.gt(zb.get_length(a), b)) {
var c = b;
null == c && (c = 0);
var d = new pc(c),
f = a.position;
c = b;
null == c && (c = 0);
null == f && (f = 0);
d.writeBytes(a, f, c);
a = d;
}
this.__buffer = Wc.fromBytes(zb.toBytes(a));
null == this.__buffer
? this.dispatchEvent(new qg('ioError'))
: this.dispatchEvent(new oa('complete'));
}
},
loadPCMFromByteArray: function (a, b, c, d, f) {
null == f && (f = 44100);
null == d && (d = !0);
null == c && (c = 'float');
if (null == a) this.dispatchEvent(new qg('ioError'));
else {
c = 'float' == c ? 32 : 16;
d = d ? 2 : 1;
b = ((c / 8) * d * b) | 0;
if (Ba.gt(a.position, 0) || Ba.gt(zb.get_length(a), b)) {
var e = b;
null == e && (e = 0);
var k = (e = new pc(e)),
l = a.position;
e = b;
null == e && (e = 0);
null == l && (l = 0);
k.writeBytes(a, l, e);
a = k;
}
b = new Wc();
b.bitsPerSample = c;
b.channels = d;
a = zb.toArrayBuffer(a);
e = null != a ? new Uint8Array(a, 0) : null;
b.data = e;
b.sampleRate = f | 0;
this.__buffer = b;
this.dispatchEvent(new oa('complete'));
}
},
play: function (a, b, c) {
null == b && (b = 0);
null == a && (a = 0);
if (null == this.__buffer || 32 <= sd.__soundChannels.length) return null;
c = null == c ? new lf() : c.clone();
var d = sd.__soundTransform.pan + c.pan;
1 < d && (d = 1);
-1 > d && (d = -1);
var f = sd.__soundTransform.volume * c.volume,
g = new Uj(this.__buffer);
g.offset = a | 0;
1 < b && g.set_loops(b - 1);
g.set_gain(f);
0 != d && g.set_pan(d);
return new hn(g, c);
},
get_id3: function () {
return new hp();
},
get_length: function () {
return null != this.__buffer ? (1e3 * this.__buffer.get_src().duration()) | 0 : 0;
},
AudioBuffer_onURLLoad: function (a) {
null == a
? this.dispatchEvent(new qg('ioError'))
: ((this.__buffer = a), this.dispatchEvent(new oa('complete')));
},
__class__: yf,
__properties__: { get_length: 'get_length', get_id3: 'get_id3' }
});
var hn = function (a, b) {
db.call(this, this);
this.rightPeak = this.leftPeak = 1;
this.__soundTransform = null != b ? b : new lf();
null != a &&
((this.__source = a),
this.__source.onComplete.add(q(this, this.source_onComplete)),
(this.__isValid = !0),
this.__source.play());
sd.__registerSoundChannel(this);
};
h['openfl.media.SoundChannel'] = hn;
hn.__name__ = 'openfl.media.SoundChannel';
hn.__super__ = db;
hn.prototype = r(db.prototype, {
leftPeak: null,
rightPeak: null,
__isValid: null,
__soundTransform: null,
__source: null,
stop: function () {
sd.__unregisterSoundChannel(this);
this.__isValid && (this.__source.stop(), this.__dispose());
},
__dispose: function () {
this.__isValid &&
(this.__source.onComplete.remove(q(this, this.source_onComplete)),
this.__source.dispose(),
(this.__source = null),
(this.__isValid = !1));
},
__updateTransform: function () {
this.set_soundTransform(this.get_soundTransform());
},
get_position: function () {
return this.__isValid ? this.__source.get_currentTime() + this.__source.offset : 0;
},
set_position: function (a) {
if (!this.__isValid) return 0;
this.__source.set_currentTime((a | 0) - this.__source.offset);
return a;
},
get_soundTransform: function () {
return this.__soundTransform.clone();
},
set_soundTransform: function (a) {
if (null != a) {
this.__soundTransform.pan = a.pan;
this.__soundTransform.volume = a.volume;
var b = sd.__soundTransform.pan + this.__soundTransform.pan;
-1 > b && (b = -1);
1 < b && (b = 1);
var c = sd.__soundTransform.volume * this.__soundTransform.volume;
this.__isValid &&
(this.__source.set_gain(c),
(0 == b && null == this.__source.get_pan()) || this.__source.set_pan(b));
}
return a;
},
source_onComplete: function () {
sd.__unregisterSoundChannel(this);
this.__dispose();
this.dispatchEvent(new oa('soundComplete'));
},
__class__: hn,
__properties__: {
set_soundTransform: 'set_soundTransform',
get_soundTransform: 'get_soundTransform',
set_position: 'set_position',
get_position: 'get_position'
}
});
var Mw = function (a, b) {
null == b && (b = !1);
null == a && (a = 1e3);
this.bufferTime = a;
this.checkPolicyFile = b;
};
h['openfl.media.SoundLoaderContext'] = Mw;
Mw.__name__ = 'openfl.media.SoundLoaderContext';
Mw.prototype = { bufferTime: null, checkPolicyFile: null, __class__: Mw };
var sd = function () {};
h['openfl.media.SoundMixer'] = sd;
sd.__name__ = 'openfl.media.SoundMixer';
sd.__properties__ = {
set_soundTransform: 'set_soundTransform',
get_soundTransform: 'get_soundTransform'
};
sd.areSoundsInaccessible = function () {
return !1;
};
sd.stopAll = function () {
for (var a = 0, b = sd.__soundChannels; a < b.length; ) {
var c = b[a];
++a;
c.stop();
}
};
sd.__registerSoundChannel = function (a) {
sd.__soundChannels.push(a);
};
sd.__unregisterSoundChannel = function (a) {
A.remove(sd.__soundChannels, a);
};
sd.get_soundTransform = function () {
return sd.__soundTransform;
};
sd.set_soundTransform = function (a) {
sd.__soundTransform = a.clone();
for (var b = 0, c = sd.__soundChannels; b < c.length; ) {
var d = c[b];
++b;
d.__updateTransform();
}
return a;
};
var jn = function (a, b) {
null == b && (b = 240);
null == a && (a = 320);
La.call(this);
this.__drawableType = 8;
this.__width = a;
this.__height = b;
this.__textureTime = -1;
this.smoothing = !1;
this.deblocking = 0;
};
h['openfl.media.Video'] = jn;
jn.__name__ = 'openfl.media.Video';
jn.__super__ = La;
jn.prototype = r(La.prototype, {
deblocking: null,
smoothing: null,
__active: null,
__buffer: null,
__bufferAlpha: null,
__bufferColorTransform: null,
__bufferContext: null,
__bufferData: null,
__dirty: null,
__height: null,
__indexBuffer: null,
__indexBufferContext: null,
__indexBufferData: null,
__stream: null,
__texture: null,
__textureTime: null,
__uvRect: null,
__vertexBuffer: null,
__vertexBufferContext: null,
__vertexBufferData: null,
__width: null,
attachNetStream: function (a) {
this.__stream = a;
null == this.__stream ||
null == this.__stream.__video ||
this.__stream.__closed ||
this.__stream.__video.play();
},
clear: function () {},
__enterFrame: function (a) {
this.__renderable &&
null != this.__stream &&
!this.__renderDirty &&
((this.__renderDirty = !0), this.__setParentRenderDirty());
},
__getBounds: function (a, b) {
var c = fa.__pool.get();
c.setTo(0, 0, this.__width, this.__height);
c.__transform(c, b);
a.__expand(c.x, c.y, c.width, c.height);
fa.__pool.release(c);
},
__getIndexBuffer: function (a) {
if (null == this.__indexBuffer || this.__indexBufferContext != a.__context)
(this.__indexBufferData = new Uint16Array(6)),
(this.__indexBufferData[0] = 0),
(this.__indexBufferData[1] = 1),
(this.__indexBufferData[2] = 2),
(this.__indexBufferData[3] = 2),
(this.__indexBufferData[4] = 1),
(this.__indexBufferData[5] = 3),
(this.__indexBufferContext = a.__context),
(this.__indexBuffer = a.createIndexBuffer(6)),
this.__indexBuffer.uploadFromTypedArray(this.__indexBufferData);
return this.__indexBuffer;
},
__getTexture: function (a) {
if (null == this.__stream || null == this.__stream.__video) return null;
var b = a.__context.webgl,
c = b.RGBA,
d = b.RGBA;
this.__stream.__closed ||
this.__stream.__video.currentTime == this.__textureTime ||
(null == this.__texture &&
(this.__texture = a.createRectangleTexture(
this.__stream.__video.videoWidth,
this.__stream.__video.videoHeight,
1,
!1
)),
a.__bindGLTexture2D(this.__texture.__textureID),
bc.texImage2D(b, b.TEXTURE_2D, 0, c, d, b.UNSIGNED_BYTE, this.__stream.__video),
(this.__textureTime = this.__stream.__video.currentTime));
return this.__texture;
},
__getVertexBuffer: function (a) {
if (null == this.__vertexBuffer || this.__vertexBufferContext != a.__context)
(this.__vertexBufferData = new Float32Array(20)),
(this.__vertexBufferData[0] = this.get_width()),
(this.__vertexBufferData[1] = this.get_height()),
(this.__vertexBufferData[3] = 1),
(this.__vertexBufferData[4] = 1),
(this.__vertexBufferData[6] = this.get_height()),
(this.__vertexBufferData[9] = 1),
(this.__vertexBufferData[10] = this.get_width()),
(this.__vertexBufferData[13] = 1),
(this.__vertexBufferContext = a.__context),
(this.__vertexBuffer = a.createVertexBuffer(3, 5)),
this.__vertexBuffer.uploadFromTypedArray(
Yg.toArrayBufferView(this.__vertexBufferData)
);
return this.__vertexBuffer;
},
__hitTest: function (a, b, c, d, f, g) {
if (
!g.get_visible() ||
this.__isMask ||
(null != this.get_mask() && !this.get_mask().__hitTestMask(a, b))
)
return !1;
this.__getRenderTransform();
var e = this.__renderTransform,
l = e.a * e.d - e.b * e.c;
c = 0 == l ? -e.tx : (1 / l) * (e.c * (e.ty - b) + e.d * (a - e.tx));
e = this.__renderTransform;
l = e.a * e.d - e.b * e.c;
a = 0 == l ? -e.ty : (1 / l) * (e.a * (b - e.ty) + e.b * (e.tx - a));
return 0 < c && 0 < a && c <= this.__width && a <= this.__height
? (null == d || f || d.push(g), !0)
: !1;
},
__hitTestMask: function (a, b) {
var c = na.__pool.get();
c.setTo(a, b);
this.__globalToLocal(c, c);
a = 0 < c.x && 0 < c.y && c.x <= this.__width && c.y <= this.__height;
na.__pool.release(c);
return a;
},
get_height: function () {
return this.__height * this.get_scaleY();
},
set_height: function (a) {
if (1 != this.get_scaleY() || a != this.__height)
this.__setTransformDirty(), (this.__dirty = !0);
this.set_scaleY(1);
return (this.__height = a);
},
get_videoHeight: function () {
return null != this.__stream && null != this.__stream.__video
? this.__stream.__video.videoHeight | 0
: 0;
},
get_videoWidth: function () {
return null != this.__stream && null != this.__stream.__video
? this.__stream.__video.videoWidth | 0
: 0;
},
get_width: function () {
return this.__width * this.__scaleX;
},
set_width: function (a) {
if (1 != this.__scaleX || this.__width != a)
this.__setTransformDirty(), (this.__dirty = !0);
this.set_scaleX(1);
return (this.__width = a);
},
__class__: jn,
__properties__: r(La.prototype.__properties__, {
get_videoWidth: 'get_videoWidth',
get_videoHeight: 'get_videoHeight'
})
});
var hk = function () {
db.call(this);
};
h['openfl.net.NetConnection'] = hk;
hk.__name__ = 'openfl.net.NetConnection';
hk.__super__ = db;
hk.prototype = r(db.prototype, {
connect: function (a, b, c, d, f, g) {
if (null != a) throw M.thrown('Error: Can only connect in "HTTP streaming" mode');
this.dispatchEvent(
new li('netStatus', !1, !0, {
code: 'NetConnection.Connect.Success'
})
);
},
__class__: hk
});
var kn = function (a, b) {
db.call(this);
this.__connection = a;
this.__soundTransform = new lf();
this.__video = window.document.createElement('video');
this.__video.setAttribute('playsinline', '');
this.__video.setAttribute('webkit-playsinline', '');
this.__video.setAttribute('crossorigin', 'anonymous');
this.__video.addEventListener('error', q(this, this.video_onError), !1);
this.__video.addEventListener('waiting', q(this, this.video_onWaiting), !1);
this.__video.addEventListener('ended', q(this, this.video_onEnd), !1);
this.__video.addEventListener('pause', q(this, this.video_onPause), !1);
this.__video.addEventListener('seeking', q(this, this.video_onSeeking), !1);
this.__video.addEventListener('playing', q(this, this.video_onPlaying), !1);
this.__video.addEventListener('timeupdate', q(this, this.video_onTimeUpdate), !1);
this.__video.addEventListener('loadstart', q(this, this.video_onLoadStart), !1);
this.__video.addEventListener('stalled', q(this, this.video_onStalled), !1);
this.__video.addEventListener('durationchanged', q(this, this.video_onDurationChanged), !1);
this.__video.addEventListener('canplay', q(this, this.video_onCanPlay), !1);
this.__video.addEventListener('canplaythrough', q(this, this.video_onCanPlayThrough), !1);
this.__video.addEventListener('loadedmetadata', q(this, this.video_onLoadMetaData), !1);
};
h['openfl.net.NetStream'] = kn;
kn.__name__ = 'openfl.net.NetStream';
kn.__super__ = db;
kn.prototype = r(db.prototype, {
audioCodec: null,
bufferLength: null,
bufferTime: null,
bytesLoaded: null,
bytesTotal: null,
checkPolicyFile: null,
client: null,
currentFPS: null,
decodedFrames: null,
liveDelay: null,
objectEncoding: null,
time: null,
videoCode: null,
__closed: null,
__connection: null,
__soundTransform: null,
__timer: null,
__video: null,
close: function () {
null != this.__video &&
((this.__closed = !0), this.__video.pause(), (this.__video.src = ''), (this.time = 0));
},
dispose: function () {
this.close();
this.__video = null;
},
pause: function () {
null != this.__video && this.__video.pause();
},
play: function (a, b, c, d, f, g) {
null != this.__video &&
((this.__video.volume = sd.__soundTransform.volume * this.__soundTransform.volume),
'string' == typeof a ? (this.__video.src = a) : (this.__video.srcObject = a),
this.__video.play());
},
requestVideoStatus: function () {
var a = this;
null != this.__video &&
(null == this.__timer && (this.__timer = new Qe(1)),
(this.__timer.run = function () {
a.__video.paused
? a.__playStatus('NetStream.Play.pause')
: a.__playStatus('NetStream.Play.playing');
a.__timer.stop();
}));
},
resume: function () {
null != this.__video && this.__video.play();
},
seek: function (a) {
null != this.__video &&
(0 > a ? (a = 0) : a > this.__video.duration && (a = this.__video.duration),
this.__dispatchStatus('NetStream.SeekStart.Notify'),
(this.__video.currentTime = a));
},
togglePause: function () {
null != this.__video &&
(this.__video.paused ? this.__video.play() : this.__video.pause());
},
__dispatchStatus: function (a) {
a = new li('netStatus', !1, !1, { code: a });
this.__connection.dispatchEvent(a);
this.dispatchEvent(a);
},
__playStatus: function (a) {
if (null != this.__video && null != this.client)
try {
var b = this.client.onPlayStatus;
b({
code: a,
duration: this.__video.duration,
position: this.__video.currentTime,
speed: this.__video.playbackRate,
start: this.__video.startTime
});
} catch (c) {
la.lastError = c;
}
},
video_onCanPlay: function (a) {
this.__playStatus('NetStream.Play.canplay');
},
video_onCanPlayThrough: function (a) {
this.__playStatus('NetStream.Play.canplaythrough');
},
video_onDurationChanged: function (a) {
this.__playStatus('NetStream.Play.durationchanged');
},
video_onEnd: function (a) {
this.__dispatchStatus('NetStream.Play.Stop');
this.__dispatchStatus('NetStream.Play.Complete');
this.__playStatus('NetStream.Play.Complete');
},
video_onError: function (a) {
this.__dispatchStatus('NetStream.Play.Stop');
this.__playStatus('NetStream.Play.error');
},
video_onLoadMetaData: function (a) {
if (null != this.__video && null != this.client)
try {
var b = this.client.onMetaData;
b({
width: this.__video.videoWidth,
height: this.__video.videoHeight,
duration: this.__video.duration
});
} catch (c) {
la.lastError = c;
}
},
video_onLoadStart: function (a) {
this.__playStatus('NetStream.Play.loadstart');
},
video_onPause: function (a) {
this.__playStatus('NetStream.Play.pause');
},
video_onPlaying: function (a) {
this.__dispatchStatus('NetStream.Play.Start');
this.__playStatus('NetStream.Play.playing');
},
video_onSeeking: function (a) {
this.__playStatus('NetStream.Play.seeking');
this.__dispatchStatus('NetStream.Seek.Complete');
},
video_onStalled: function (a) {
this.__playStatus('NetStream.Play.stalled');
},
video_onTimeUpdate: function (a) {
null != this.__video &&
((this.time = this.__video.currentTime),
this.__playStatus('NetStream.Play.timeupdate'));
},
video_onWaiting: function (a) {
this.__playStatus('NetStream.Play.waiting');
},
get_soundTransform: function () {
return this.__soundTransform.clone();
},
set_soundTransform: function (a) {
null != a &&
((this.__soundTransform.pan = a.pan),
(this.__soundTransform.volume = a.volume),
null != this.__video &&
(this.__video.volume = sd.__soundTransform.volume * this.__soundTransform.volume));
return a;
},
get_speed: function () {
return null != this.__video ? this.__video.playbackRate : 1;
},
set_speed: function (a) {
return null != this.__video ? (this.__video.playbackRate = a) : a;
},
__class__: kn,
__properties__: {
set_speed: 'set_speed',
get_speed: 'get_speed',
set_soundTransform: 'set_soundTransform',
get_soundTransform: 'get_soundTransform'
}
});
var ld = function () {
db.call(this);
this.client = this;
this.objectEncoding = ld.defaultObjectEncoding;
};
h['openfl.net.SharedObject'] = ld;
ld.__name__ = 'openfl.net.SharedObject';
ld.getLocal = function (a, b, c) {
c = ' ~%&\\;:"\',<>?#'.split('');
var d = !0;
if (null == a || '' == a) d = !1;
else
for (var f = 0; f < c.length; ) {
var g = c[f];
++f;
if (-1 < a.indexOf(g)) {
d = !1;
break;
}
}
if (!d) throw M.thrown(new dd('Error #2134: Cannot create SharedObject.'));
null == ld.__sharedObjects &&
((ld.__sharedObjects = new qa()),
null != vd.current && vd.current.onExit.add(ld.application_onExit));
c = b + '/' + a;
if (!Object.prototype.hasOwnProperty.call(ld.__sharedObjects.h, c)) {
d = null;
try {
var k = Xg.getLocalStorage();
null == b &&
(null != k &&
((d = k.getItem(window.location.href + ':' + a)),
k.removeItem(window.location.href + ':' + a)),
(b = window.location.pathname));
null != k && null == d && (d = k.getItem(b + ':' + a));
} catch (v) {
la.lastError = v;
}
k = new ld();
k.data = {};
k.__localPath = b;
k.__name = a;
if (null != d && '' != d)
try {
var l = new Ke(d);
l.setResolver({
resolveEnum: ma.resolveEnum,
resolveClass: ld.__resolveClass
});
k.data = l.unserialize();
} catch (v) {
la.lastError = v;
}
ld.__sharedObjects.h[c] = k;
}
return ld.__sharedObjects.h[c];
};
ld.getRemote = function (a, b, c, d) {
Dc.notImplemented({
fileName: 'openfl/net/SharedObject.hx',
lineNumber: 808,
className: 'openfl.net.SharedObject',
methodName: 'getRemote'
});
return null;
};
ld.__getPath = function (a, b) {
a = Wa.get_applicationStorageDirectory() + '/' + a + '/';
b = U.replace(b, '//', '/');
b = U.replace(b, '//', '/');
U.startsWith(b, '/') && (b = A.substr(b, 1, null));
U.endsWith(b, '/') && (b = b.substring(0, b.length - 1));
if (-1 < b.indexOf('/')) {
var c = b.split('/');
b = '';
for (var d = 0, f = c.length - 1; d < f; ) {
var g = d++;
b += '#' + c[g] + '/';
}
b += c[c.length - 1];
}
return a + b + '.sol';
};
ld.__mkdir = function (a) {};
ld.__resolveClass = function (a) {
return null != a
? (U.startsWith(a, 'neash.') && (a = U.replace(a, 'neash.', 'openfl.')),
U.startsWith(a, 'native.') && (a = U.replace(a, 'native.', 'openfl.')),
U.startsWith(a, 'flash.') && (a = U.replace(a, 'flash.', 'openfl.')),
U.startsWith(a, 'openfl._v2.') && (a = U.replace(a, 'openfl._v2.', 'openfl.')),
U.startsWith(a, 'openfl._legacy.') && (a = U.replace(a, 'openfl._legacy.', 'openfl.')),
h[a])
: null;
};
ld.application_onExit = function (a) {
a = ld.__sharedObjects.h;
for (var b = Object.keys(a), c = b.length, d = 0; d < c; ) a[b[d++]].flush();
};
ld.__super__ = db;
ld.prototype = r(db.prototype, {
client: null,
data: null,
fps: null,
objectEncoding: null,
__localPath: null,
__name: null,
clear: function () {
this.data = {};
try {
var a = Xg.getLocalStorage();
null != a && a.removeItem(this.__localPath + ':' + this.__name);
} catch (b) {
la.lastError = b;
}
},
close: function () {},
connect: function (a, b) {
Dc.notImplemented({
fileName: 'openfl/net/SharedObject.hx',
lineNumber: 392,
className: 'openfl.net.SharedObject',
methodName: 'connect'
});
},
flush: function (a) {
if (0 == Z.fields(this.data).length) return 0;
a = Be.run(this.data);
try {
var b = Xg.getLocalStorage();
null != b &&
(b.removeItem(this.__localPath + ':' + this.__name),
b.setItem(this.__localPath + ':' + this.__name, a));
} catch (c) {
return (la.lastError = c), 1;
}
return 0;
},
send: function (a) {
Dc.notImplemented({
fileName: 'openfl/net/SharedObject.hx',
lineNumber: 824,
className: 'openfl.net.SharedObject',
methodName: 'send'
});
},
setDirty: function (a) {},
setProperty: function (a, b) {
null != this.data && (this.data[a] = b);
},
get_size: function () {
try {
var a = Be.run(this.data);
return hb.ofString(a).length;
} catch (b) {
return (la.lastError = b), 0;
}
},
__class__: ld,
__properties__: { get_size: 'get_size' }
});
var sh = function (a) {
db.call(this);
this.bytesTotal = this.bytesLoaded = 0;
this.dataFormat = 1;
null != a && this.load(a);
};
h['openfl.net.URLLoader'] = sh;
sh.__name__ = 'openfl.net.URLLoader';
sh.__super__ = db;
sh.prototype = r(db.prototype, {
bytesLoaded: null,
bytesTotal: null,
data: null,
dataFormat: null,
__httpRequest: null,
close: function () {
null != this.__httpRequest && this.__httpRequest.cancel();
},
load: function (a) {
var b = this;
if (0 == this.dataFormat) {
var c = new ym();
this.__prepareRequest(c, a);
c.load()
.onProgress(q(this, this.httpRequest_onProgress))
.onError(q(this, this.httpRequest_onError))
.onComplete(function (a) {
b.__dispatchStatus();
b.data = a;
a = new oa('complete');
b.dispatchEvent(a);
});
} else
(c = new Vj()),
this.__prepareRequest(c, a),
c
.load()
.onProgress(q(this, this.httpRequest_onProgress))
.onError(q(this, this.httpRequest_onError))
.onComplete(function (a) {
b.__dispatchStatus();
b.data = a;
a = new oa('complete');
b.dispatchEvent(a);
});
},
__dispatchStatus: function () {
var a = new ki('httpStatus', !1, !1, this.__httpRequest.responseStatus);
a.responseURL = this.__httpRequest.uri;
var b = [];
if (
this.__httpRequest.enableResponseHeaders &&
null != this.__httpRequest.responseHeaders
)
for (var c = 0, d = this.__httpRequest.responseHeaders; c < d.length; ) {
var f = d[c];
++c;
b.push(new ip(f.name, f.value));
}
a.responseHeaders = b;
this.dispatchEvent(a);
},
__prepareRequest: function (a, b) {
this.__httpRequest = a;
this.__httpRequest.uri = b.url;
this.__httpRequest.method = b.method;
if (null != b.data)
if (ma.typeof(b.data) == sb.TObject) {
var c = Z.fields(b.data);
for (a = 0; a < c.length; ) {
var d = c[a];
++a;
this.__httpRequest.formData.h[d] = Z.field(b.data, d);
}
} else
this.__httpRequest.data =
b.data instanceof hb ? b.data : hb.ofString(B.string(b.data));
this.__httpRequest.contentType = b.contentType;
if (null != b.requestHeaders)
for (a = 0, c = b.requestHeaders; a < c.length; )
(d = c[a]), ++a, this.__httpRequest.headers.push(new im(d.name, d.value));
this.__httpRequest.followRedirects = b.followRedirects;
this.__httpRequest.timeout = b.idleTimeout | 0;
this.__httpRequest.withCredentials = b.manageCookies;
this.__httpRequest.userAgent = b.userAgent;
this.__httpRequest.enableResponseHeaders = !0;
},
httpRequest_onError: function (a) {
this.__dispatchStatus();
var b = 403 == a ? new cj('securityError') : new qg('ioError');
b.text = B.string(a);
this.dispatchEvent(b);
},
httpRequest_onProgress: function (a, b) {
var c = new Eg('progress');
c.bytesLoaded = a;
c.bytesTotal = b;
this.dispatchEvent(c);
},
__class__: sh
});
var Tg = function (a) {
null != a && (this.url = a);
this.contentType = null;
this.followRedirects = Hh.followRedirects;
this.idleTimeout = 0 < Hh.idleTimeout ? Hh.idleTimeout : 3e4;
this.manageCookies = Hh.manageCookies;
this.method = 'GET';
this.requestHeaders = [];
this.userAgent = Hh.userAgent;
};
h['openfl.net.URLRequest'] = Tg;
Tg.__name__ = 'openfl.net.URLRequest';
Tg.prototype = {
contentType: null,
data: null,
followRedirects: null,
idleTimeout: null,
manageCookies: null,
method: null,
requestHeaders: null,
url: null,
userAgent: null,
__class__: Tg
};
var Hh = function () {};
h['openfl.net.URLRequestDefaults'] = Hh;
Hh.__name__ = 'openfl.net.URLRequestDefaults';
var ip = function (a, b) {
null == b && (b = '');
null == a && (a = '');
this.name = a;
this.value = b;
};
h['openfl.net.URLRequestHeader'] = ip;
ip.__name__ = 'openfl.net.URLRequestHeader';
ip.prototype = { name: null, value: null, __class__: ip };
var Ww = {
_new: function (a) {
var b = {};
null != a && Ww.decode(b, a);
return b;
},
decode: function (a, b) {
for (var c = Z.fields(a), d = 0; d < c.length; ) {
var f = c[d];
++d;
Z.deleteField(a, f);
}
c = b.split(';').join('&').split('&');
for (d = 0; d < c.length; )
if (((f = c[d]), ++d, (b = f.indexOf('=')), 0 < b)) {
var g = A.substr(f, 0, b);
g = decodeURIComponent(g.split('+').join(' '));
f = A.substr(f, b + 1, null);
a[g] = decodeURIComponent(f.split('+').join(' '));
} else 0 != b && (a[decodeURIComponent(f.split('+').join(' '))] = '');
},
toString: function (a) {
for (var b = [], c = Z.fields(a), d = 0; d < c.length; ) {
var f = c[d];
++d;
var g = Z.field(a, f);
if (-1 < f.indexOf('[]') && g instanceof Array) {
var k = [];
for (g = O(g); g.hasNext(); ) {
var l = g.next();
k.push(encodeURIComponent(l));
}
k = k.join('&' + f + '=');
b.push(encodeURIComponent(f) + '=' + k);
} else b.push(encodeURIComponent(f) + '=' + encodeURIComponent(g));
}
return b.join('&');
}
},
Ti = function (a) {
this.parentDomain = null != a ? a : Ti.currentDomain;
};
h['openfl.system.ApplicationDomain'] = Ti;
Ti.__name__ = 'openfl.system.ApplicationDomain';
Ti.prototype = {
parentDomain: null,
getDefinition: function (a) {
return h[a];
},
hasDefinition: function (a) {
return null != h[a];
},
__class__: Ti
};
var wc = function () {};
h['openfl.system.Capabilities'] = wc;
wc.__name__ = 'openfl.system.Capabilities';
wc.__properties__ = {
get_version: 'get_version',
get_screenResolutionY: 'get_screenResolutionY',
get_screenResolutionX: 'get_screenResolutionX',
get_screenDPI: 'get_screenDPI',
get_pixelAspectRatio: 'get_pixelAspectRatio',
get_os: 'get_os',
get_manufacturer: 'get_manufacturer',
get_language: 'get_language',
get_cpuArchitecture: 'get_cpuArchitecture'
};
wc.hasMultiChannelAudio = function (a) {
return !1;
};
wc.get_cpuArchitecture = function () {
return 'x86';
};
wc.get_language = function () {
var a = Se.get_language(Se.get_currentLocale());
if (null != a)
switch (((a = a.toLowerCase()), a)) {
case 'cs':
case 'da':
case 'de':
case 'en':
case 'es':
case 'fi':
case 'fr':
case 'hu':
case 'it':
case 'ja':
case 'ko':
case 'nb':
case 'nl':
case 'pl':
case 'pt':
case 'ru':
case 'sv':
case 'tr':
return a;
case 'zh':
a = Se.get_region(Se.get_currentLocale());
if (null != a)
switch (a.toUpperCase()) {
case 'HANT':
case 'TW':
return 'zh-TW';
}
return 'zh-CN';
default:
return 'xu';
}
return 'en';
};
wc.get_manufacturer = function () {
var a = Wa.get_platformName();
return 'OpenFL' + (null != a ? ' ' + a : '');
};
wc.get_os = function () {
var a = Wa.get_platformLabel();
return null != a ? a : '';
};
wc.get_pixelAspectRatio = function () {
return 1;
};
wc.get_screenDPI = function () {
var a = null != Dc.application ? Dc.application.__window : null,
b = 72;
null != a && (b *= a.__scale);
return b;
};
wc.get_screenResolutionX = function () {
var a = Dc.current.stage,
b = 0;
if (null == a) return 0;
if (null != a.window) {
var c = a.window.get_display();
null != c && (b = Math.ceil(c.currentMode.width * a.window.__scale));
}
return 0 < b ? b : a.stageWidth;
};
wc.get_screenResolutionY = function () {
var a = Dc.current.stage,
b = 0;
if (null == a) return 0;
if (null != a.window) {
var c = a.window.get_display();
null != c && (b = Math.ceil(c.currentMode.height * a.window.__scale));
}
return 0 < b ? b : a.stageHeight;
};
wc.get_version = function () {
return 'WEB ' + (U.replace('9.1.0', '.', ',') + ',0');
};
var Nw = function (a, b, c) {
null == a && (a = !1);
this.checkPolicyFile = a;
this.securityDomain = c;
this.applicationDomain = b;
this.allowLoadBytesCodeExecution = this.allowCodeImport = !0;
};
h['openfl.system.LoaderContext'] = Nw;
Nw.__name__ = 'openfl.system.LoaderContext';
Nw.prototype = {
allowCodeImport: null,
allowLoadBytesCodeExecution: null,
applicationDomain: null,
checkPolicyFile: null,
securityDomain: null,
__class__: Nw
};
var ik = function () {};
h['openfl.system.SecurityDomain'] = ik;
ik.__name__ = 'openfl.system.SecurityDomain';
ik.prototype = { __class__: ik };
var cg = function () {};
h['openfl.system.System'] = cg;
cg.__name__ = 'openfl.system.System';
cg.__properties__ = {
get_vmVersion: 'get_vmVersion',
get_totalMemory: 'get_totalMemory'
};
cg.disposeXML = function (a) {};
cg.exit = function (a) {
Wa.exit(a);
};
cg.gc = function () {};
cg.pause = function () {
Dc.notImplemented({
fileName: 'openfl/system/System.hx',
lineNumber: 213,
className: 'openfl.system.System',
methodName: 'pause'
});
};
cg.resume = function () {
Dc.notImplemented({
fileName: 'openfl/system/System.hx',
lineNumber: 229,
className: 'openfl.system.System',
methodName: 'resume'
});
};
cg.setClipboard = function (a) {
je.set_text(a);
};
cg.get_totalMemory = function () {
return window.performance && window.performance.memory
? window.performance.memory.usedJSHeapSize
: 0;
};
cg.get_vmVersion = function () {
return '1.0.0';
};
var Sc = function (a) {
Md.call(this, a);
};
h['openfl.text.Font'] = Sc;
Sc.__name__ = 'openfl.text.Font';
Sc.enumerateFonts = function (a) {
return Sc.__registeredFonts;
};
Sc.fromBytes = function (a) {
var b = new Sc();
b.__fromBytes(zb.toBytes(a));
return b;
};
Sc.fromFile = function (a) {
var b = new Sc();
b.__fromFile(a);
return b;
};
Sc.loadFromBytes = function (a) {
return Md.loadFromBytes(zb.toBytes(a)).then(function (a) {
var b = new Sc();
b.__fromLimeFont(a);
return kb.withValue(b);
});
};
Sc.loadFromFile = function (a) {
return Md.loadFromFile(a).then(function (a) {
var b = new Sc();
b.__fromLimeFont(a);
return kb.withValue(b);
});
};
Sc.loadFromName = function (a) {
return Md.loadFromName(a).then(function (a) {
var b = new Sc();
b.__fromLimeFont(a);
return kb.withValue(b);
});
};
Sc.registerFont = function (a) {
a = null == x.getClass(a) ? x.__cast(ma.createInstance(a, []), Sc) : x.__cast(a, Sc);
null != a && (Sc.__registeredFonts.push(a), (Sc.__fontByName.h[a.name] = a));
};
Sc.__super__ = Md;
Sc.prototype = r(Md.prototype, {
fontStyle: null,
fontType: null,
__initialized: null,
__fromLimeFont: function (a) {
this.__copyFrom(a);
},
__initialize: function () {
return this.__initialized;
},
get_fontName: function () {
return this.name;
},
set_fontName: function (a) {
return (this.name = a);
},
__class__: Sc,
__properties__: {
set_fontName: 'set_fontName',
get_fontName: 'get_fontName'
}
});
var Ze = function () {
this.__renderedOnCanvasWhileOnDOM = this.__forceCachedBitmapUpdate = !1;
lb.call(this);
this.__drawableType = 7;
this.__caretIndex = -1;
this.__displayAsPassword = !1;
this.__graphics = new Ve(this);
this.__textEngine = new Sb(this);
this.__layoutDirty = !0;
this.__offsetY = this.__offsetX = 0;
this.__mouseWheelEnabled = !0;
this.__text = '';
this.doubleClickEnabled = !0;
null == Ze.__defaultTextFormat &&
((Ze.__defaultTextFormat = new Qg(
'Times New Roman',
12,
0,
!1,
!1,
!1,
'',
'',
3,
0,
0,
0,
0
)),
(Ze.__defaultTextFormat.blockIndent = 0),
(Ze.__defaultTextFormat.bullet = !1),
(Ze.__defaultTextFormat.letterSpacing = 0),
(Ze.__defaultTextFormat.kerning = !1));
this.__textFormat = Ze.__defaultTextFormat.clone();
this.__textEngine.textFormatRanges.push(new ff(this.__textFormat, 0, 0));
this.addEventListener('mouseDown', q(this, this.this_onMouseDown));
this.addEventListener('focusIn', q(this, this.this_onFocusIn));
this.addEventListener('focusOut', q(this, this.this_onFocusOut));
this.addEventListener('keyDown', q(this, this.this_onKeyDown));
this.addEventListener('mouseWheel', q(this, this.this_onMouseWheel));
this.addEventListener('doubleClick', q(this, this.this_onDoubleClick));
};
h['openfl.text.TextField'] = Ze;
Ze.__name__ = 'openfl.text.TextField';
Ze.__super__ = lb;
Ze.prototype = r(lb.prototype, {
__bounds: null,
__caretIndex: null,
__cursorTimer: null,
__dirty: null,
__displayAsPassword: null,
__domRender: null,
__inputEnabled: null,
__isHTML: null,
__layoutDirty: null,
__mouseWheelEnabled: null,
__offsetX: null,
__offsetY: null,
__selectionIndex: null,
__showCursor: null,
__text: null,
__htmlText: null,
__textEngine: null,
__textFormat: null,
__div: null,
__renderedOnCanvasWhileOnDOM: null,
__rawHtmlText: null,
__forceCachedBitmapUpdate: null,
appendText: function (a) {
null != a &&
'' != a &&
((this.__layoutDirty = this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()),
this.__updateText(this.__text + a),
(this.__textEngine.textFormatRanges.get(
this.__textEngine.textFormatRanges.get_length() - 1
).end = this.__text.length),
this.setSelection(this.__text.length, this.__text.length));
},
getCharBoundaries: function (a) {
if (0 > a || a > this.__text.length - 1) return null;
var b = new fa();
return this.__getCharBoundaries(a, b) ? b : null;
},
getCharIndexAtPoint: function (a, b) {
if (2 >= a || a > this.get_width() + 4 || 0 >= b || b > this.get_height() + 4) return -1;
this.__updateLayout();
a += this.get_scrollH();
for (var c = 0, d = this.get_scrollV() - 1; c < d; ) {
var f = c++;
b += this.__textEngine.lineHeights.get(f);
}
for (c = this.__textEngine.layoutGroups.iterator(); c.hasNext(); ) {
var g = c.next();
if (
b >= g.offsetY &&
b <= g.offsetY + g.height &&
a >= g.offsetX &&
a <= g.offsetX + g.width
) {
c = b = 0;
for (d = g.positions.length; c < d; )
if (((f = c++), (b += g.positions[f]), a <= g.offsetX + b)) return g.startIndex + f;
return g.endIndex;
}
}
return -1;
},
getFirstCharInParagraph: function (a) {
if (0 > a || a > this.get_text().length) return -1;
for (var b = this.__textEngine.getLineBreakIndex(), c = 0; -1 < b; ) {
if (b < a) c = b + 1;
else if (b >= a) break;
b = this.__textEngine.getLineBreakIndex(b + 1);
}
return c;
},
getLineIndexAtPoint: function (a, b) {
this.__updateLayout();
if (2 >= a || a > this.get_width() + 4 || 0 >= b || b > this.get_height() + 4) return -1;
a = 0;
for (var c = this.get_scrollV() - 1; a < c; ) {
var d = a++;
b += this.__textEngine.lineHeights.get(d);
}
for (a = this.__textEngine.layoutGroups.iterator(); a.hasNext(); )
if (((c = a.next()), b >= c.offsetY && b <= c.offsetY + c.height)) return c.lineIndex;
return -1;
},
getLineIndexOfChar: function (a) {
if (0 > a || a > this.__text.length) return -1;
this.__updateLayout();
for (var b = this.__textEngine.layoutGroups.iterator(); b.hasNext(); ) {
var c = b.next();
if (c.startIndex <= a && c.endIndex >= a) return c.lineIndex;
}
return -1;
},
getLineLength: function (a) {
this.__updateLayout();
if (0 > a || a > this.__textEngine.numLines - 1) return 0;
for (var b = -1, c = -1, d = this.__textEngine.layoutGroups.iterator(); d.hasNext(); ) {
var f = d.next();
if (f.lineIndex == a) -1 == b && (b = f.startIndex);
else if (f.lineIndex == a + 1) {
c = f.startIndex;
break;
}
}
-1 == c && (c = this.__text.length);
return c - b;
},
getLineMetrics: function (a) {
this.__updateLayout();
var b = this.__textEngine.lineAscents.get(a),
c = this.__textEngine.lineDescents.get(a),
d = this.__textEngine.lineLeadings.get(a),
f = this.__textEngine.lineHeights.get(a);
a = this.__textEngine.lineWidths.get(a);
switch (this.__textFormat.align) {
case 0:
var g = (this.__textEngine.width - a) / 2;
break;
case 1:
case 4:
g = this.__textEngine.width - a - 2;
break;
case 2:
case 3:
case 5:
g = 2;
}
return new jp(g, a, f, b, c, d);
},
getLineOffset: function (a) {
this.__updateLayout();
if (0 > a || a > this.__textEngine.numLines - 1) return -1;
for (var b = this.__textEngine.layoutGroups.iterator(); b.hasNext(); ) {
var c = b.next();
if (c.lineIndex == a) return c.startIndex;
}
return 0;
},
getLineText: function (a) {
this.__updateLayout();
if (0 > a || a > this.__textEngine.numLines - 1) return null;
for (var b = -1, c = -1, d = this.__textEngine.layoutGroups.iterator(); d.hasNext(); ) {
var f = d.next();
if (f.lineIndex == a) -1 == b && (b = f.startIndex);
else if (f.lineIndex == a + 1) {
c = f.startIndex;
break;
}
}
-1 == c && (c = this.__text.length);
return this.__textEngine.text.substring(b, c);
},
getParagraphLength: function (a) {
if (0 > a || a > this.get_text().length) return -1;
var b = this.getFirstCharInParagraph(a);
if (a >= this.get_text().length) return this.get_text().length - b + 1;
a = this.__textEngine.getLineBreakIndex(a) + 1;
0 == a && (a = this.__text.length);
return a - b;
},
getTextFormat: function (a, b) {
null == b && (b = -1);
null == a && (a = -1);
var c = null;
if (a >= this.get_text().length || -1 > a || b > this.get_text().length || -1 > b)
throw M.thrown(new Ih('The supplied index is out of bounds'));
-1 == a && (a = 0);
-1 == b && (b = this.get_text().length);
if (a >= b) return new Qg();
for (var d = this.__textEngine.textFormatRanges.iterator(); d.hasNext(); ) {
var f = d.next();
if ((f.start <= a && f.end > a) || (f.start < b && f.end >= b))
null == c
? (c = f.format.clone())
: (f.format.font != c.font && (c.font = null),
f.format.size != c.size && (c.size = null),
f.format.color != c.color && (c.color = null),
f.format.bold != c.bold && (c.bold = null),
f.format.italic != c.italic && (c.italic = null),
f.format.underline != c.underline && (c.underline = null),
f.format.url != c.url && (c.url = null),
f.format.target != c.target && (c.target = null),
f.format.align != c.align && (c.align = null),
f.format.leftMargin != c.leftMargin && (c.leftMargin = null),
f.format.rightMargin != c.rightMargin && (c.rightMargin = null),
f.format.indent != c.indent && (c.indent = null),
f.format.leading != c.leading && (c.leading = null),
f.format.blockIndent != c.blockIndent && (c.blockIndent = null),
f.format.bullet != c.bullet && (c.bullet = null),
f.format.kerning != c.kerning && (c.kerning = null),
f.format.letterSpacing != c.letterSpacing && (c.letterSpacing = null),
f.format.tabStops != c.tabStops && (c.tabStops = null));
}
null == c && (c = new Qg());
return c;
},
replaceSelectedText: function (a) {
this.__replaceSelectedText(a, !1);
},
replaceText: function (a, b, c) {
this.__replaceText(a, b, c, !1);
},
setSelection: function (a, b) {
this.__selectionIndex = a;
this.__caretIndex = b;
this.__updateScrollV();
this.__updateScrollH();
null != this.stage &&
this.stage.get_focus() == this &&
(this.__stopCursorTimer(), this.__startCursorTimer());
},
setTextFormat: function (a, b, c) {
null == c && (c = -1);
null == b && (b = -1);
var d = this.get_text().length;
-1 == b ? (-1 == c && (c = d), (b = 0)) : -1 == c && (c = b + 1);
if (b != c) {
if (0 > b || 0 >= c || c < b || b >= d || c > d) throw M.thrown(new Ih());
if (0 == b && c == d) {
this.__textEngine.textFormatRanges.set_length(1);
var f = this.__textEngine.textFormatRanges.get(0);
f.start = 0;
f.end = d;
f.format.__merge(a);
} else {
d = 0;
for (var g; d < this.__textEngine.textFormatRanges.get_length(); )
if (((f = this.__textEngine.textFormatRanges.get(d)), f.end <= b)) ++d;
else if (f.start >= c) break;
else if (f.start <= b && f.end >= c)
if (f.start == b && f.end == c) {
f.format = f.format.clone();
f.format.__merge(a);
break;
} else if (f.start == b)
(g = new ff(f.format.clone(), b, c)),
g.format.__merge(a),
this.__textEngine.textFormatRanges.insertAt(d, g),
(f.start = c),
(d += 2);
else {
f.end == c
? ((g = new ff(f.format.clone(), b, c)),
g.format.__merge(a),
this.__textEngine.textFormatRanges.insertAt(d + 1, g))
: ((g = new ff(f.format.clone(), b, c)),
g.format.__merge(a),
this.__textEngine.textFormatRanges.insertAt(d + 1, g),
(g = new ff(f.format.clone(), c, f.end)),
this.__textEngine.textFormatRanges.insertAt(d + 2, g));
f.end = b;
break;
}
else if (f.start >= b && f.end <= c)
f.start == b
? ((f.format = f.format.clone()), f.format.__merge(a), (f.end = c))
: this.__textEngine.textFormatRanges.removeAt(d);
else if (f.start > b && f.end > b) {
f.start = c;
break;
} else
f.start < b && f.end <= c
? ((g = new ff(f.format.clone(), b, c)),
g.format.__merge(a),
this.__textEngine.textFormatRanges.insertAt(d + 1, g),
(f.end = b),
(d += 2))
: (++d,
Xa.warn(
"You found a bug in OpenFL's text code! Please save a copy of your project and contact Joshua Granick (@singmajesty) so we can fix this.",
{
fileName: 'openfl/text/TextField.hx',
lineNumber: 1571,
className: 'openfl.text.TextField',
methodName: 'setTextFormat'
}
));
}
this.__layoutDirty = this.__dirty = !0;
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty());
}
},
__allowMouseFocus: function () {
return 1 == this.__textEngine.type || this.get_tabEnabled() ? !0 : this.get_selectable();
},
__caretBeginningOfLine: function () {
this.__caretIndex = this.getLineOffset(this.getLineIndexOfChar(this.__caretIndex));
},
__caretBeginningOfNextLine: function () {
var a = this.getLineIndexOfChar(this.__caretIndex);
this.__caretIndex =
a < this.__textEngine.numLines - 1 ? this.getLineOffset(a + 1) : this.__text.length;
},
__caretBeginningOfPreviousLine: function () {
var a = this.getLineIndexOfChar(this.__caretIndex);
if (0 < a) {
var b = this.getLineOffset(this.getLineIndexOfChar(this.__caretIndex));
this.__caretIndex = this.__caretIndex == b ? this.getLineOffset(a - 1) : b;
}
},
__caretEndOfLine: function () {
var a = this.getLineIndexOfChar(this.__caretIndex);
this.__caretIndex =
a < this.__textEngine.numLines - 1 ? this.getLineOffset(a + 1) - 1 : this.__text.length;
},
__caretNextCharacter: function () {
this.__caretIndex < this.__text.length && this.__caretIndex++;
},
__caretNextLine: function () {
var a = this.getLineIndexOfChar(this.__caretIndex);
a < this.__textEngine.numLines - 1 &&
(this.__caretIndex = this.__getCharIndexOnDifferentLine(this.get_caretIndex(), a + 1));
},
__caretPreviousCharacter: function () {
0 < this.__caretIndex && this.__caretIndex--;
},
__caretPreviousLine: function () {
var a = this.getLineIndexOfChar(this.__caretIndex);
0 < a &&
(this.__caretIndex = this.__getCharIndexOnDifferentLine(this.get_caretIndex(), a - 1));
},
__disableInput: function () {
this.__inputEnabled &&
null != this.stage &&
(this.stage.window.__backend.setTextInputEnabled(!1),
this.stage.window.onTextInput.remove(q(this, this.window_onTextInput)),
this.stage.window.onKeyDown.remove(q(this, this.window_onKeyDown)),
(this.__inputEnabled = !1),
this.__stopCursorTimer());
},
__dispatch: function (a) {
if (2 == a.eventPhase && 'mouseUp' == a.type) {
var b = this.__getGroup(this.get_mouseX(), this.get_mouseY(), !0);
null != b &&
((b = b.format.url),
null != b &&
'' != b &&
(U.startsWith(b, 'event:')
? this.dispatchEvent(new ef('link', !1, !1, A.substr(b, 6, null)))
: Ma.getURL(new Tg(b))));
}
return lb.prototype.__dispatch.call(this, a);
},
__enableInput: function () {
null != this.stage &&
(this.stage.window.__backend.setTextInputEnabled(!0),
this.__inputEnabled ||
(this.stage.window.__backend.setTextInputEnabled(!0),
this.stage.window.onTextInput.has(q(this, this.window_onTextInput)) ||
(this.stage.window.onTextInput.add(q(this, this.window_onTextInput)),
this.stage.window.onKeyDown.add(q(this, this.window_onKeyDown))),
(this.__inputEnabled = !0),
this.__startCursorTimer()));
},
__getAdvance: function (a) {
return a;
},
__getBounds: function (a, b) {
this.__updateLayout();
var c = fa.__pool.get();
c.copyFrom(this.__textEngine.bounds);
b.tx += this.__offsetX;
b.ty += this.__offsetY;
c.__transform(c, b);
a.__expand(c.x, c.y, c.width, c.height);
fa.__pool.release(c);
},
__getCharBoundaries: function (a, b) {
if (0 > a || a > this.__text.length - 1) return !1;
this.__updateLayout();
for (var c = this.__textEngine.layoutGroups.iterator(); c.hasNext(); ) {
var d = c.next();
if (a >= d.startIndex && a < d.endIndex)
try {
for (var f = d.offsetX, g = 0, k = a - d.startIndex; g < k; ) {
var l = g++;
f += d.positions[l];
}
b.setTo(f, d.offsetY, d.positions[a - d.startIndex], d.ascent + d.descent);
return !0;
} catch (v) {
la.lastError = v;
}
}
return !1;
},
__getCharIndexOnDifferentLine: function (a, b) {
if (0 > a || a > this.__text.length || 0 > b || b > this.__textEngine.numLines - 1)
return -1;
for (
var c = null, d = null, f = this.__textEngine.layoutGroups.iterator();
f.hasNext();
) {
var g = f.next();
if (a >= g.startIndex && a <= g.endIndex) {
c = g.offsetX;
for (var k = 0, l = a - g.startIndex; k < l; ) {
var h = k++;
c += g.positions[h];
}
if (null != d) return this.__getPosition(c, d);
}
if (g.lineIndex == b) {
d = g.offsetY + g.height / 2;
g = 0;
for (k = this.get_scrollV() - 1; g < k; )
(l = g++), (d -= this.__textEngine.lineHeights.get(l));
if (null != c) return this.__getPosition(c, d);
}
}
return -1;
},
__getCursor: function () {
var a = this.__getGroup(this.get_mouseX(), this.get_mouseY(), !0);
return null != a && '' != a.format.url
? 'button'
: this.__textEngine.selectable
? 'ibeam'
: null;
},
__getGroup: function (a, b, c) {
null == c && (c = !1);
this.__updateLayout();
a += this.get_scrollH();
for (var d = 0, f = this.get_scrollV() - 1; d < f; ) {
var g = d++;
b += this.__textEngine.lineHeights.get(g);
}
!c && b > this.__textEngine.textHeight && (b = this.__textEngine.textHeight);
var k = !0;
d = 0;
for (f = this.__textEngine.layoutGroups.get_length(); d < f; ) {
g = d++;
var l = this.__textEngine.layoutGroups.get(g);
g =
g < this.__textEngine.layoutGroups.get_length() - 1
? this.__textEngine.layoutGroups.get(g + 1)
: null;
k && (b < l.offsetY && (b = l.offsetY), a < l.offsetX && (a = l.offsetX), (k = !1));
if ((b >= l.offsetY && b <= l.offsetY + l.height) || (!c && null == g))
if (
(a >= l.offsetX && a <= l.offsetX + l.width) ||
(!c && (null == g || g.lineIndex != l.lineIndex))
)
return l;
}
return null;
},
__getPosition: function (a, b) {
b = this.__getGroup(a, b);
if (null == b) return this.__text.length;
for (var c = 0, d = 0, f = b.positions.length; d < f; ) {
var g = d++;
c += b.positions[g];
if (a <= b.offsetX + c) {
if (a <= b.offsetX + (c - b.positions[g]) + b.positions[g] / 2)
return b.startIndex + g;
if (b.startIndex + g < b.endIndex) return b.startIndex + g + 1;
break;
}
}
return b.endIndex;
},
__hitTest: function (a, b, c, d, f, g) {
if (
!g.get_visible() ||
this.__isMask ||
(f && !this.mouseEnabled) ||
(null != this.get_mask() && !this.get_mask().__hitTestMask(a, b))
)
return !1;
this.__getRenderTransform();
this.__updateLayout();
c = this.__renderTransform;
f = c.a * c.d - c.b * c.c;
var e = 0 == f ? -c.tx : (1 / f) * (c.c * (c.ty - b) + c.d * (a - c.tx));
c = this.__renderTransform;
f = c.a * c.d - c.b * c.c;
return this.__textEngine.bounds.contains(
e,
0 == f ? -c.ty : (1 / f) * (c.a * (b - c.ty) + c.b * (c.tx - a))
)
? (null != d && d.push(g), !0)
: !1;
},
__hitTestMask: function (a, b) {
this.__getRenderTransform();
this.__updateLayout();
var c = this.__renderTransform,
d = c.a * c.d - c.b * c.c,
f = 0 == d ? -c.tx : (1 / d) * (c.c * (c.ty - b) + c.d * (a - c.tx));
c = this.__renderTransform;
d = c.a * c.d - c.b * c.c;
return this.__textEngine.bounds.contains(
f,
0 == d ? -c.ty : (1 / d) * (c.a * (b - c.ty) + c.b * (c.tx - a))
)
? !0
: !1;
},
__replaceSelectedText: function (a, b) {
null == b && (b = !0);
null == a && (a = '');
if ('' != a || this.__selectionIndex != this.__caretIndex) {
var c =
this.__caretIndex < this.__selectionIndex
? this.__caretIndex
: this.__selectionIndex,
d =
this.__caretIndex > this.__selectionIndex
? this.__caretIndex
: this.__selectionIndex;
if (
!(
c == d &&
0 < this.__textEngine.maxChars &&
this.__text.length == this.__textEngine.maxChars
)
) {
c > this.__text.length && (c = this.__text.length);
d > this.__text.length && (d = this.__text.length);
if (d < c) {
var f = d;
d = c;
c = f;
}
0 > c && (c = 0);
this.__replaceText(c, d, a, b);
}
}
},
__replaceText: function (a, b, c, d) {
if (!(b < a || 0 > a || b > this.__text.length || null == c)) {
d &&
((c = this.__textEngine.restrictText(c)),
0 < this.__textEngine.maxChars &&
((d = this.__textEngine.maxChars - this.__text.length + (b - a)),
0 >= d ? (c = '') : d < c.length && (c = A.substr(c, 0, d))));
this.__updateText(this.__text.substring(0, a) + c + this.__text.substring(b));
d = c.length - (b - a);
for (var e = 0, g; e < this.__textEngine.textFormatRanges.get_length(); )
(g = this.__textEngine.textFormatRanges.get(e)),
a == b
? g.start == g.end
? 0 != g.start
? Xa.warn(
"You found a bug in OpenFL's text code! Please save a copy of your project and contact Joshua Granick (@singmajesty) so we can fix this.",
{
fileName: 'openfl/text/TextField.hx',
lineNumber: 2060,
className: 'openfl.text.TextField',
methodName: '__replaceText'
}
)
: (g.end += d)
: g.end >= a &&
(g.start >= a
? ((g.start += d), (g.end += d))
: g.start < a && g.end >= b && (g.end += d))
: g.end > a &&
(g.start > b
? ((g.start += d), (g.end += d))
: g.start <= a && g.end > b
? (g.end += d)
: g.start >= a && g.end <= b
? this.__textEngine.textFormatRanges.splice(e--, 1)
: g.end > b && g.start > a && g.start <= b
? ((g.start = a), (g.end += d))
: g.start < a && g.end > a && g.end <= b && (g.end = a)),
++e;
0 == this.__textEngine.textFormatRanges.get_length()
? this.__textEngine.textFormatRanges.push(
new ff(this.get_defaultTextFormat().clone(), 0, c.length)
)
: a == b && 0 < this.__textEngine.textFormatRanges.get(0).start
? this.__textEngine.textFormatRanges.unshift(
new ff(
this.get_defaultTextFormat().clone(),
0,
this.__textEngine.textFormatRanges.get(0).start
)
)
: a != b &&
this.__textEngine.textFormatRanges.get(
this.__textEngine.textFormatRanges.get_length() - 1
).end < this.__text.length &&
this.__textEngine.textFormatRanges.push(
new ff(
this.get_defaultTextFormat().clone(),
this.__textEngine.textFormatRanges.get(
this.__textEngine.textFormatRanges.get_length() - 1
).end,
this.__text.length
)
);
this.setSelection(a + c.length, a + c.length);
this.__layoutDirty = this.__dirty = !0;
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty());
}
},
__startCursorTimer: function () {
this.__cursorTimer = Qe.delay(q(this, this.__startCursorTimer), 600);
this.__showCursor = !this.__showCursor;
this.__dirty = !0;
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty());
},
__startTextInput: function () {
0 > this.__caretIndex && (this.__selectionIndex = this.__caretIndex = this.__text.length);
(La.__supportDOM ? this.__renderedOnCanvasWhileOnDOM : 1) && this.__enableInput();
},
__stopCursorTimer: function () {
null != this.__cursorTimer && (this.__cursorTimer.stop(), (this.__cursorTimer = null));
this.__showCursor &&
((this.__showCursor = !1),
(this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
},
__stopTextInput: function () {
(La.__supportDOM ? this.__renderedOnCanvasWhileOnDOM : 1) && this.__disableInput();
},
__updateLayout: function () {
if (this.__layoutDirty) {
var a = this.__textEngine.width;
this.__textEngine.update();
if (2 != this.__textEngine.autoSize) {
if (this.__textEngine.width != a)
switch (this.__textEngine.autoSize) {
case 0:
this.set_x(this.get_x() + (a - this.__textEngine.width) / 2);
break;
case 3:
this.set_x(this.get_x() + (a - this.__textEngine.width));
}
this.__textEngine.getBounds();
}
this.__layoutDirty = !1;
}
},
__updateScrollH: function () {
this.__updateLayout();
if (this.get_textWidth() <= this.get_width() - 4) this.set_scrollH(0);
else {
var a = this.get_scrollH();
if (
0 == this.__caretIndex ||
this.getLineOffset(this.getLineIndexOfChar(this.__caretIndex)) == this.__caretIndex
)
a = 0;
else {
var b = fa.__pool.get(),
c = !1;
this.__caretIndex < this.__text.length &&
(c = this.__getCharBoundaries(this.__caretIndex, b));
c || (this.__getCharBoundaries(this.__caretIndex - 1, b), (b.x += b.width));
for (; b.x < a && 0 < a; ) a -= 24;
for (; b.x > a + this.get_width() - 4; ) a += 24;
fa.__pool.release(b);
}
0 < a &&
1 != this.get_type() &&
((b = this.getLineLength(this.getLineIndexOfChar(this.__caretIndex))),
this.get_scrollH() + this.get_width() - 4 > b &&
this.set_scrollH(Math.ceil(b - this.get_width() + 4)));
0 > a
? this.set_scrollH(0)
: a > this.get_maxScrollH()
? this.set_scrollH(this.get_maxScrollH())
: this.set_scrollH(a);
}
},
__updateScrollV: function () {
this.__updateLayout();
if (this.get_textHeight() <= this.get_height() - 4) this.set_scrollV(1);
else {
var a = this.getLineIndexOfChar(this.__caretIndex);
-1 == a &&
0 < this.__caretIndex &&
(a = this.getLineIndexOfChar(this.__caretIndex - 1) + 1);
if (a + 1 < this.get_scrollV()) this.set_scrollV(a + 1);
else if (a + 1 > this.get_bottomScrollV()) {
for (var b = 0; 0 <= a; )
if (b + this.__textEngine.lineHeights.get(a) <= this.get_height() - 4)
(b += this.__textEngine.lineHeights.get(a)), --a;
else break;
this.set_scrollV(a + 2);
} else this.set_scrollV(this.get_scrollV());
}
},
__updateText: function (a) {
La.__supportDOM &&
this.__renderedOnCanvasWhileOnDOM &&
(this.__forceCachedBitmapUpdate = this.__text != a);
this.__textEngine.set_text(a);
this.__text = this.__textEngine.text;
this.__text.length < this.__caretIndex &&
(this.__selectionIndex = this.__caretIndex = this.__text.length);
if (!this.__displayAsPassword || (La.__supportDOM && !this.__renderedOnCanvasWhileOnDOM))
this.__textEngine.set_text(this.__text);
else {
a = '';
for (var b = 0, c = this.get_text().length; b < c; ) b++, (a += '*');
this.__textEngine.set_text(a);
}
},
__updateTransforms: function (a) {
lb.prototype.__updateTransforms.call(this, a);
a = this.__renderTransform;
var b = this.__offsetX,
c = this.__offsetY;
a.tx = b * a.a + c * a.c + a.tx;
a.ty = b * a.b + c * a.d + a.ty;
},
get_antiAliasType: function () {
return this.__textEngine.antiAliasType;
},
set_antiAliasType: function (a) {
return (this.__textEngine.antiAliasType = a);
},
get_autoSize: function () {
return this.__textEngine.autoSize;
},
set_autoSize: function (a) {
a != this.__textEngine.autoSize &&
((this.__layoutDirty = this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
return (this.__textEngine.autoSize = a);
},
get_background: function () {
return this.__textEngine.background;
},
set_background: function (a) {
a != this.__textEngine.background &&
((this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
return (this.__textEngine.background = a);
},
get_backgroundColor: function () {
return this.__textEngine.backgroundColor;
},
set_backgroundColor: function (a) {
a != this.__textEngine.backgroundColor &&
((this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
return (this.__textEngine.backgroundColor = a);
},
get_border: function () {
return this.__textEngine.border;
},
set_border: function (a) {
a != this.__textEngine.border &&
((this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
return (this.__textEngine.border = a);
},
get_borderColor: function () {
return this.__textEngine.borderColor;
},
set_borderColor: function (a) {
a != this.__textEngine.borderColor &&
((this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
return (this.__textEngine.borderColor = a);
},
get_bottomScrollV: function () {
this.__updateLayout();
return this.__textEngine.get_bottomScrollV();
},
get_caretIndex: function () {
return this.__caretIndex;
},
get_defaultTextFormat: function () {
return this.__textFormat.clone();
},
set_defaultTextFormat: function (a) {
this.__textFormat.__merge(a);
this.__dirty = this.__layoutDirty = !0;
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty());
return a;
},
get_displayAsPassword: function () {
return this.__displayAsPassword;
},
set_displayAsPassword: function (a) {
a != this.__displayAsPassword &&
((this.__layoutDirty = this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()),
(this.__displayAsPassword = a),
this.__updateText(this.__text));
return a;
},
get_embedFonts: function () {
return this.__textEngine.embedFonts;
},
set_embedFonts: function (a) {
return (this.__textEngine.embedFonts = a);
},
get_gridFitType: function () {
return this.__textEngine.gridFitType;
},
set_gridFitType: function (a) {
return (this.__textEngine.gridFitType = a);
},
get_height: function () {
this.__updateLayout();
return this.__textEngine.height * Math.abs(this.get_scaleY());
},
set_height: function (a) {
a != this.__textEngine.height &&
(this.__setTransformDirty(),
(this.__layoutDirty = this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()),
(this.__textEngine.height = a));
return this.__textEngine.height * Math.abs(this.get_scaleY());
},
get_htmlText: function () {
return this.__isHTML ? this.__rawHtmlText : this.__text;
},
set_htmlText: function (a) {
(this.__isHTML && this.__text == a) ||
((this.__layoutDirty = this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
this.__isHTML = !0;
this.__rawHtmlText = a;
a = xb.parse(a, this.__textFormat, this.__textEngine.textFormatRanges);
if (La.__supportDOM) {
1 < this.__textEngine.textFormatRanges.get_length() &&
this.__textEngine.textFormatRanges.splice(
1,
this.__textEngine.textFormatRanges.get_length() - 1
);
var b = this.__textEngine.textFormatRanges.get(0);
b.format = this.__textFormat;
b.start = 0;
this.__renderedOnCanvasWhileOnDOM
? ((b.end = a.length), this.__updateText(a))
: ((b.end = this.__rawHtmlText.length), this.__updateText(this.__rawHtmlText));
} else this.__updateText(a);
this.setSelection(this.get_length(), this.get_length());
return a;
},
get_length: function () {
return null != this.__text ? this.__text.length : 0;
},
get_maxChars: function () {
return this.__textEngine.maxChars;
},
set_maxChars: function (a) {
a != this.__textEngine.maxChars &&
((this.__textEngine.maxChars = a),
(this.__layoutDirty = this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
return a;
},
get_maxScrollH: function () {
this.__updateLayout();
return this.__textEngine.maxScrollH;
},
get_maxScrollV: function () {
this.__updateLayout();
return this.__textEngine.get_maxScrollV();
},
get_mouseWheelEnabled: function () {
return this.__mouseWheelEnabled;
},
set_mouseWheelEnabled: function (a) {
return (this.__mouseWheelEnabled = a);
},
get_multiline: function () {
return this.__textEngine.multiline;
},
set_multiline: function (a) {
a != this.__textEngine.multiline &&
((this.__layoutDirty = this.__dirty = !0),
this.__updateText(this.__text),
this.__updateScrollH(),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
return (this.__textEngine.multiline = a);
},
get_numLines: function () {
this.__updateLayout();
return this.__textEngine.numLines;
},
get_restrict: function () {
return this.__textEngine.restrict;
},
set_restrict: function (a) {
this.__textEngine.restrict != a &&
(this.__textEngine.set_restrict(a), this.__updateText(this.__text));
return a;
},
get_scrollH: function () {
return this.__textEngine.scrollH;
},
set_scrollH: function (a) {
this.__updateLayout();
a > this.__textEngine.maxScrollH && (a = this.__textEngine.maxScrollH);
0 > a && (a = 0);
a != this.__textEngine.scrollH &&
((this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()),
(this.__textEngine.scrollH = a),
this.dispatchEvent(new oa('scroll')));
return this.__textEngine.scrollH;
},
get_scrollV: function () {
return this.__textEngine.get_scrollV();
},
set_scrollV: function (a) {
this.__updateLayout();
0 < a &&
a != this.__textEngine.get_scrollV() &&
((this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()),
this.__textEngine.set_scrollV(a),
this.dispatchEvent(new oa('scroll')));
return this.__textEngine.get_scrollV();
},
get_selectable: function () {
return this.__textEngine.selectable;
},
set_selectable: function (a) {
a != this.__textEngine.selectable &&
1 == this.get_type() &&
(null != this.stage && this.stage.get_focus() == this
? this.__startTextInput()
: a || this.__stopTextInput());
return (this.__textEngine.selectable = a);
},
get_selectionBeginIndex: function () {
return Math.min(this.__caretIndex, this.__selectionIndex) | 0;
},
get_selectionEndIndex: function () {
return Math.max(this.__caretIndex, this.__selectionIndex) | 0;
},
get_sharpness: function () {
return this.__textEngine.sharpness;
},
set_sharpness: function (a) {
a != this.__textEngine.sharpness &&
((this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
return (this.__textEngine.sharpness = a);
},
get_tabEnabled: function () {
return null == this.__tabEnabled ? 1 == this.__textEngine.type : this.__tabEnabled;
},
get_text: function () {
return this.__text;
},
set_text: function (a) {
if (this.__isHTML || this.__text != a)
(this.__layoutDirty = this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty());
else return a;
1 < this.__textEngine.textFormatRanges.get_length() &&
this.__textEngine.textFormatRanges.splice(
1,
this.__textEngine.textFormatRanges.get_length() - 1
);
var b = this.__textEngine.textFormatRanges.get(0);
b.format = this.__textFormat;
b.start = 0;
b.end = a.length;
this.__isHTML = !1;
this.__updateText(a);
this.setSelection(0, 0);
return a;
},
get_textColor: function () {
return this.__textFormat.color;
},
set_textColor: function (a) {
a != this.__textFormat.color &&
((this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
for (var b = this.__textEngine.textFormatRanges.iterator(); b.hasNext(); )
b.next().format.color = a;
return (this.__textFormat.color = a);
},
get_textWidth: function () {
this.__updateLayout();
return this.__textEngine.textWidth;
},
get_textHeight: function () {
this.__updateLayout();
return this.__textEngine.textHeight;
},
get_type: function () {
return this.__textEngine.type;
},
set_type: function (a) {
a != this.__textEngine.type &&
(1 == a
? (this.addEventListener('addedToStage', q(this, this.this_onAddedToStage)),
this.this_onFocusIn(null),
(this.__textEngine.__useIntAdvances = !0))
: (this.removeEventListener('addedToStage', q(this, this.this_onAddedToStage)),
this.__stopTextInput(),
(this.__textEngine.__useIntAdvances = null)),
(this.__layoutDirty = this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
return (this.__textEngine.type = a);
},
get_width: function () {
this.__updateLayout();
return this.__textEngine.width * Math.abs(this.__scaleX);
},
set_width: function (a) {
a != this.__textEngine.width &&
(this.__setTransformDirty(),
(this.__layoutDirty = this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()),
(this.__textEngine.width = a));
return this.__textEngine.width * Math.abs(this.__scaleX);
},
get_wordWrap: function () {
return this.__textEngine.wordWrap;
},
set_wordWrap: function (a) {
a != this.__textEngine.wordWrap &&
((this.__layoutDirty = this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
return (this.__textEngine.wordWrap = a);
},
get_x: function () {
return this.__transform.tx + this.__offsetX;
},
set_x: function (a) {
a != this.__transform.tx + this.__offsetX && this.__setTransformDirty();
return (this.__transform.tx = a - this.__offsetX);
},
get_y: function () {
return this.__transform.ty + this.__offsetY;
},
set_y: function (a) {
a != this.__transform.ty + this.__offsetY && this.__setTransformDirty();
return (this.__transform.ty = a - this.__offsetY);
},
stage_onMouseMove: function (a) {
null != this.stage &&
this.get_selectable() &&
0 <= this.__selectionIndex &&
(this.__updateLayout(),
(a = this.__getPosition(this.get_mouseX() + this.get_scrollH(), this.get_mouseY())),
a != this.__caretIndex &&
((this.__caretIndex = a),
(a = !0),
La.__supportDOM &&
(this.__renderedOnCanvasWhileOnDOM && (this.__forceCachedBitmapUpdate = !0),
(a = !1)),
a &&
((this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()))));
},
stage_onMouseUp: function (a) {
if (
null != this.stage &&
(this.stage.removeEventListener('mouseMove', q(this, this.stage_onMouseMove)),
this.stage.removeEventListener('mouseUp', q(this, this.stage_onMouseUp)),
this.stage.get_focus() == this)
) {
this.__getWorldTransform();
this.__updateLayout();
a = this.__getPosition(this.get_mouseX() + this.get_scrollH(), this.get_mouseY());
var b = Math.max(this.__selectionIndex, a) | 0;
this.__selectionIndex = Math.min(this.__selectionIndex, a) | 0;
this.__caretIndex = b;
this.__inputEnabled &&
(this.this_onFocusIn(null),
this.__stopCursorTimer(),
this.__startCursorTimer(),
La.__supportDOM &&
this.__renderedOnCanvasWhileOnDOM &&
(this.__forceCachedBitmapUpdate = !0));
}
},
this_onAddedToStage: function (a) {
this.this_onFocusIn(null);
},
this_onFocusIn: function (a) {
1 == this.get_type() &&
null != this.stage &&
this.stage.get_focus() == this &&
this.__startTextInput();
},
this_onFocusOut: function (a) {
this.__stopCursorTimer();
null != a.relatedObject && a.relatedObject instanceof Ze
? (null != this.stage &&
(this.stage.window.onTextInput.remove(q(this, this.window_onTextInput)),
this.stage.window.onKeyDown.remove(q(this, this.window_onKeyDown))),
(this.__inputEnabled = !1))
: this.__stopTextInput();
this.__selectionIndex != this.__caretIndex &&
((this.__selectionIndex = this.__caretIndex),
(this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty()));
},
this_onKeyDown: function (a) {
this.get_selectable() &&
1 != this.get_type() &&
67 == a.keyCode &&
(a.commandKey || a.ctrlKey) &&
this.__caretIndex != this.__selectionIndex &&
je.set_text(this.__text.substring(this.__caretIndex, this.__selectionIndex));
},
this_onMouseDown: function (a) {
if (this.get_selectable() || 1 == this.get_type())
this.__updateLayout(),
(this.__selectionIndex = this.__caretIndex =
this.__getPosition(this.get_mouseX() + this.get_scrollH(), this.get_mouseY())),
La.__supportDOM ||
((this.__dirty = !0),
this.__renderDirty || ((this.__renderDirty = !0), this.__setParentRenderDirty())),
this.stage.addEventListener('mouseMove', q(this, this.stage_onMouseMove)),
this.stage.addEventListener('mouseUp', q(this, this.stage_onMouseUp));
},
this_onMouseWheel: function (a) {
this.get_mouseWheelEnabled() && this.set_scrollV(this.get_scrollV() - a.delta);
},
this_onDoubleClick: function (a) {
if (this.get_selectable()) {
this.__updateLayout();
a = '\n.!?, ;:()-_/'.split('');
var b = this.__text,
c = -1,
d = b.length,
f = Math.max(this.__caretIndex, 1) | 0;
if (0 < b.length && 0 <= this.__caretIndex && d >= this.__caretIndex) {
for (var g = 0; g < a.length; ) {
var k = a[g];
++g;
var l = b.lastIndexOf(k, f - 1);
l > c && (c = l + 1);
l = b.indexOf(k, f);
l < d && -1 != l && (d = l);
}
c != d &&
(this.setSelection(c, d),
(a = !0),
La.__supportDOM &&
(this.__renderedOnCanvasWhileOnDOM && (this.__forceCachedBitmapUpdate = !0),
(a = !1)),
a &&
((this.__dirty = !0),
this.__renderDirty ||
((this.__renderDirty = !0), this.__setParentRenderDirty())));
}
}
},
window_onKeyDown: function (a, b) {
switch (a) {
case 8:
this.__selectionIndex == this.__caretIndex &&
0 < this.__caretIndex &&
(this.__selectionIndex = this.__caretIndex - 1);
this.__selectionIndex != this.__caretIndex
? (this.replaceSelectedText(''),
(this.__selectionIndex = this.__caretIndex),
this.dispatchEvent(new oa('change', !0)))
: (this.__stopCursorTimer(), this.__startCursorTimer());
break;
case 97:
this.get_selectable() &&
(Bb.get_metaKey(b) || Bb.get_ctrlKey(b)) &&
((this.__caretIndex = this.__text.length), (this.__selectionIndex = 0));
break;
case 99:
(Bb.get_metaKey(b) || Bb.get_ctrlKey(b)) &&
this.__caretIndex != this.__selectionIndex &&
je.set_text(this.__text.substring(this.__caretIndex, this.__selectionIndex));
break;
case 120:
(Bb.get_metaKey(b) || Bb.get_ctrlKey(b)) &&
this.__caretIndex != this.__selectionIndex &&
(je.set_text(this.__text.substring(this.__caretIndex, this.__selectionIndex)),
this.replaceSelectedText(''),
this.dispatchEvent(new oa('change', !0)));
break;
case 127:
this.__selectionIndex == this.__caretIndex &&
this.__caretIndex < this.__text.length &&
(this.__selectionIndex = this.__caretIndex + 1);
this.__selectionIndex != this.__caretIndex
? (this.replaceSelectedText(''),
(this.__selectionIndex = this.__caretIndex),
this.dispatchEvent(new oa('change', !0)))
: (this.__stopCursorTimer(), this.__startCursorTimer());
break;
case 1073741898:
this.get_selectable() &&
(Bb.get_metaKey(b) || Bb.get_ctrlKey(b)
? (this.__caretIndex = 0)
: this.__caretBeginningOfLine(),
Bb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex),
this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 1073741901:
this.get_selectable() &&
(Bb.get_metaKey(b) || Bb.get_ctrlKey(b)
? (this.__caretIndex = this.__text.length)
: this.__caretEndOfLine(),
Bb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex),
this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 1073741903:
this.get_selectable() &&
(Bb.get_metaKey(b) || Bb.get_ctrlKey(b)
? this.__caretBeginningOfNextLine()
: this.__caretNextCharacter(),
Bb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex),
this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 1073741904:
this.get_selectable() &&
(Bb.get_metaKey(b) || Bb.get_ctrlKey(b)
? this.__caretBeginningOfPreviousLine()
: this.__caretPreviousCharacter(),
Bb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex),
this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 1073741905:
this.get_selectable() &&
(Bb.get_metaKey(b) || Bb.get_ctrlKey(b)
? (this.__caretIndex = this.__text.length)
: this.__caretNextLine(),
Bb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex),
this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 1073741906:
this.get_selectable() &&
(Bb.get_metaKey(b) || Bb.get_ctrlKey(b)
? (this.__caretIndex = 0)
: this.__caretPreviousLine(),
Bb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex),
this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 13:
case 1073741912:
this.__textEngine.multiline
? ((a = new ef('textInput', !0, !0, '\n')),
this.dispatchEvent(a),
a.isDefaultPrevented() ||
(this.__replaceSelectedText('\n', !0),
this.dispatchEvent(new oa('change', !0))))
: (this.__stopCursorTimer(), this.__startCursorTimer());
}
},
window_onTextInput: function (a) {
this.__replaceSelectedText(a, !0);
this.dispatchEvent(new oa('change', !0));
},
__class__: Ze,
__properties__: r(lb.prototype.__properties__, {
set_wordWrap: 'set_wordWrap',
get_wordWrap: 'get_wordWrap',
set_type: 'set_type',
get_type: 'get_type',
get_textWidth: 'get_textWidth',
get_textHeight: 'get_textHeight',
set_textColor: 'set_textColor',
get_textColor: 'get_textColor',
set_text: 'set_text',
get_text: 'get_text',
set_sharpness: 'set_sharpness',
get_sharpness: 'get_sharpness',
get_selectionEndIndex: 'get_selectionEndIndex',
get_selectionBeginIndex: 'get_selectionBeginIndex',
set_selectable: 'set_selectable',
get_selectable: 'get_selectable',
set_scrollV: 'set_scrollV',
get_scrollV: 'get_scrollV',
set_scrollH: 'set_scrollH',
get_scrollH: 'get_scrollH',
set_restrict: 'set_restrict',
get_restrict: 'get_restrict',
get_numLines: 'get_numLines',
set_multiline: 'set_multiline',
get_multiline: 'get_multiline',
set_mouseWheelEnabled: 'set_mouseWheelEnabled',
get_mouseWheelEnabled: 'get_mouseWheelEnabled',
get_maxScrollV: 'get_maxScrollV',
get_maxScrollH: 'get_maxScrollH',
set_maxChars: 'set_maxChars',
get_maxChars: 'get_maxChars',
get_length: 'get_length',
set_htmlText: 'set_htmlText',
get_htmlText: 'get_htmlText',
set_gridFitType: 'set_gridFitType',
get_gridFitType: 'get_gridFitType',
set_embedFonts: 'set_embedFonts',
get_embedFonts: 'get_embedFonts',
set_displayAsPassword: 'set_displayAsPassword',
get_displayAsPassword: 'get_displayAsPassword',
set_defaultTextFormat: 'set_defaultTextFormat',
get_defaultTextFormat: 'get_defaultTextFormat',
get_caretIndex: 'get_caretIndex',
get_bottomScrollV: 'get_bottomScrollV',
set_borderColor: 'set_borderColor',
get_borderColor: 'get_borderColor',
set_border: 'set_border',
get_border: 'get_border',
set_backgroundColor: 'set_backgroundColor',
get_backgroundColor: 'get_backgroundColor',
set_background: 'set_background',
get_background: 'get_background',
set_autoSize: 'set_autoSize',
get_autoSize: 'get_autoSize',
set_antiAliasType: 'set_antiAliasType',
get_antiAliasType: 'get_antiAliasType'
})
});
var Qg = function (a, b, c, d, f, g, k, l, h, n, t, m, u) {
this.font = a;
this.size = b;
this.color = c;
this.bold = d;
this.italic = f;
this.underline = g;
this.url = k;
this.target = l;
this.align = h;
this.leftMargin = n;
this.rightMargin = t;
this.indent = m;
this.leading = u;
};
h['openfl.text.TextFormat'] = Qg;
Qg.__name__ = 'openfl.text.TextFormat';
Qg.prototype = {
align: null,
blockIndent: null,
bold: null,
bullet: null,
color: null,
font: null,
indent: null,
italic: null,
kerning: null,
leading: null,
leftMargin: null,
letterSpacing: null,
rightMargin: null,
size: null,
tabStops: null,
target: null,
underline: null,
url: null,
__ascent: null,
__descent: null,
clone: function () {
var a = new Qg(
this.font,
this.size,
this.color,
this.bold,
this.italic,
this.underline,
this.url,
this.target
);
a.align = this.align;
a.leftMargin = this.leftMargin;
a.rightMargin = this.rightMargin;
a.indent = this.indent;
a.leading = this.leading;
a.blockIndent = this.blockIndent;
a.bullet = this.bullet;
a.kerning = this.kerning;
a.letterSpacing = this.letterSpacing;
a.tabStops = this.tabStops;
a.__ascent = this.__ascent;
a.__descent = this.__descent;
return a;
},
__merge: function (a) {
null != a.font && (this.font = a.font);
null != a.size && (this.size = a.size);
null != a.color && (this.color = a.color);
null != a.bold && (this.bold = a.bold);
null != a.italic && (this.italic = a.italic);
null != a.underline && (this.underline = a.underline);
null != a.url && (this.url = a.url);
null != a.target && (this.target = a.target);
null != a.align && (this.align = a.align);
null != a.leftMargin && (this.leftMargin = a.leftMargin);
null != a.rightMargin && (this.rightMargin = a.rightMargin);
null != a.indent && (this.indent = a.indent);
null != a.leading && (this.leading = a.leading);
null != a.blockIndent && (this.blockIndent = a.blockIndent);
null != a.bullet && (this.bullet = a.bullet);
null != a.kerning && (this.kerning = a.kerning);
null != a.letterSpacing && (this.letterSpacing = a.letterSpacing);
null != a.tabStops && (this.tabStops = a.tabStops);
null != a.__ascent && (this.__ascent = a.__ascent);
null != a.__descent && (this.__descent = a.__descent);
},
__class__: Qg
};
var jk = {
fromString: function (a) {
switch (a) {
case 'center':
return 0;
case 'end':
return 1;
case 'justify':
return 2;
case 'left':
return 3;
case 'right':
return 4;
case 'start':
return 5;
default:
return null;
}
},
toString: function (a) {
switch (a) {
case 0:
return 'center';
case 1:
return 'end';
case 2:
return 'justify';
case 3:
return 'left';
case 4:
return 'right';
case 5:
return 'start';
default:
return null;
}
}
},
jp = function (a, b, c, d, f, g) {
this.x = a;
this.width = b;
this.height = c;
this.ascent = d;
this.descent = f;
this.leading = g;
};
h['openfl.text.TextLineMetrics'] = jp;
jp.__name__ = 'openfl.text.TextLineMetrics';
jp.prototype = {
ascent: null,
descent: null,
height: null,
leading: null,
width: null,
x: null,
__class__: jp
};
var kp = function (a, b, c) {
this.glyph = a;
this.advance = b;
this.offset = null != c ? c : new Xd();
};
h['openfl.text._internal.GlyphPosition'] = kp;
kp.__name__ = 'openfl.text._internal.GlyphPosition';
kp.prototype = {
advance: null,
glyph: null,
offset: null,
__class__: kp
};
var xb = function () {};
h['openfl.text._internal.HTMLParser'] = xb;
xb.__name__ = 'openfl.text._internal.HTMLParser';
xb.parse = function (a, b, c) {
a = a.replace(xb.__regexBreakTag.r, '\n');
a = a.replace(xb.__regexEntities[5].r, ' ');
var d = a.split('<');
if (1 == d.length)
(a = U.htmlUnescape(a.replace(xb.__regexHTMLTag.r, ''))),
1 < c.get_length() && c.splice(1, c.get_length() - 1),
(c = c.get(0)),
(c.format = b),
(c.start = 0),
(c.end = a.length);
else {
c.splice(0, c.get_length());
a = '';
for (var f, g = [b.clone()], k = [], l = !1, h = 0; h < d.length; )
if (((f = d[h]), ++h, '' != f)) {
var n = '/' == A.substr(f, 0, 1),
t = f.indexOf('>'),
m = t + 1,
u = f.indexOf(' ');
u = f.substring(n ? 1 : 0, -1 < u && u < t ? u : t);
if (n)
0 == k.length || u.toLowerCase() != k[k.length - 1].toLowerCase()
? Xa.info('Invalid HTML, unexpected closing tag ignored: ' + u, {
fileName: 'openfl/text/_internal/HTMLParser.hx',
lineNumber: 82,
className: 'openfl.text._internal.HTMLParser',
methodName: 'parse'
})
: (k.pop(),
g.pop(),
(n = g[g.length - 1].clone()),
'p' == u.toLowerCase() && 0 < c.get_length() && ((a += '\n'), (l = !0)),
m < f.length &&
((f = U.htmlUnescape(A.substr(f, m, null))),
c.push(new ff(n, a.length, a.length + f.length)),
(a += f),
(l = !1)));
else if (((n = g[g.length - 1].clone()), -1 < t)) {
switch (u.toLowerCase()) {
case 'a':
xb.__regexHref.match(f) && (n.url = xb.__getAttributeMatch(xb.__regexHref));
break;
case 'b':
n.bold = !0;
break;
case 'em':
case 'i':
n.italic = !0;
break;
case 'font':
xb.__regexFace.match(f) && (n.font = xb.__getAttributeMatch(xb.__regexFace));
xb.__regexColor.match(f) &&
(n.color = B.parseInt('0x' + xb.__getAttributeMatch(xb.__regexColor)));
if (xb.__regexSize.match(f)) {
t = xb.__getAttributeMatch(xb.__regexSize);
var q = A.cca(t, 0);
n.size =
43 == q || 45 == q
? (2 <= g.length ? g[g.length - 2] : b).size + B.parseInt(t)
: B.parseInt(t);
}
break;
case 'p':
0 < c.get_length() && !l && (a += '\n');
xb.__regexAlign.match(f) &&
((t = xb.__getAttributeMatch(xb.__regexAlign).toLowerCase()),
(n.align = jk.fromString(t)));
break;
case 'textformat':
xb.__regexBlockIndent.match(f) &&
(n.blockIndent = B.parseInt(xb.__getAttributeMatch(xb.__regexBlockIndent)));
xb.__regexIndent.match(f) &&
(n.indent = B.parseInt(xb.__getAttributeMatch(xb.__regexIndent)));
xb.__regexLeading.match(f) &&
(n.leading = B.parseInt(xb.__getAttributeMatch(xb.__regexLeading)));
xb.__regexLeftMargin.match(f) &&
(n.leftMargin = B.parseInt(xb.__getAttributeMatch(xb.__regexLeftMargin)));
xb.__regexRightMargin.match(f) &&
(n.rightMargin = B.parseInt(xb.__getAttributeMatch(xb.__regexRightMargin)));
if (xb.__regexTabStops.match(f)) {
t = xb.__getAttributeMatch(xb.__regexTabStops).split(' ');
q = [];
for (var r = 0; r < t.length; ) {
var w = t[r];
++r;
q.push(B.parseInt(w));
}
n.tabStops = q;
}
break;
case 'u':
n.underline = !0;
}
g.push(n);
k.push(u);
m < f.length &&
((f = U.htmlUnescape(f.substring(m))),
c.push(new ff(n, a.length, a.length + f.length)),
(a += f),
(l = !1));
} else
(f = U.htmlUnescape(f)),
c.push(new ff(n, a.length, a.length + f.length)),
(a += f),
(l = !1);
}
0 == c.get_length() && c.push(new ff(g[0], 0, 0));
}
return a;
};
xb.__getAttributeMatch = function (a) {
return null != a.matched(2) ? a.matched(2) : a.matched(3);
};
var Sb = function (a) {
this.textField = a;
this.height = this.width = 100;
this.set_text('');
this.bounds = new fa(0, 0, 0, 0);
this.textBounds = new fa(0, 0, 0, 0);
this.type = 0;
this.autoSize = 2;
this.embedFonts = !1;
this.selectable = !0;
this.borderColor = 0;
this.border = !1;
this.backgroundColor = 16777215;
this.background = !1;
this.gridFitType = 1;
this.maxChars = 0;
this.multiline = !1;
this.numLines = 1;
this.scrollH = this.sharpness = 0;
this.set_scrollV(1);
this.wordWrap = !1;
this.lineAscents = yb.toFloatVector(null);
this.lineBreaks = yb.toIntVector(null);
this.lineDescents = yb.toFloatVector(null);
this.lineLeadings = yb.toFloatVector(null);
this.lineHeights = yb.toFloatVector(null);
this.lineWidths = yb.toFloatVector(null);
this.layoutGroups = yb.toObjectVector(null);
this.textFormatRanges = yb.toObjectVector(null);
null == Sb.__context &&
(Sb.__context = window.document.createElement('canvas').getContext('2d'));
};
h['openfl.text._internal.TextEngine'] = Sb;
Sb.__name__ = 'openfl.text._internal.TextEngine';
Sb.findFont = function (a) {
return Sc.__fontByName.h[a];
};
Sb.findFontVariant = function (a) {
var b = a.font,
c = a.bold;
a = a.italic;
null == b && (b = '_serif');
var d = U.replace(U.replace(b, ' Normal', ''), ' Regular', '');
return c && a && Object.prototype.hasOwnProperty.call(Sc.__fontByName.h, d + ' Bold Italic')
? Sb.findFont(d + ' Bold Italic')
: c && Object.prototype.hasOwnProperty.call(Sc.__fontByName.h, d + ' Bold')
? Sb.findFont(d + ' Bold')
: a && Object.prototype.hasOwnProperty.call(Sc.__fontByName.h, d + ' Italic')
? Sb.findFont(d + ' Italic')
: Sb.findFont(b);
};
Sb.getFormatHeight = function (a) {
Sb.__context.font = Sb.getFont(a);
var b = Sb.getFontInstance(a);
if (null != a.__ascent) {
var c = a.size * a.__ascent;
b = a.size * a.__descent;
} else
null != b && 0 != b.unitsPerEM
? ((c = (b.ascender / b.unitsPerEM) * a.size),
(b = Math.abs((b.descender / b.unitsPerEM) * a.size)))
: ((c = a.size), (b = 0.185 * a.size));
return c + b + a.leading;
};
Sb.getFont = function (a) {
var b = a.font,
c = a.bold,
d = a.italic;
null == b && (b = '_serif');
var f = U.replace(U.replace(b, ' Normal', ''), ' Regular', '');
c && d && Object.prototype.hasOwnProperty.call(Sc.__fontByName.h, f + ' Bold Italic')
? ((b = f + ' Bold Italic'), (d = c = !1))
: c && Object.prototype.hasOwnProperty.call(Sc.__fontByName.h, f + ' Bold')
? ((b = f + ' Bold'), (c = !1))
: d && Object.prototype.hasOwnProperty.call(Sc.__fontByName.h, f + ' Italic')
? ((b = f + ' Italic'), (d = !1))
: (c && (-1 < b.indexOf(' Bold ') || U.endsWith(b, ' Bold')) && (c = !1),
d && (-1 < b.indexOf(' Italic ') || U.endsWith(b, ' Italic')) && (d = !1));
c = (d ? 'italic ' : 'normal ') + 'normal ' + (c ? 'bold ' : 'normal ');
c += a.size + 'px';
c += '/' + (a.leading + a.size + 3) + 'px ';
switch (b) {
case '_sans':
a = 'sans-serif';
break;
case '_serif':
a = 'serif';
break;
case '_typewriter':
a = 'monospace';
break;
default:
a = "'" + b.replace(/^[\s'"]+(.*)[\s'"]+$/, '$1') + "'";
}
return (c += '' + a);
};
Sb.getFontInstance = function (a) {
return Sb.findFontVariant(a);
};
Sb.prototype = {
antiAliasType: null,
autoSize: null,
background: null,
backgroundColor: null,
border: null,
borderColor: null,
bottomScrollV: null,
bounds: null,
caretIndex: null,
embedFonts: null,
gridFitType: null,
height: null,
layoutGroups: null,
lineAscents: null,
lineBreaks: null,
lineDescents: null,
lineLeadings: null,
lineHeights: null,
lineWidths: null,
maxChars: null,
maxScrollH: null,
maxScrollV: null,
multiline: null,
numLines: null,
restrict: null,
scrollH: null,
scrollV: null,
selectable: null,
sharpness: null,
text: null,
textBounds: null,
textHeight: null,
textFormatRanges: null,
textWidth: null,
type: null,
width: null,
wordWrap: null,
textField: null,
__cursorTimer: null,
__hasFocus: null,
__isKeyDown: null,
__measuredHeight: null,
__measuredWidth: null,
__restrictRegexp: null,
__selectionStart: null,
__showCursor: null,
__textFormat: null,
__textLayout: null,
__texture: null,
__useIntAdvances: null,
__cairoFont: null,
__font: null,
createRestrictRegexp: function (a) {
var b = '',
c = [];
0 <
new Ja('\\^(.-.|.)', 'gu').map(a, function (a) {
b += a.matched(1);
return '';
}).length && c.push('[^' + a + ']');
0 < b.length && c.push('[' + b + ']');
return new Ja('(' + c.join('|') + ')', 'g');
},
getBounds: function () {
var a = this.border ? 1 : 0;
this.bounds.width = this.width + a;
this.bounds.height = this.height + a;
for (var b = (a = this.width), c = this.layoutGroups.iterator(); c.hasNext(); ) {
var d = c.next();
d.offsetX < a && (a = d.offsetX);
d.offsetY < b && (b = d.offsetY);
}
a >= this.width && (a = 2);
b >= this.height && (b = 2);
this.textBounds.setTo(
Math.max(a - 2, 0),
Math.max(b - 2, 0),
Math.min(this.textWidth + 4, this.bounds.width + 4),
Math.min(1.185 * this.textHeight + 4, this.bounds.height + 4)
);
},
getLine: function (a) {
return 0 > a || a > this.lineBreaks.get_length() + 1
? null
: 0 == this.lineBreaks.get_length()
? this.text
: this.text.substring(0 < a ? this.lineBreaks.get(a - 1) : 0, this.lineBreaks.get(a));
},
getLineBreakIndex: function (a) {
null == a && (a = 0);
var b = this.text.indexOf('\n', a);
a = this.text.indexOf('\r', a);
return -1 == b ? a : -1 == a ? b : b < a ? b : a;
},
getLineMeasurements: function () {
this.lineAscents.set_length(0);
this.lineDescents.set_length(0);
this.lineLeadings.set_length(0);
this.lineHeights.set_length(0);
this.lineWidths.set_length(0);
var a = 0,
b = 0,
c = null,
d = 0,
f = 0,
g;
this.textHeight = this.textWidth = 0;
this.numLines = 1;
this.maxScrollH = 0;
for (var k = this.layoutGroups.iterator(); k.hasNext(); ) {
for (g = k.next(); g.lineIndex > this.numLines - 1; )
this.lineAscents.push(a),
this.lineDescents.push(b),
this.lineLeadings.push(null != c ? c : 0),
this.lineHeights.push(d),
this.lineWidths.push(f),
(b = a = 0),
(c = null),
(f = d = 0),
this.numLines++;
a = Math.max(a, g.ascent);
b = Math.max(b, g.descent);
c = null == c ? g.leading : Math.max(c, g.leading) | 0;
d = Math.max(d, g.height);
f = g.offsetX - 2 + g.width;
f > this.textWidth && (this.textWidth = f);
g = g.offsetY - 2 + g.ascent + g.descent;
g > this.textHeight && (this.textHeight = g);
}
0 == this.textHeight &&
null != this.textField &&
1 == this.textField.get_type() &&
((a = this.textField.__textFormat),
(b = Sb.getFontInstance(a)),
null != a.__ascent
? ((k = a.size * a.__ascent), (g = a.size * a.__descent))
: null != b && 0 != b.unitsPerEM
? ((k = (b.ascender / b.unitsPerEM) * a.size),
(g = Math.abs((b.descender / b.unitsPerEM) * a.size)))
: ((k = a.size), (g = 0.185 * a.size)),
(c = a.leading),
(a = k),
(b = g),
(this.textHeight = k + g));
this.lineAscents.push(a);
this.lineDescents.push(b);
this.lineLeadings.push(null != c ? c : 0);
this.lineHeights.push(d);
this.lineWidths.push(f);
1 == this.numLines && 0 < c && (this.textHeight += c);
0 < this.layoutGroups.get_length() &&
((k = this.layoutGroups.get(this.layoutGroups.get_length() - 1)),
null != k && k.startIndex == k.endIndex && (this.textHeight -= d));
if (2 != this.autoSize)
switch (this.autoSize) {
case 0:
case 1:
case 3:
this.wordWrap || (this.width = this.textWidth + 4),
(this.height = this.textHeight + 4),
(this.bottomScrollV = this.numLines);
}
this.maxScrollH =
this.textWidth > this.width - 4 ? (this.textWidth - this.width + 4) | 0 : 0;
this.scrollH > this.maxScrollH && (this.scrollH = this.maxScrollH);
},
getLayoutGroups: function () {
var a = this;
this.layoutGroups.set_length(0);
if (null != this.text && '' != this.text) {
var b = -1,
c = null,
d = null,
f = Ze.__defaultTextFormat.clone(),
g = 0,
k = 0,
l = 0,
h = 0,
n = 3,
t = 0,
m = 0,
u = 0,
q = 0,
r = !0,
w = null,
x = null,
z = 0,
E = 0,
I = 0,
H = -2,
C = -1,
D = this.text.indexOf(' '),
ra = this.getLineBreakIndex(),
F = 0,
G = 0,
B = 0,
J = 0,
y = function (b, c, d) {
var e = [];
if (null == a.__useIntAdvances) {
var f = new Ja('Trident/7.0', '');
a.__useIntAdvances = f.match(R.navigator.userAgent);
}
if (a.__useIntAdvances) {
var g = 0;
for (f = c; f < d; ) {
var k = f++;
k = Sb.__context.measureText(b.substring(c, k + 1)).width;
e.push(k - g);
g = k;
}
} else
for (f = c; f < d; )
(k = f++),
k < b.length - 1
? ((c = Sb.__context.measureText(b.charAt(k + 1)).width),
(c = Sb.__context.measureText(A.substr(b, k, 2)).width - c))
: (c = Sb.__context.measureText(b.charAt(k)).width),
e.push(c);
return e;
},
L = function (a) {
for (var b = 0, c = 0; c < a.length; ) {
var d = a[c];
++c;
b += d;
}
return b;
},
M = function () {
return 2 + u + t + (r ? m : 0);
},
K = function () {
return a.width - 2 - q - M();
},
N = function (b, d) {
null == w || w.startIndex != w.endIndex
? ((w = new ln(c.format, b, d)), a.layoutGroups.push(w))
: ((w.format = c.format), (w.startIndex = b), (w.endIndex = d));
},
P = function () {
null != f.__ascent
? ((k = f.size * f.__ascent), (h = f.size * f.__descent))
: null != d && 0 != d.unitsPerEM
? ((k = (d.ascender / d.unitsPerEM) * f.size),
(h = Math.abs((d.descender / d.unitsPerEM) * f.size)))
: ((k = f.size), (h = 0.185 * f.size));
g = f.leading;
E = Math.ceil(k + h + g);
E > I && (I = E);
k > l && (l = k);
},
U = function () {
r = !0;
n = null != f.align ? f.align : 3;
t = null != f.blockIndent ? f.blockIndent : 0;
m = null != f.indent ? f.indent : 0;
u = null != f.leftMargin ? f.leftMargin : 0;
q = null != f.rightMargin ? f.rightMargin : 0;
},
S = function () {
return b < a.textFormatRanges.get_length() - 1
? ((b += 1),
(c = a.textFormatRanges.get(b)),
f.__merge(c.format),
(Sb.__context.font = Sb.getFont(f)),
(d = Sb.getFontInstance(f)),
!0)
: !1;
},
za = function (d, e) {
if (d >= e) (x = []), (z = 0);
else if (e <= c.end) (x = y(a.text, d, e)), (z = L(x));
else {
var f = d;
d = c.end;
var g = 0;
x = [];
for (z = 0; ; )
if ((f != d && ((f = y(a.text, f, d)), (x = x.concat(f))), d != e)) {
if (!S()) {
Xa.warn(
"You found a bug in OpenFL's text code! Please save a copy of your project and contact Joshua Granick (@singmajesty) so we can fix this.",
{
fileName: 'openfl/text/_internal/TextEngine.hx',
lineNumber: 1064,
className: 'openfl.text._internal.TextEngine',
methodName: 'getLayoutGroups'
}
);
break;
}
f = d;
d = e < c.end ? e : c.end;
++g;
} else {
z = L(x);
break;
}
b -= g + 1;
S();
}
},
T = function (b) {
if (b <= c.end) {
x = y(a.text, B, b);
z = L(x);
N(B, b);
w.positions = x;
var d = F,
e = M();
w.offsetX = d + e;
w.ascent = k;
w.descent = h;
w.leading = g;
w.lineIndex = J;
w.offsetY = G + 2;
w.width = z;
w.height = E;
F += z;
b == c.end && ((w = null), S(), P());
} else
for (;;) {
var f = b < c.end ? b : c.end;
B != f &&
((x = y(a.text, B, f)),
(z = L(x)),
N(B, f),
(w.positions = x),
(d = F),
(e = M()),
(w.offsetX = d + e),
(w.ascent = k),
(w.descent = h),
(w.leading = g),
(w.lineIndex = J),
(w.offsetY = G + 2),
(w.width = z),
(w.height = E),
(F += z),
(B = f));
f == c.end && (w = null);
if (f == b) break;
if (!S()) {
Xa.warn(
"You found a bug in OpenFL's text code! Please save a copy of your project and contact Joshua Granick (@singmajesty) so we can fix this.",
{
fileName: 'openfl/text/_internal/TextEngine.hx',
lineNumber: 1152,
className: 'openfl.text._internal.TextEngine',
methodName: 'getLayoutGroups'
}
);
break;
}
P();
}
B = b;
},
X = function () {
P();
for (var b = a.layoutGroups.get_length(); -1 < --b; ) {
var c = a.layoutGroups.get(b);
if (c.lineIndex < J) break;
c.lineIndex > J || ((c.ascent = l), (c.height = I));
}
G += I;
I = l = 0;
J += 1;
F = 0;
r = !1;
},
Sa = function (b) {
if (4 <= a.width && a.wordWrap) {
var c = x,
d,
e,
f;
for (d = L(c); 0 < c.length && F + d > K(); ) {
for (f = d = e = 0; F + f < K(); ) {
var g = c[d];
0 == g ? (++d, ++e) : ((f += g), ++d);
}
if (d == e) d = e + 1;
else
for (; 1 < d && F + f > K(); )
--d,
0 < d - e
? (za(B, B + d - e), (f = z))
: ((d = 1), (e = 0), za(B, B + 1), (f = 0));
c = B + d - e;
T(c);
X();
za(c, b);
c = x;
d = z;
}
}
T(b);
};
S();
U();
P();
for (var V, Y = this.text.length + 1; B < Y; )
if (-1 < ra && (-1 == D || ra < D))
B <= ra
? (za(B, ra), Sa(ra), (w = null))
: null != w &&
w.startIndex != w.endIndex &&
(w.endIndex == D && (w.width -= w.positions[w.positions.length - 1]),
(w = null)),
X(),
c.end == ra && (S(), P()),
(B = ra + 1),
(C = ra),
(ra = this.getLineBreakIndex(B)),
U();
else if (-1 < D)
for (
null != w && w.startIndex != w.endIndex && (w = null), V = !1;
B < this.text.length;
) {
var W = -1;
-1 == D ? (W = ra) : ((W = D + 1), -1 < ra && ra < W && (W = ra));
-1 == W && (W = this.text.length);
za(B, W);
if (2 == n) {
if (0 < x.length && B == H) {
B += 1;
var Z = x.shift();
z -= Z;
F += Z;
}
0 < x.length && W == D + 1 && (--W, (Z = x.pop()), (z -= Z));
}
this.wordWrap &&
F + z > K() &&
((V = !0),
0 < x.length && W == D + 1 && F + z - x[x.length - 1] <= K() && (V = !1));
if (V) {
2 != n &&
(null != w || 0 < this.layoutGroups.get_length()) &&
((V = w),
null == V && (V = this.layoutGroups.get(this.layoutGroups.get_length() - 1)),
(V.width -= V.positions[V.positions.length - 1]),
V.endIndex--);
V = this.layoutGroups.get_length() - 1;
for (Z = 0; ; ) {
w = this.layoutGroups.get(V);
if (0 < V && w.startIndex > H) ++Z;
else break;
--V;
}
B == H + 1 && X();
F = 0;
if (0 < Z) {
V = this.layoutGroups.get(this.layoutGroups.get_length() - Z).offsetX;
Z = this.layoutGroups.get_length() - Z;
for (var Q = this.layoutGroups.get_length(); Z < Q; ) {
var O = Z++;
w = this.layoutGroups.get(O);
w.offsetX -= V;
w.offsetY = G + 2;
w.lineIndex = J;
F += w.width;
}
}
Sa(W);
V = !1;
} else
null != w && B == D
? (2 != n &&
((w.endIndex = D), (w.positions = w.positions.concat(x)), (w.width += z)),
(F += z),
(B = W))
: (null == w || 2 == n
? Sa(W)
: ((Z = W < c.end ? W : c.end),
Z < W && ((x = y(this.text, B, Z)), (z = L(x))),
(w.endIndex = Z),
(w.positions = w.positions.concat(x)),
(w.width += z),
(F += z),
Z == c.end && ((w = null), S(), P(), (B = Z), Z != W && T(W)),
ra == W && ++W,
(B = W)),
W == this.text.length && X());
W = this.text.indexOf(' ', B);
ra == H &&
((w.endIndex = ra),
0 > ra - w.startIndex - w.positions.length && w.positions.push(0),
(B = ra + 1));
H = D;
D = W;
if ((-1 < ra && ra <= B && (D > ra || -1 == D)) || B > this.text.length) break;
}
else
B < this.text.length && (za(B, this.text.length), Sa(this.text.length), X()),
(B += 1);
C == B - 2 &&
-1 < C &&
(N(B - 1, B - 1),
(w.positions = []),
(w.ascent = k),
(w.descent = h),
(w.leading = g),
(w.lineIndex = J - 1),
(w.offsetX = M()),
(w.offsetY = G + 2 - E),
(w.width = 0),
(w.height = E));
}
},
restrictText: function (a) {
if (null == a) return a;
null != this.__restrictRegexp && (a = this.__restrictRegexp.split(a).join(''));
return a;
},
setTextAlignment: function () {
for (
var a = -1, b = 0, c, d, f = !1, g = 0, k = this.layoutGroups.get_length();
g < k;
) {
var l = g++;
c = this.layoutGroups.get(l);
if (c.lineIndex != a)
switch (
((a = c.lineIndex), (b = this.width - 4 - c.format.rightMargin), c.format.align)
) {
case 0:
b = this.lineWidths.get(a) < b ? Math.round((b - this.lineWidths.get(a)) / 2) : 0;
break;
case 2:
if (this.lineWidths.get(a) < b) {
d = 1;
for (var h = l + 1, n = this.layoutGroups.get_length(); h < n; ) {
var t = h++;
if (this.layoutGroups.get(t).lineIndex == a)
(0 != t &&
32 != A.cca(this.text, this.layoutGroups.get(t).startIndex - 1)) ||
++d;
else break;
}
if (
1 < d &&
((c = this.layoutGroups.get(l + d - 1)),
(h = A.cca(this.text, c.endIndex)),
c.endIndex < this.text.length && 10 != h && 13 != h)
)
for (
b = (b - this.lineWidths.get(a)) / (d - 1), f = !0, h = 1;
(this.layoutGroups.get(l + h).offsetX += b * h), ++h < d;
);
}
b = 0;
break;
case 4:
b = this.lineWidths.get(a) < b ? Math.round(b - this.lineWidths.get(a)) : 0;
break;
default:
b = 0;
}
0 < b && (c.offsetX += b);
}
f && this.getLineMeasurements();
},
trimText: function (a) {
if (null == a) return a;
0 < this.maxChars && a.length > this.maxChars && (a = A.substr(a, 0, this.maxChars));
return a;
},
update: function () {
null == this.text || 0 == this.textFormatRanges.get_length()
? (this.lineAscents.set_length(0),
this.lineBreaks.set_length(0),
this.lineDescents.set_length(0),
this.lineLeadings.set_length(0),
this.lineHeights.set_length(0),
this.lineWidths.set_length(0),
this.layoutGroups.set_length(0),
(this.textHeight = this.textWidth = 0),
(this.numLines = 1),
(this.maxScrollH = 0),
(this.bottomScrollV = this.maxScrollV = 1))
: (this.getLayoutGroups(), this.getLineMeasurements(), this.setTextAlignment());
this.getBounds();
},
get_bottomScrollV: function () {
if (1 == this.numLines || null == this.lineHeights) return 1;
for (
var a = this.lineHeights.get_length(),
b = this.lineLeadings.get_length() == a ? -this.lineLeadings.get(a - 1) : 0,
c = this.get_scrollV() - 1,
d = this.lineHeights.get_length();
c < d;
) {
var f = c++;
if (b + this.lineHeights.get(f) <= this.height - 4) b += this.lineHeights.get(f);
else {
a = f;
break;
}
}
return a < this.get_scrollV() ? this.get_scrollV() : a;
},
get_maxScrollV: function () {
if (1 == this.numLines || null == this.lineHeights) return 1;
for (var a = this.numLines - 1, b = 0, c = a; 0 <= a; )
if (b + this.lineHeights.get(a) <= this.height - 4) (b += this.lineHeights.get(a)), --a;
else break;
a = a == c ? this.numLines : a + 2;
return 1 > a ? 1 : a;
},
set_restrict: function (a) {
if (this.restrict == a) return this.restrict;
this.restrict = a;
this.__restrictRegexp =
null == this.restrict || 0 == this.restrict.length
? null
: this.createRestrictRegexp(a);
return this.restrict;
},
get_scrollV: function () {
if (1 == this.numLines || null == this.lineHeights) return 1;
var a = this.get_maxScrollV();
return this.scrollV > a ? a : this.scrollV;
},
set_scrollV: function (a) {
1 > a && (a = 1);
return (this.scrollV = a);
},
set_text: function (a) {
return (this.text = a);
},
__class__: Sb,
__properties__: {
set_text: 'set_text',
set_scrollV: 'set_scrollV',
get_scrollV: 'get_scrollV',
set_restrict: 'set_restrict',
get_maxScrollV: 'get_maxScrollV',
get_bottomScrollV: 'get_bottomScrollV'
}
};
var ff = function (a, b, c) {
this.format = a;
this.start = b;
this.end = c;
};
h['openfl.text._internal.TextFormatRange'] = ff;
ff.__name__ = 'openfl.text._internal.TextFormatRange';
ff.prototype = { end: null, format: null, start: null, __class__: ff };
var Td = function (a, b, c, d, f, g) {
null == g && (g = 'en');
null == f && (f = 'Zyyy');
null == d && (d = 4);
null == c && (c = 12);
null == a && (a = '');
this.letterSpacing = 0;
this.set_text(a);
this.set_font(b);
this.set_size(c);
this.__direction = d;
this.__script = f;
this.__language = g;
this.positions = [];
this.__dirty = !0;
this.__create(this.__direction, this.__script, this.__language);
};
h['openfl.text._internal.TextLayout'] = Td;
Td.__name__ = 'openfl.text._internal.TextLayout';
Td.prototype = {
autoHint: null,
font: null,
glyphs: null,
letterSpacing: null,
positions: null,
size: null,
text: null,
__buffer: null,
__direction: null,
__dirty: null,
__handle: null,
__language: null,
__script: null,
__font: null,
__hbBuffer: null,
__hbFont: null,
__create: function (a, b, c) {
4 == c.length && ((this.__hbBuffer = nx._new()), fx._new(c));
},
__position: function () {
this.positions = [];
},
get_positions: function () {
this.__dirty && ((this.__dirty = !1), this.__position());
return this.positions;
},
get_direction: function () {
return this.__direction;
},
set_direction: function (a) {
if (a == this.__direction) return a;
this.__direction = a;
this.__dirty = !0;
return a;
},
set_font: function (a) {
if (a == this.font) return a;
this.font = a;
this.__dirty = !0;
return a;
},
get_glyphs: function () {
for (var a = [], b = 0, c = this.get_positions(); b < c.length; ) {
var d = c[b];
++b;
a.push(d.glyph);
}
return a;
},
get_language: function () {
return this.__language;
},
set_language: function (a) {
if (a == this.__language) return a;
this.__language = a;
this.__dirty = !0;
return a;
},
get_script: function () {
return this.__script;
},
set_script: function (a) {
if (a == this.__script) return a;
this.__script = a;
this.__dirty = !0;
return a;
},
set_size: function (a) {
if (a == this.size) return a;
this.size = a;
this.__dirty = !0;
return a;
},
set_text: function (a) {
if (a == this.text) return a;
this.text = a;
this.__dirty = !0;
return a;
},
__class__: Td,
__properties__: {
set_text: 'set_text',
set_size: 'set_size',
set_script: 'set_script',
get_script: 'get_script',
get_positions: 'get_positions',
set_language: 'set_language',
get_language: 'get_language',
get_glyphs: 'get_glyphs',
set_font: 'set_font',
set_direction: 'set_direction',
get_direction: 'get_direction'
}
};
var ln = function (a, b, c) {
this.format = a;
this.startIndex = b;
this.endIndex = c;
};
h['openfl.text._internal.TextLayoutGroup'] = ln;
ln.__name__ = 'openfl.text._internal.TextLayoutGroup';
ln.prototype = {
ascent: null,
descent: null,
endIndex: null,
format: null,
height: null,
leading: null,
lineIndex: null,
offsetX: null,
offsetY: null,
positions: null,
startIndex: null,
width: null,
getAdvance: function (a) {
return this.positions[a];
},
__class__: ln
};
var Zb = function () {
db.call(this);
Zb.__instances.push(this);
};
h['openfl.ui.GameInput'] = Zb;
Zb.__name__ = 'openfl.ui.GameInput';
Zb.getDeviceAt = function (a) {
return 0 <= a && a < Zb.__deviceList.length ? Zb.__deviceList[a] : null;
};
Zb.__getDevice = function (a) {
if (null == a) return null;
if (null == Zb.__devices.h.__keys__[a.__id__]) {
var b = zc.__getDeviceData(),
c = b[a.id].id;
b = zc.__getDeviceData();
b = new mn(c, b[a.id].id);
Zb.__deviceList.push(b);
Zb.__devices.set(a, b);
Zb.numDevices = Zb.__deviceList.length;
}
return Zb.__devices.h[a.__id__];
};
Zb.__onGamepadAxisMove = function (a, b, c) {
a = Zb.__getDevice(a);
if (null != a && a.enabled) {
if (!a.__axis.h.hasOwnProperty(b)) {
if (null == b) var d = 'null';
else
switch (b) {
case 0:
d = 'LEFT_X';
break;
case 1:
d = 'LEFT_Y';
break;
case 2:
d = 'RIGHT_X';
break;
case 3:
d = 'RIGHT_Y';
break;
case 4:
d = 'TRIGGER_LEFT';
break;
case 5:
d = 'TRIGGER_RIGHT';
break;
default:
d = 'UNKNOWN (' + b + ')';
}
d = new zf(a, 'AXIS_' + d, -1, 1);
a.__axis.h[b] = d;
a.__controls.push(d);
}
d = a.__axis.h[b];
d.value = c;
d.dispatchEvent(new oa('change'));
}
};
Zb.__onGamepadButtonDown = function (a, b) {
a = Zb.__getDevice(a);
if (null != a && a.enabled) {
if (!a.__button.h.hasOwnProperty(b)) {
if (null == b) var c = 'null';
else
switch (b) {
case 0:
c = 'A';
break;
case 1:
c = 'B';
break;
case 2:
c = 'X';
break;
case 3:
c = 'Y';
break;
case 4:
c = 'BACK';
break;
case 5:
c = 'GUIDE';
break;
case 6:
c = 'START';
break;
case 7:
c = 'LEFT_STICK';
break;
case 8:
c = 'RIGHT_STICK';
break;
case 9:
c = 'LEFT_SHOULDER';
break;
case 10:
c = 'RIGHT_SHOULDER';
break;
case 11:
c = 'DPAD_UP';
break;
case 12:
c = 'DPAD_DOWN';
break;
case 13:
c = 'DPAD_LEFT';
break;
case 14:
c = 'DPAD_RIGHT';
break;
default:
c = 'UNKNOWN (' + b + ')';
}
c = new zf(a, 'BUTTON_' + c, 0, 1);
a.__button.h[b] = c;
a.__controls.push(c);
}
c = a.__button.h[b];
c.value = 1;
c.dispatchEvent(new oa('change'));
}
};
Zb.__onGamepadButtonUp = function (a, b) {
a = Zb.__getDevice(a);
if (null != a && a.enabled) {
if (!a.__button.h.hasOwnProperty(b)) {
if (null == b) var c = 'null';
else
switch (b) {
case 0:
c = 'A';
break;
case 1:
c = 'B';
break;
case 2:
c = 'X';
break;
case 3:
c = 'Y';
break;
case 4:
c = 'BACK';
break;
case 5:
c = 'GUIDE';
break;
case 6:
c = 'START';
break;
case 7:
c = 'LEFT_STICK';
break;
case 8:
c = 'RIGHT_STICK';
break;
case 9:
c = 'LEFT_SHOULDER';
break;
case 10:
c = 'RIGHT_SHOULDER';
break;
case 11:
c = 'DPAD_UP';
break;
case 12:
c = 'DPAD_DOWN';
break;
case 13:
c = 'DPAD_LEFT';
break;
case 14:
c = 'DPAD_RIGHT';
break;
default:
c = 'UNKNOWN (' + b + ')';
}
c = new zf(a, 'BUTTON_' + c, 0, 1);
a.__button.h[b] = c;
a.__controls.push(c);
}
c = a.__button.h[b];
c.value = 0;
c.dispatchEvent(new oa('change'));
}
};
Zb.__onGamepadConnect = function (a) {
a = Zb.__getDevice(a);
if (null != a)
for (var b = 0, c = Zb.__instances; b < c.length; ) {
var d = c[b];
++b;
d.dispatchEvent(new Gg('deviceAdded', !0, !1, a));
}
};
Zb.__onGamepadDisconnect = function (a) {
var b = Zb.__devices.h[a.__id__];
if (null != b) {
null != Zb.__devices.h.__keys__[a.__id__] &&
(A.remove(Zb.__deviceList, Zb.__devices.h[a.__id__]), Zb.__devices.remove(a));
Zb.numDevices = Zb.__deviceList.length;
a = 0;
for (var c = Zb.__instances; a < c.length; ) {
var d = c[a];
++a;
d.dispatchEvent(new Gg('deviceRemoved', !0, !1, b));
}
}
};
Zb.__super__ = db;
Zb.prototype = r(db.prototype, {
addEventListener: function (a, b, c, d, f) {
null == f && (f = !1);
null == d && (d = 0);
null == c && (c = !1);
db.prototype.addEventListener.call(this, a, b, c, d, f);
if ('deviceAdded' == a)
for (a = 0, b = Zb.__deviceList; a < b.length; )
(c = b[a]), ++a, this.dispatchEvent(new Gg('deviceAdded', !0, !1, c));
},
__class__: Zb
});
var zf = function (a, b, c, d, f) {
null == f && (f = 0);
db.call(this);
this.device = a;
this.id = b;
this.minValue = c;
this.maxValue = d;
this.value = f;
};
h['openfl.ui.GameInputControl'] = zf;
zf.__name__ = 'openfl.ui.GameInputControl';
zf.__super__ = db;
zf.prototype = r(db.prototype, {
device: null,
id: null,
maxValue: null,
minValue: null,
value: null,
__class__: zf
});
var mn = function (a, b) {
this.__controls = [];
this.__button = new Za();
this.__axis = new Za();
this.id = a;
this.name = b;
a = new zf(this, 'AXIS_0', -1, 1);
this.__axis.h[0] = a;
this.__controls.push(a);
a = new zf(this, 'AXIS_1', -1, 1);
this.__axis.h[1] = a;
this.__controls.push(a);
a = new zf(this, 'AXIS_2', -1, 1);
this.__axis.h[2] = a;
this.__controls.push(a);
a = new zf(this, 'AXIS_3', -1, 1);
this.__axis.h[3] = a;
this.__controls.push(a);
a = new zf(this, 'AXIS_4', -1, 1);
this.__axis.h[4] = a;
this.__controls.push(a);
a = new zf(this, 'AXIS_5', -1, 1);
this.__axis.h[5] = a;
this.__controls.push(a);
for (b = 0; 15 > b; ) {
var c = b++;
a = new zf(this, 'BUTTON_' + c, 0, 1);
this.__button.h[c] = a;
this.__controls.push(a);
}
};
h['openfl.ui.GameInputDevice'] = mn;
mn.__name__ = 'openfl.ui.GameInputDevice';
mn.prototype = {
enabled: null,
id: null,
name: null,
sampleInterval: null,
__axis: null,
__button: null,
__controls: null,
__gamepad: null,
getCachedSamples: function (a, b) {
return 0;
},
getControlAt: function (a) {
return 0 <= a && a < this.__controls.length ? this.__controls[a] : null;
},
startCachingSamples: function (a, b) {},
stopCachingSamples: function () {},
get_numControls: function () {
return this.__controls.length;
},
__class__: mn,
__properties__: { get_numControls: 'get_numControls' }
};
var Ga = function () {};
h['openfl.ui.Keyboard'] = Ga;
Ga.__name__ = 'openfl.ui.Keyboard';
Ga.isAccessible = function () {
return !1;
};
Ga.__convertKeyCode = function (a) {
switch (a) {
case 8:
return 8;
case 9:
return 9;
case 13:
return 13;
case 27:
return 27;
case 32:
return 32;
case 33:
return 49;
case 34:
return 222;
case 35:
return 51;
case 36:
return 52;
case 37:
return 53;
case 38:
return 55;
case 39:
return 222;
case 40:
return 57;
case 41:
return 48;
case 42:
return 56;
case 44:
return 188;
case 45:
return 189;
case 46:
return 190;
case 47:
return 191;
case 48:
return 48;
case 49:
return 49;
case 50:
return 50;
case 51:
return 51;
case 52:
return 52;
case 53:
return 53;
case 54:
return 54;
case 55:
return 55;
case 56:
return 56;
case 57:
return 57;
case 58:
return 186;
case 59:
return 186;
case 60:
return 60;
case 61:
return 187;
case 62:
return 190;
case 63:
return 191;
case 64:
return 50;
case 91:
return 219;
case 92:
return 220;
case 93:
return 221;
case 94:
return 54;
case 95:
return 189;
case 96:
return 192;
case 97:
return 65;
case 98:
return 66;
case 99:
return 67;
case 100:
return 68;
case 101:
return 69;
case 102:
return 70;
case 103:
return 71;
case 104:
return 72;
case 105:
return 73;
case 106:
return 74;
case 107:
return 75;
case 108:
return 76;
case 109:
return 77;
case 110:
return 78;
case 111:
return 79;
case 112:
return 80;
case 113:
return 81;
case 114:
return 82;
case 115:
return 83;
case 116:
return 84;
case 117:
return 85;
case 118:
return 86;
case 119:
return 87;
case 120:
return 88;
case 121:
return 89;
case 122:
return 90;
case 127:
return 46;
case 1073741881:
return 20;
case 1073741882:
return 112;
case 1073741883:
return 113;
case 1073741884:
return 114;
case 1073741885:
return 115;
case 1073741886:
return 116;
case 1073741887:
return 117;
case 1073741888:
return 118;
case 1073741889:
return 119;
case 1073741890:
return 120;
case 1073741891:
return 121;
case 1073741892:
return 122;
case 1073741893:
return 123;
case 1073741894:
return 301;
case 1073741895:
return 145;
case 1073741896:
return 19;
case 1073741897:
return 45;
case 1073741898:
return 36;
case 1073741899:
return 33;
case 1073741901:
return 35;
case 1073741902:
return 34;
case 1073741903:
return 39;
case 1073741904:
return 37;
case 1073741905:
return 40;
case 1073741906:
return 38;
case 1073741907:
return 144;
case 1073741908:
return 111;
case 1073741909:
return 106;
case 1073741910:
return 109;
case 1073741911:
return 107;
case 1073741912:
return 13;
case 1073741913:
return 97;
case 1073741914:
return 98;
case 1073741915:
return 99;
case 1073741916:
return 100;
case 1073741917:
return 101;
case 1073741918:
return 102;
case 1073741919:
return 103;
case 1073741920:
return 104;
case 1073741921:
return 105;
case 1073741922:
return 96;
case 1073741923:
return 110;
case 1073741925:
return 302;
case 1073741928:
return 124;
case 1073741929:
return 125;
case 1073741930:
return 126;
case 1073741982:
return 13;
case 1073742044:
return 110;
case 1073742048:
return 17;
case 1073742049:
return 16;
case 1073742050:
return 18;
case 1073742051:
return 15;
case 1073742052:
return 17;
case 1073742053:
return 16;
case 1073742054:
return 18;
case 1073742055:
return 15;
default:
return a;
}
};
Ga.__getCharCode = function (a, b) {
null == b && (b = !1);
if (b) {
switch (a) {
case 48:
return 41;
case 49:
return 33;
case 50:
return 64;
case 51:
return 35;
case 52:
return 36;
case 53:
return 37;
case 54:
return 94;
case 55:
return 38;
case 56:
return 42;
case 57:
return 40;
case 186:
return 58;
case 187:
return 43;
case 188:
return 60;
case 189:
return 95;
case 190:
return 62;
case 191:
return 63;
case 192:
return 126;
case 219:
return 123;
case 220:
return 124;
case 221:
return 125;
case 222:
return 34;
}
if (65 <= a && 90 >= a) return a - 65 + 65;
} else {
switch (a) {
case 8:
return 8;
case 9:
return 9;
case 13:
return 13;
case 27:
return 27;
case 32:
return 32;
case 186:
return 59;
case 187:
return 61;
case 188:
return 44;
case 189:
return 45;
case 190:
return 46;
case 191:
return 47;
case 192:
return 96;
case 219:
return 91;
case 220:
return 92;
case 221:
return 93;
case 222:
return 39;
}
if (48 <= a && 57 >= a) return a - 48 + 48;
if (65 <= a && 90 >= a) return a - 65 + 97;
}
if (96 <= a && 105 >= a) return a - 96 + 48;
switch (a) {
case 8:
return 8;
case 13:
return 13;
case 46:
return 127;
case 106:
return 42;
case 107:
return 43;
case 108:
return 44;
case 110:
return 45;
case 111:
return 46;
}
return 0;
};
Ga.__getKeyLocation = function (a) {
switch (a) {
case 1073741908:
case 1073741909:
case 1073741910:
case 1073741911:
case 1073741912:
case 1073741913:
case 1073741914:
case 1073741915:
case 1073741916:
case 1073741917:
case 1073741918:
case 1073741919:
case 1073741920:
case 1073741921:
case 1073741922:
case 1073741923:
case 1073742044:
return 3;
case 1073742048:
case 1073742049:
case 1073742050:
case 1073742051:
return 1;
case 1073742052:
case 1073742053:
case 1073742054:
case 1073742055:
return 2;
default:
return 0;
}
};
var qe = function () {};
h['openfl.ui.Mouse'] = qe;
qe.__name__ = 'openfl.ui.Mouse';
qe.__properties__ = {
set_cursor: 'set_cursor',
get_cursor: 'get_cursor'
};
qe.hide = function () {
qe.__hidden = !0;
for (var a = 0, b = vd.current.__windows; a < b.length; ) {
var c = b[a];
++a;
c.set_cursor(null);
}
};
qe.show = function () {
qe.__hidden = !1;
var a = qe.__cursor;
qe.__cursor = null;
qe.set_cursor(a);
};
qe.get_cursor = function () {
return qe.__cursor;
};
qe.set_cursor = function (a) {
null == a && (a = 'auto');
var b = null;
switch (a) {
case 'arrow':
b = nc.ARROW;
break;
case 'button':
b = nc.POINTER;
break;
case 'crosshair':
b = nc.CROSSHAIR;
break;
case 'custom':
b = nc.CUSTOM;
break;
case 'hand':
b = nc.MOVE;
break;
case 'ibeam':
b = nc.TEXT;
break;
case 'resize_nesw':
b = nc.RESIZE_NESW;
break;
case 'resize_ns':
b = nc.RESIZE_NS;
break;
case 'resize_nwse':
b = nc.RESIZE_NWSE;
break;
case 'resize_we':
b = nc.RESIZE_WE;
break;
case 'wait':
b = nc.WAIT;
break;
case 'waitarrow':
b = nc.WAIT_ARROW;
}
if (null != b && !qe.__hidden)
for (var c = 0, d = vd.current.__windows; c < d.length; ) {
var f = d[c];
++c;
f.set_cursor(b);
}
return (qe.__cursor = a);
};
var xf = {
fromLimeCursor: function (a) {
switch (a._hx_index) {
case 0:
return 'arrow';
case 1:
return 'crosshair';
case 2:
return 'auto';
case 3:
return 'hand';
case 4:
return 'button';
case 5:
return 'resize_nesw';
case 6:
return 'resize_ns';
case 7:
return 'resize_nwse';
case 8:
return 'resize_we';
case 9:
return 'ibeam';
case 10:
return 'wait';
case 11:
return 'waitarrow';
case 12:
return 'custom';
}
},
toLimeCursor: function (a) {
switch (a) {
case 'arrow':
return nc.ARROW;
case 'auto':
return nc.DEFAULT;
case 'button':
return nc.POINTER;
case 'crosshair':
return nc.CROSSHAIR;
case 'custom':
return nc.CUSTOM;
case 'hand':
return nc.MOVE;
case 'ibeam':
return nc.TEXT;
case 'resize_nesw':
return nc.RESIZE_NESW;
case 'resize_ns':
return nc.RESIZE_NS;
case 'resize_nwse':
return nc.RESIZE_NWSE;
case 'resize_we':
return nc.RESIZE_WE;
case 'wait':
return nc.WAIT;
case 'waitarrow':
return nc.WAIT_ARROW;
default:
return nc.DEFAULT;
}
}
},
ue = function () {};
h['openfl.ui.Multitouch'] = ue;
ue.__name__ = 'openfl.ui.Multitouch';
ue.__properties__ = {
get_supportsTouchEvents: 'get_supportsTouchEvents'
};
ue.get_supportsTouchEvents = function () {
return 'ontouchstart' in document.documentElement ||
(window.DocumentTouch && document instanceof DocumentTouch)
? !0
: !1;
};
var Y = function (a) {
null == a && (a = !1);
this.debugEnabled = a;
Y.initialized || Y.init();
};
h['openfl.utils.AGALMiniAssembler'] = Y;
Y.__name__ = 'openfl.utils.AGALMiniAssembler';
Y.init = function () {
Y.initialized = !0;
var a = Y.OPMAP,
b = new ac('mov', 2, 0, 0);
a.h.mov = b;
a = Y.OPMAP;
b = new ac('add', 3, 1, 0);
a.h.add = b;
a = Y.OPMAP;
b = new ac('sub', 3, 2, 0);
a.h.sub = b;
a = Y.OPMAP;
b = new ac('mul', 3, 3, 0);
a.h.mul = b;
a = Y.OPMAP;
b = new ac('div', 3, 4, 0);
a.h.div = b;
a = Y.OPMAP;
b = new ac('rcp', 2, 5, 0);
a.h.rcp = b;
a = Y.OPMAP;
b = new ac('min', 3, 6, 0);
a.h.min = b;
a = Y.OPMAP;
b = new ac('max', 3, 7, 0);
a.h.max = b;
a = Y.OPMAP;
b = new ac('frc', 2, 8, 0);
a.h.frc = b;
a = Y.OPMAP;
b = new ac('sqt', 2, 9, 0);
a.h.sqt = b;
a = Y.OPMAP;
b = new ac('rsq', 2, 10, 0);
a.h.rsq = b;
a = Y.OPMAP;
b = new ac('pow', 3, 11, 0);
a.h.pow = b;
a = Y.OPMAP;
b = new ac('log', 2, 12, 0);
a.h.log = b;
a = Y.OPMAP;
b = new ac('exp', 2, 13, 0);
a.h.exp = b;
a = Y.OPMAP;
b = new ac('nrm', 2, 14, 0);
a.h.nrm = b;
a = Y.OPMAP;
b = new ac('sin', 2, 15, 0);
a.h.sin = b;
a = Y.OPMAP;
b = new ac('cos', 2, 16, 0);
a.h.cos = b;
a = Y.OPMAP;
b = new ac('crs', 3, 17, 0);
a.h.crs = b;
a = Y.OPMAP;
b = new ac('dp3', 3, 18, 0);
a.h.dp3 = b;
a = Y.OPMAP;
b = new ac('dp4', 3, 19, 0);
a.h.dp4 = b;
a = Y.OPMAP;
b = new ac('abs', 2, 20, 0);
a.h.abs = b;
a = Y.OPMAP;
b = new ac('neg', 2, 21, 0);
a.h.neg = b;
a = Y.OPMAP;
b = new ac('sat', 2, 22, 0);
a.h.sat = b;
a = Y.OPMAP;
b = new ac('m33', 3, 23, 16);
a.h.m33 = b;
a = Y.OPMAP;
b = new ac('m44', 3, 24, 16);
a.h.m44 = b;
a = Y.OPMAP;
b = new ac('m34', 3, 25, 16);
a.h.m34 = b;
a = Y.OPMAP;
b = new ac('ddx', 2, 26, 288);
a.h.ddx = b;
a = Y.OPMAP;
b = new ac('ddy', 2, 27, 288);
a.h.ddy = b;
a = Y.OPMAP;
b = new ac('ife', 2, 28, 897);
a.h.ife = b;
a = Y.OPMAP;
b = new ac('ine', 2, 29, 897);
a.h.ine = b;
a = Y.OPMAP;
b = new ac('ifg', 2, 30, 897);
a.h.ifg = b;
a = Y.OPMAP;
b = new ac('ifl', 2, 31, 897);
a.h.ifl = b;
a = Y.OPMAP;
b = new ac('els', 0, 32, 1921);
a.h.els = b;
a = Y.OPMAP;
b = new ac('eif', 0, 33, 1409);
a.h.eif = b;
a = Y.OPMAP;
b = new ac('kil', 1, 39, 160);
a.h.kil = b;
a = Y.OPMAP;
b = new ac('tex', 3, 40, 40);
a.h.tex = b;
a = Y.OPMAP;
b = new ac('sge', 3, 41, 0);
a.h.sge = b;
a = Y.OPMAP;
b = new ac('slt', 3, 42, 0);
a.h.slt = b;
a = Y.OPMAP;
b = new ac('sgn', 2, 43, 0);
a.h.sgn = b;
a = Y.OPMAP;
b = new ac('seq', 3, 44, 0);
a.h.seq = b;
a = Y.OPMAP;
b = new ac('sne', 3, 45, 0);
a.h.sne = b;
a = Y.SAMPLEMAP;
b = new Zc('rgba', 8, 0);
a.h.rgba = b;
a = Y.SAMPLEMAP;
b = new Zc('compressed', 8, 1);
a.h.compressed = b;
a = Y.SAMPLEMAP;
b = new Zc('compressedalpha', 8, 2);
a.h.compressedalpha = b;
a = Y.SAMPLEMAP;
b = new Zc('dxt1', 8, 1);
a.h.dxt1 = b;
a = Y.SAMPLEMAP;
b = new Zc('dxt5', 8, 2);
a.h.dxt5 = b;
a = Y.SAMPLEMAP;
b = new Zc('video', 8, 3);
a.h.video = b;
a = Y.SAMPLEMAP;
b = new Zc('2d', 12, 0);
a.h['2d'] = b;
a = Y.SAMPLEMAP;
b = new Zc('3d', 12, 2);
a.h['3d'] = b;
a = Y.SAMPLEMAP;
b = new Zc('cube', 12, 1);
a.h.cube = b;
a = Y.SAMPLEMAP;
b = new Zc('mipnearest', 24, 1);
a.h.mipnearest = b;
a = Y.SAMPLEMAP;
b = new Zc('miplinear', 24, 2);
a.h.miplinear = b;
a = Y.SAMPLEMAP;
b = new Zc('mipnone', 24, 0);
a.h.mipnone = b;
a = Y.SAMPLEMAP;
b = new Zc('nomip', 24, 0);
a.h.nomip = b;
a = Y.SAMPLEMAP;
b = new Zc('nearest', 28, 0);
a.h.nearest = b;
a = Y.SAMPLEMAP;
b = new Zc('linear', 28, 1);
a.h.linear = b;
a = Y.SAMPLEMAP;
b = new Zc('anisotropic2x', 28, 2);
a.h.anisotropic2x = b;
a = Y.SAMPLEMAP;
b = new Zc('anisotropic4x', 28, 3);
a.h.anisotropic4x = b;
a = Y.SAMPLEMAP;
b = new Zc('anisotropic8x', 28, 4);
a.h.anisotropic8x = b;
a = Y.SAMPLEMAP;
b = new Zc('anisotropic16x', 28, 5);
a.h.anisotropic16x = b;
a = Y.SAMPLEMAP;
b = new Zc('centroid', 16, 1);
a.h.centroid = b;
a = Y.SAMPLEMAP;
b = new Zc('single', 16, 2);
a.h.single = b;
a = Y.SAMPLEMAP;
b = new Zc('ignoresampler', 16, 4);
a.h.ignoresampler = b;
a = Y.SAMPLEMAP;
b = new Zc('repeat', 20, 1);
a.h.repeat = b;
a = Y.SAMPLEMAP;
b = new Zc('wrap', 20, 1);
a.h.wrap = b;
a = Y.SAMPLEMAP;
b = new Zc('clamp', 20, 0);
a.h.clamp = b;
a = Y.SAMPLEMAP;
b = new Zc('clamp_u_repeat_v', 20, 2);
a.h.clamp_u_repeat_v = b;
a = Y.SAMPLEMAP;
b = new Zc('repeat_u_clamp_v', 20, 3);
a.h.repeat_u_clamp_v = b;
};
Y.prototype = {
agalcode: null,
error: null,
verbose: null,
debugEnabled: null,
assemble2: function (a, b, c, d) {
c = this.assemble('vertex', c, b);
b = this.assemble('fragment', d, b);
a = a.createProgram();
a.upload(c, b);
return a;
},
assemble: function (a, b, c, d) {
null == d && (d = !1);
null == c && (c = 1);
var e = Ma.getTimer();
this.agalcode = new pc(0);
this.error = '';
var g = !1;
'fragment' == a
? (g = !0)
: 'vertex' != a &&
(this.error = 'ERROR: mode needs to be "fragment" or "vertex" but is "' + a + '".');
this.agalcode.__endian = 1;
this.agalcode.writeByte(160);
this.agalcode.writeUnsignedInt(c);
this.agalcode.writeByte(161);
this.agalcode.writeByte(g ? 1 : 0);
this.initregmap(c, d);
a = U.replace(b, '\r', '\n').split('\n');
b = 0;
d = a.length;
for (
var k = new Ja('<.*>', 'g'),
l = new Ja('([\\w\\.\\-\\+]+)', 'gi'),
h = new Ja('^\\w{3}', 'ig'),
n = new Ja(
'vc\\[([vofi][acostdip]?[d]?)(\\d*)?(\\.[xyzw](\\+\\d{1,3})?)?\\](\\.[xyzw]{1,4})?|([vofi][acostdip]?[d]?)(\\d*)?(\\.[xyzw]{1,4})?',
'gi'
),
t = new Ja('\\[.*\\]', 'ig'),
m = new Ja('^\\b[A-Za-z]{1,3}', 'ig'),
u = new Ja('\\d+', ''),
q = new Ja('(\\.[xyzw]{1,4})', ''),
r = new Ja('[A-Za-z]{1,3}', 'ig'),
w = new Ja('(\\.[xyzw]{1,1})', ''),
x = new Ja('\\+\\d{1,3}', 'ig'),
z = 0;
z < d && '' == this.error;
) {
var E = U.trim(a[z]),
I = E.indexOf('//');
-1 != I && (E = A.substr(E, 0, I));
var H = k.match(E) ? k.matchedPos().pos : -1;
I = null;
-1 != H && ((I = this.match(A.substr(E, H, null), l)), (E = A.substr(E, 0, H)));
var C = null;
h.match(E) && ((H = h.matched(0)), (C = Y.OPMAP.h[H]));
if (null == C)
3 <= E.length &&
Xa.warn('warning: bad line ' + z + ': ' + a[z], {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 262,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
});
else if (
(this.debugEnabled &&
Xa.info(C, {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 272,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
}),
null == C)
)
3 <= E.length &&
Xa.warn('warning: bad line ' + z + ': ' + a[z], {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 279,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
});
else {
E = A.substr(E, E.indexOf(C.name) + C.name.length, null);
if (0 != (C.flags & 256) && 2 > c) {
this.error = 'error: opcode requires version 2.';
break;
}
if (0 != (C.flags & 64) && g) {
this.error = 'error: opcode is only allowed in vertex programs.';
break;
}
if (0 != (C.flags & 32) && !g) {
this.error = 'error: opcode is only allowed in fragment programs.';
break;
}
this.verbose &&
Xa.info('emit opcode=' + B.string(C), {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 308,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
});
this.agalcode.writeUnsignedInt(C.emitCode);
++b;
if (4096 < b) {
this.error = 'error: too many opcodes. maximum is 4096.';
break;
}
var D = this.match(E, n);
if (D.length != C.numRegister) {
this.error =
'error: wrong number of operands. found ' +
D.length +
' but expected ' +
C.numRegister +
'.';
break;
}
var ra = !1,
F = 160;
E = 0;
for (H = D.length; E < H; ) {
var G = E++,
J = !1,
y = this.match(D[G], t);
0 < y.length &&
((D[G] = U.replace(D[G], y[0], '0')),
this.verbose &&
Xa.info('IS REL', {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 344,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
}),
(J = !0));
var L = this.match(D[G], m);
if (0 == L.length) {
this.error = 'error: could not parse operand ' + G + ' (' + D[G] + ').';
ra = !0;
break;
}
var M = Y.REGMAP.h[L[0]];
this.debugEnabled &&
Xa.info(M, {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 363,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
});
if (null == M) {
this.error =
'error: could not find register name for operand ' + G + ' (' + D[G] + ').';
ra = !0;
break;
}
if (g) {
if (0 == (M.flags & 32)) {
this.error =
'error: register operand ' +
G +
' (' +
D[G] +
') only allowed in vertex programs.';
ra = !0;
break;
}
if (J) {
this.error =
'error: register operand ' +
G +
' (' +
D[G] +
') relative adressing not allowed in fragment programs.';
ra = !0;
break;
}
} else if (0 == (M.flags & 64)) {
this.error =
'error: register operand ' +
G +
' (' +
D[G] +
') only allowed in fragment programs.';
ra = !0;
break;
}
D[G] = A.substr(D[G], D[G].indexOf(M.name) + M.name.length, null);
var K = J ? this.match(y[0], u) : this.match(D[G], u);
L = 0;
0 < K.length && (L = B.parseInt(K[0]));
if (Ba.gt(L, M.range)) {
E = M.range + 1;
this.error =
'error: register operand ' +
G +
' (' +
D[G] +
') index exceeds limit of ' +
(null == E ? 'null' : B.string(Ba.toFloat(E))) +
'.';
ra = !0;
break;
}
var N = this.match(D[G], q),
P = 0 == G && 0 == (C.flags & 128),
S = 2 == G && 0 != (C.flags & 8),
za = 0,
T = 0,
W = 0;
if (P && J) {
this.error = 'error: relative can not be destination';
ra = !0;
break;
}
if (0 < N.length) {
for (var V = (K = 0), Z = N[0].length, X = 1; X < Z; )
(V = A.cca(N[0], X) - 120),
Ba.gt(V, 2) && (V = 3),
(K = P ? K | (1 << V) : K | (V << ((X - 1) << 1))),
++X;
if (!P) for (; 4 >= X; ) (K |= V << ((X - 1) << 1)), ++X;
} else K = P ? 15 : 228;
if (J) {
N = this.match(y[0], r);
za = Y.REGMAP.h[N[0]];
if (null == za) {
this.error = 'error: bad index register';
ra = !0;
break;
}
za = za.emitCode;
V = this.match(y[0], w);
if (0 == V.length) {
this.error = 'error: bad index register select';
ra = !0;
break;
}
T = A.cca(V[0], 1) - 120;
Ba.gt(T, 2) && (T = 3);
y = this.match(y[0], x);
0 < y.length && (W = B.parseInt(y[0]));
if (0 > W || 255 < W) {
this.error = 'error: index offset ' + W + ' out of bounds. [0..255]';
ra = !0;
break;
}
this.verbose &&
Xa.info(
'RELATIVE: type=' +
za +
'==' +
N[0] +
' sel=' +
(null == T ? 'null' : B.string(Ba.toFloat(T))) +
'==' +
V[0] +
' idx=' +
(null == L ? 'null' : B.string(Ba.toFloat(L))) +
' offset=' +
W,
{
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 518,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
}
);
}
this.verbose &&
Xa.info(
' emit argcode=' +
B.string(M) +
'[' +
(null == L ? 'null' : B.string(Ba.toFloat(L))) +
'][' +
K +
']',
{
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 525,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
}
);
if (P)
this.agalcode.writeShort(L),
this.agalcode.writeByte(K),
this.agalcode.writeByte(M.emitCode),
(F -= 32);
else {
if (S) {
this.verbose &&
Xa.info(' emit sampler', {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 541,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
});
G = 5;
y = J = 0;
for (M = null == I ? 0 : I.length; y < M; )
(K = y++),
this.verbose &&
Xa.info(' opt: ' + I[K], {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 552,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
}),
(P = Y.SAMPLEMAP.h[I[K]]),
null == P
? ((J = parseFloat(I[K])),
this.verbose &&
Xa.info(' bias: ' + J, {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 565,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
}))
: (16 != P.flag && (G &= ~(15 << P.flag)), (G |= P.mask << P.flag));
this.agalcode.writeShort(L);
this.agalcode.writeByte((8 * J) | 0);
this.agalcode.writeByte(0);
this.agalcode.writeUnsignedInt(G);
this.verbose &&
Xa.info(' bits: ' + (G - 5), {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 586,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
});
} else
0 == G && (this.agalcode.writeUnsignedInt(0), (F -= 32)),
this.agalcode.writeShort(L),
this.agalcode.writeByte(W),
this.agalcode.writeByte(K),
this.agalcode.writeByte(M.emitCode),
this.agalcode.writeByte(za),
this.agalcode.writeShort(J ? T | 32768 : 0);
F -= 64;
}
}
for (E = 0; E < F; ) this.agalcode.writeByte(0), (E += 8);
if (ra) break;
}
++z;
}
'' != this.error &&
((this.error += '\n at line ' + z + ' ' + a[z]),
zb.set_length(this.agalcode, 0),
Xa.info(this.error, {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 631,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
}));
if (this.debugEnabled) {
c = 'generated bytecode:';
g = zb.get_length(this.agalcode);
E = 0;
for (H = g; E < H; )
(g = E++),
0 == g % 16 && (c += '\n'),
0 == g % 4 && (c += ' '),
(g = U.hex(this.agalcode.b[g], 2)),
2 > g.length && (g = '0' + g),
(c += g);
Xa.info(c, {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 662,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
});
}
this.verbose &&
Xa.info('AGALMiniAssembler.assemble time: ' + (Ma.getTimer() - e) / 1e3 + 's', {
fileName: 'openfl/utils/AGALMiniAssembler.hx',
lineNumber: 667,
className: 'openfl.utils.AGALMiniAssembler',
methodName: 'assemble'
});
return this.agalcode;
},
initregmap: function (a, b) {
var c = Y.REGMAP,
d = new qf('va', 'vertex attribute', 0, b ? 1024 : 1 == a || 2 == a ? 7 : 15, 66);
c.h.va = d;
c = Y.REGMAP;
d = new qf('vc', 'vertex constant', 1, b ? 1024 : 1 == a ? 127 : 249, 66);
c.h.vc = d;
c = Y.REGMAP;
d = new qf('vt', 'vertex temporary', 2, b ? 1024 : 1 == a ? 7 : 25, 67);
c.h.vt = d;
c = Y.REGMAP;
d = new qf('vo', 'vertex output', 3, b ? 1024 : 0, 65);
c.h.vo = d;
c = Y.REGMAP;
d = new qf('vi', 'varying', 4, b ? 1024 : 1 == a ? 7 : 9, 99);
c.h.vi = d;
c = Y.REGMAP;
d = new qf('fc', 'fragment constant', 1, b ? 1024 : 1 == a ? 27 : 2 == a ? 63 : 199, 34);
c.h.fc = d;
c = Y.REGMAP;
d = new qf('ft', 'fragment temporary', 2, b ? 1024 : 1 == a ? 7 : 25, 35);
c.h.ft = d;
c = Y.REGMAP;
d = new qf('fs', 'texture sampler', 5, b ? 1024 : 7, 34);
c.h.fs = d;
c = Y.REGMAP;
d = new qf('fo', 'fragment output', 3, b ? 1024 : 1 == a ? 0 : 3, 33);
c.h.fo = d;
c = Y.REGMAP;
d = new qf('fd', 'fragment depth output', 6, b ? 1024 : 1 == a ? -1 : 0, 33);
c.h.fd = d;
c = Y.REGMAP;
d = new qf('iid', 'instance id', 7, b ? 1024 : 0, 66);
c.h.iid = d;
d = Y.REGMAP.h.vo;
Y.REGMAP.h.op = d;
d = Y.REGMAP.h.vi;
Y.REGMAP.h.i = d;
d = Y.REGMAP.h.vi;
Y.REGMAP.h.v = d;
d = Y.REGMAP.h.fo;
Y.REGMAP.h.oc = d;
d = Y.REGMAP.h.fd;
Y.REGMAP.h.od = d;
d = Y.REGMAP.h.vi;
Y.REGMAP.h.fi = d;
},
match: function (a, b) {
for (var c = [], d = 0; b.matchSub(a, d); )
(d = b.matched(0)), c.push(d), (d = b.matchedPos().pos + d.length);
return c;
},
__class__: Y
};
var ac = function (a, b, c, d) {
this.name = a;
this.numRegister = b;
this.emitCode = c;
this.flags = d;
};
h['openfl.utils._AGALMiniAssembler.OpCode'] = ac;
ac.__name__ = 'openfl.utils._AGALMiniAssembler.OpCode';
ac.prototype = {
emitCode: null,
flags: null,
name: null,
numRegister: null,
toString: function () {
return (
'[OpCode name="' +
this.name +
'", numRegister=' +
this.numRegister +
', emitCode=' +
this.emitCode +
', flags=' +
this.flags +
']'
);
},
__class__: ac
};
var qf = function (a, b, c, d, f) {
this.name = a;
this.longName = b;
this.emitCode = c;
this.range = d;
this.flags = f;
};
h['openfl.utils._AGALMiniAssembler.Register'] = qf;
qf.__name__ = 'openfl.utils._AGALMiniAssembler.Register';
qf.prototype = {
emitCode: null,
name: null,
longName: null,
flags: null,
range: null,
toString: function () {
return (
'[Register name="' +
this.name +
'", longName="' +
this.longName +
'", emitCode=' +
(null == this.emitCode ? 'null' : B.string(Ba.toFloat(this.emitCode))) +
', range=' +
(null == this.range ? 'null' : B.string(Ba.toFloat(this.range))) +
', flags=' +
(null == this.flags ? 'null' : B.string(Ba.toFloat(this.flags))) +
']'
);
},
__class__: qf
};
var Zc = function (a, b, c) {
this.name = a;
this.flag = b;
this.mask = c;
};
h['openfl.utils._AGALMiniAssembler.Sampler'] = Zc;
Zc.__name__ = 'openfl.utils._AGALMiniAssembler.Sampler';
Zc.prototype = {
flag: null,
mask: null,
name: null,
toString: function () {
return (
'[Sampler name="' +
this.name +
'", flag="' +
(null == this.flag ? 'null' : B.string(Ba.toFloat(this.flag))) +
'", mask=' +
(null == this.mask ? 'null' : B.string(Ba.toFloat(this.mask))) +
']'
);
},
__class__: Zc
};
var nn = function () {};
h['openfl.utils.IAssetCache'] = nn;
nn.__name__ = 'openfl.utils.IAssetCache';
nn.__isInterface__ = !0;
nn.prototype = {
get_enabled: null,
set_enabled: null,
clear: null,
getBitmapData: null,
getFont: null,
getSound: null,
hasBitmapData: null,
hasFont: null,
hasSound: null,
removeBitmapData: null,
removeFont: null,
removeSound: null,
setBitmapData: null,
setFont: null,
setSound: null,
__class__: nn,
__properties__: {
set_enabled: 'set_enabled',
get_enabled: 'get_enabled'
}
};
var on = function () {
this.__enabled = !0;
this.bitmapData = new qa();
this.font = new qa();
this.sound = new qa();
};
h['openfl.utils.AssetCache'] = on;
on.__name__ = 'openfl.utils.AssetCache';
on.__interfaces__ = [nn];
on.prototype = {
bitmapData: null,
font: null,
sound: null,
__enabled: null,
clear: function (a) {
if (null == a)
(this.bitmapData = new qa()), (this.font = new qa()), (this.sound = new qa());
else {
var b = this.bitmapData.h;
b = Object.keys(b);
for (var c = b.length, d = 0; d < c; ) {
var f = b[d++];
U.startsWith(f, a) && this.removeBitmapData(f);
}
b = this.font.h;
b = Object.keys(b);
c = b.length;
for (d = 0; d < c; ) (f = b[d++]), U.startsWith(f, a) && this.removeFont(f);
b = this.sound.h;
b = Object.keys(b);
c = b.length;
for (d = 0; d < c; ) (f = b[d++]), U.startsWith(f, a) && this.removeSound(f);
}
},
getBitmapData: function (a) {
return this.bitmapData.h[a];
},
getFont: function (a) {
return this.font.h[a];
},
getSound: function (a) {
return this.sound.h[a];
},
hasBitmapData: function (a) {
return Object.prototype.hasOwnProperty.call(this.bitmapData.h, a);
},
hasFont: function (a) {
return Object.prototype.hasOwnProperty.call(this.font.h, a);
},
hasSound: function (a) {
return Object.prototype.hasOwnProperty.call(this.sound.h, a);
},
removeBitmapData: function (a) {
var b = wa.cache.image;
Object.prototype.hasOwnProperty.call(b.h, a) && delete b.h[a];
b = this.bitmapData;
return Object.prototype.hasOwnProperty.call(b.h, a) ? (delete b.h[a], !0) : !1;
},
removeFont: function (a) {
var b = wa.cache.font;
Object.prototype.hasOwnProperty.call(b.h, a) && delete b.h[a];
b = this.font;
return Object.prototype.hasOwnProperty.call(b.h, a) ? (delete b.h[a], !0) : !1;
},
removeSound: function (a) {
var b = wa.cache.audio;
Object.prototype.hasOwnProperty.call(b.h, a) && delete b.h[a];
b = this.sound;
return Object.prototype.hasOwnProperty.call(b.h, a) ? (delete b.h[a], !0) : !1;
},
setBitmapData: function (a, b) {
this.bitmapData.h[a] = b;
},
setFont: function (a, b) {
this.font.h[a] = b;
},
setSound: function (a, b) {
this.sound.h[a] = b;
},
get_enabled: function () {
return this.__enabled;
},
set_enabled: function (a) {
return (this.__enabled = a);
},
__class__: on,
__properties__: {
set_enabled: 'set_enabled',
get_enabled: 'get_enabled'
}
};
var le = function () {
qb.call(this);
};
h['openfl.utils.AssetLibrary'] = le;
le.__name__ = 'openfl.utils.AssetLibrary';
le.fromBytes = function (a, b) {
return le.fromManifest(Ic.fromBytes(zb.toLimeBytes(a), b));
};
le.fromFile = function (a, b) {
return le.fromManifest(Ic.fromFile(a, b));
};
le.fromManifest = function (a) {
a = qb.fromManifest(a);
if (null != a) {
if (a instanceof le) return a;
var b = new le();
b.__proxy = a;
return b;
}
return null;
};
le.loadFromBytes = function (a, b) {
return Ic.loadFromBytes(zb.toLimeBytes(a), b).then(function (a) {
return le.loadFromManifest(a);
});
};
le.loadFromFile = function (a, b) {
return Ic.loadFromFile(a, b).then(function (a) {
return le.loadFromManifest(a);
});
};
le.loadFromManifest = function (a) {
a = le.fromManifest(a);
return null != a
? a.load().then(function (a) {
return kb.withValue(a);
})
: kb.withError('Could not load asset manifest');
};
le.__super__ = qb;
le.prototype = r(qb.prototype, {
__proxy: null,
exists: function (a, b) {
return null != this.__proxy
? this.__proxy.exists(a, b)
: qb.prototype.exists.call(this, a, b);
},
getAsset: function (a, b) {
return null != this.__proxy
? this.__proxy.getAsset(a, b)
: qb.prototype.getAsset.call(this, a, b);
},
getAudioBuffer: function (a) {
return null != this.__proxy
? this.__proxy.getAudioBuffer(a)
: qb.prototype.getAudioBuffer.call(this, a);
},
getBytes: function (a) {
return null != this.__proxy
? this.__proxy.getBytes(a)
: qb.prototype.getBytes.call(this, a);
},
getFont: function (a) {
return null != this.__proxy
? this.__proxy.getFont(a)
: qb.prototype.getFont.call(this, a);
},
getImage: function (a) {
return null != this.__proxy
? this.__proxy.getImage(a)
: qb.prototype.getImage.call(this, a);
},
getMovieClip: function (a) {
return null;
},
getPath: function (a) {
return null != this.__proxy
? this.__proxy.getPath(a)
: qb.prototype.getPath.call(this, a);
},
getText: function (a) {
return null != this.__proxy
? this.__proxy.getText(a)
: qb.prototype.getText.call(this, a);
},
isLocal: function (a, b) {
return null != this.__proxy
? this.__proxy.isLocal(a, b)
: qb.prototype.isLocal.call(this, a, b);
},
list: function (a) {
return null != this.__proxy ? this.__proxy.list(a) : qb.prototype.list.call(this, a);
},
loadAsset: function (a, b) {
return null != this.__proxy
? this.__proxy.loadAsset(a, b)
: qb.prototype.loadAsset.call(this, a, b);
},
load: function () {
return null != this.__proxy ? this.__proxy.load() : qb.prototype.load.call(this);
},
loadAudioBuffer: function (a) {
return null != this.__proxy
? this.__proxy.loadAudioBuffer(a)
: qb.prototype.loadAudioBuffer.call(this, a);
},
loadBytes: function (a) {
return null != this.__proxy
? this.__proxy.loadBytes(a)
: qb.prototype.loadBytes.call(this, a);
},
loadFont: function (a) {
return null != this.__proxy
? this.__proxy.loadFont(a)
: qb.prototype.loadFont.call(this, a);
},
loadImage: function (a) {
return null != this.__proxy
? this.__proxy.loadImage(a)
: qb.prototype.loadImage.call(this, a);
},
loadMovieClip: function (a) {
return kb.withValue(this.getMovieClip(a));
},
loadText: function (a) {
return null != this.__proxy
? this.__proxy.loadText(a)
: qb.prototype.loadText.call(this, a);
},
unload: function () {
null != this.__proxy ? this.__proxy.unload() : qb.prototype.unload.call(this);
},
__class__: le
});
var Da = function () {};
h['openfl.utils.Assets'] = Da;
Da.__name__ = 'openfl.utils.Assets';
Da.addEventListener = function (a, b, c, d, f) {
null == f && (f = !1);
null == d && (d = 0);
null == c && (c = !1);
wa.onChange.has(Da.LimeAssets_onChange) || wa.onChange.add(Da.LimeAssets_onChange);
Da.dispatcher.addEventListener(a, b, c, d, f);
};
Da.dispatchEvent = function (a) {
return Da.dispatcher.dispatchEvent(a);
};
Da.exists = function (a, b) {
return wa.exists(a, b);
};
Da.getBitmapData = function (a, b) {
null == b && (b = !0);
if (b && Da.cache.get_enabled() && Da.cache.hasBitmapData(a)) {
var c = Da.cache.getBitmapData(a);
if (Da.isValidBitmapData(c)) return c;
}
c = wa.getImage(a, !1);
return null != c
? ((c = ja.fromImage(c)), b && Da.cache.get_enabled() && Da.cache.setBitmapData(a, c), c)
: null;
};
Da.getBytes = function (a) {
return zb.fromLimeBytes(wa.getBytes(a));
};
Da.getFont = function (a, b) {
null == b && (b = !0);
if (b && Da.cache.get_enabled() && Da.cache.hasFont(a)) return Da.cache.getFont(a);
var c = wa.getFont(a, !1);
if (null != c) {
var d = new Sc();
d.__fromLimeFont(c);
b && Da.cache.get_enabled() && Da.cache.setFont(a, d);
return d;
}
return new Sc();
};
Da.getLibrary = function (a) {
return wa.getLibrary(a);
};
Da.getMovieClip = function (a) {
var b = a.substring(0, a.indexOf(':')),
c = A.substr(a, a.indexOf(':') + 1, null),
d = Da.getLibrary(b);
if (null != d) {
if (d instanceof le && d.exists(c, 'MOVIE_CLIP')) {
if (d.isLocal(c, 'MOVIE_CLIP')) return d.getMovieClip(c);
Xa.error('MovieClip asset "' + a + '" exists, but only asynchronously', {
fileName: 'openfl/utils/Assets.hx',
lineNumber: 207,
className: 'openfl.utils.Assets',
methodName: 'getMovieClip'
});
return null;
}
Xa.error('There is no MovieClip asset with an ID of "' + a + '"', {
fileName: 'openfl/utils/Assets.hx',
lineNumber: 213,
className: 'openfl.utils.Assets',
methodName: 'getMovieClip'
});
} else
Xa.error('There is no asset library named "' + b + '"', {
fileName: 'openfl/utils/Assets.hx',
lineNumber: 217,
className: 'openfl.utils.Assets',
methodName: 'getMovieClip'
});
return null;
};
Da.getMusic = function (a, b) {
null == b && (b = !0);
return Da.getSound(a, b);
};
Da.getPath = function (a) {
return wa.getPath(a);
};
Da.getSound = function (a, b) {
null == b && (b = !0);
if (b && Da.cache.get_enabled() && Da.cache.hasSound(a)) {
var c = Da.cache.getSound(a);
if (Da.isValidSound(c)) return c;
}
c = wa.getAudioBuffer(a, !1);
return null != c
? ((c = yf.fromAudioBuffer(c)), b && Da.cache.get_enabled() && Da.cache.setSound(a, c), c)
: null;
};
Da.getText = function (a) {
return wa.getText(a);
};
Da.hasEventListener = function (a) {
return Da.dispatcher.hasEventListener(a);
};
Da.hasLibrary = function (a) {
return wa.hasLibrary(a);
};
Da.isLocal = function (a, b, c) {
null == c && (c = !0);
if (
c &&
Da.cache.get_enabled() &&
((('IMAGE' == b || null == b) && Da.cache.hasBitmapData(a)) ||
(('FONT' == b || null == b) && Da.cache.hasFont(a)) ||
(('SOUND' == b || 'MUSIC' == b || null == b) && Da.cache.hasSound(a)))
)
return !0;
c = a.substring(0, a.indexOf(':'));
a = A.substr(a, a.indexOf(':') + 1, null);
c = Da.getLibrary(c);
return null != c ? c.isLocal(a, b) : !1;
};
Da.isValidBitmapData = function (a) {
return null != a && null != a.image;
};
Da.isValidSound = function (a) {
return !0;
};
Da.list = function (a) {
return wa.list(a);
};
Da.loadBitmapData = function (a, b) {
null == b && (b = !0);
null == b && (b = !0);
var c = new $d();
if (b && Da.cache.get_enabled() && Da.cache.hasBitmapData(a)) {
var d = Da.cache.getBitmapData(a);
if (Da.isValidBitmapData(d)) return c.complete(d), c.future;
}
wa.loadImage(a, !1)
.onComplete(function (d) {
null != d
? ((d = ja.fromImage(d)),
b && Da.cache.get_enabled() && Da.cache.setBitmapData(a, d),
c.complete(d))
: c.error('[Assets] Could not load Image "' + a + '"');
})
.onError(q(c, c.error))
.onProgress(q(c, c.progress));
return c.future;
};
Da.loadBytes = function (a) {
var b = new $d();
a = wa.loadBytes(a);
a.onComplete(function (a) {
b.complete(zb.fromLimeBytes(a));
});
a.onProgress(function (a, d) {
b.progress(a, d);
});
a.onError(function (a) {
b.error(a);
});
return b.future;
};
Da.loadFont = function (a, b) {
null == b && (b = !0);
null == b && (b = !0);
var c = new $d();
if (b && Da.cache.get_enabled() && Da.cache.hasFont(a))
return c.complete(Da.cache.getFont(a)), c.future;
wa.loadFont(a)
.onComplete(function (d) {
var e = new Sc();
e.__fromLimeFont(d);
b && Da.cache.get_enabled() && Da.cache.setFont(a, e);
c.complete(e);
})
.onError(q(c, c.error))
.onProgress(q(c, c.progress));
return c.future;
};
Da.loadLibrary = function (a) {
return wa.loadLibrary(a).then(function (b) {
var c = null;
null != b &&
(b instanceof le
? (c = b)
: ((c = new le()), (c.__proxy = b), wa.registerLibrary(a, c)));
return kb.withValue(c);
});
};
Da.loadMusic = function (a, b) {
null == b && (b = !0);
null == b && (b = !0);
return new kb(function () {
return Da.getMusic(a, b);
});
};
Da.loadMovieClip = function (a) {
var b = new $d(),
c = a.substring(0, a.indexOf(':')),
d = A.substr(a, a.indexOf(':') + 1, null),
f = Da.getLibrary(c);
if (null != f) {
if (f instanceof le && f.exists(d, 'MOVIE_CLIP'))
return b.completeWith(f.loadMovieClip(d)), b.future;
b.error('[Assets] There is no MovieClip asset with an ID of "' + a + '"');
} else b.error('[Assets] There is no asset library named "' + c + '"');
return b.future;
};
Da.loadSound = function (a, b) {
null == b && (b = !0);
null == b && (b = !0);
var c = new $d();
wa.loadAudioBuffer(a, b)
.onComplete(function (d) {
null != d
? ((d = yf.fromAudioBuffer(d)),
b && Da.cache.get_enabled() && Da.cache.setSound(a, d),
c.complete(d))
: c.error('[Assets] Could not load Sound "' + a + '"');
})
.onError(q(c, c.error))
.onProgress(q(c, c.progress));
return c.future;
};
Da.loadText = function (a) {
return wa.loadText(a);
};
Da.registerLibrary = function (a, b) {
wa.registerLibrary(a, b);
};
Da.removeEventListener = function (a, b, c) {
null == c && (c = !1);
Da.dispatcher.removeEventListener(a, b, c);
};
Da.resolveClass = function (a) {
return h[a];
};
Da.resolveEnum = function (a) {
return E[a];
};
Da.unloadLibrary = function (a) {
wa.unloadLibrary(a);
};
Da.LimeAssets_onChange = function () {
Da.dispatchEvent(new oa('change'));
};
var zb = {
__properties__: {
set_position: 'set_position',
get_position: 'get_position',
set_length: 'set_length',
get_length: 'get_length',
get_bytesAvailable: 'get_bytesAvailable',
set_defaultObjectEncoding: 'set_defaultObjectEncoding',
get_defaultObjectEncoding: 'get_defaultObjectEncoding',
set_defaultEndian: 'set_defaultEndian',
get_defaultEndian: 'get_defaultEndian'
},
_new: function (a) {
null == a && (a = 0);
return new pc(a);
},
clear: function (a) {
a.clear();
},
compress: function (a, b) {
a.compress(b);
},
deflate: function (a) {
a.deflate();
},
fromArrayBuffer: function (a) {
return null == a ? null : pc.fromBytes(hb.ofData(a));
},
fromBytes: function (a) {
return null == a ? null : a instanceof pc ? a : pc.fromBytes(a);
},
fromBytesData: function (a) {
return null == a ? null : pc.fromBytes(hb.ofData(a));
},
fromFile: function (a) {
return zb.fromLimeBytes(kc.fromFile(a));
},
fromLimeBytes: function (a) {
return zb.fromBytes(a);
},
get: function (a, b) {
return a.b[b];
},
inflate: function (a) {
a.inflate();
},
loadFromBytes: function (a) {
return kc.loadFromBytes(a).then(function (a) {
a = zb.fromLimeBytes(a);
return kb.withValue(a);
});
},
loadFromFile: function (a) {
return kc.loadFromFile(a).then(function (a) {
a = zb.fromLimeBytes(a);
return kb.withValue(a);
});
},
readBoolean: function (a) {
return a.readBoolean();
},
readByte: function (a) {
return a.readByte();
},
readBytes: function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
a.readBytes(b, c, d);
},
readDouble: function (a) {
return a.readDouble();
},
readFloat: function (a) {
return a.readFloat();
},
readInt: function (a) {
return a.readInt();
},
readMultiByte: function (a, b, c) {
return a.readMultiByte(b, c);
},
readObject: function (a) {
return a.readObject();
},
readShort: function (a) {
return a.readShort();
},
readUTF: function (a) {
return a.readUTF();
},
readUTFBytes: function (a, b) {
return a.readUTFBytes(b);
},
readUnsignedByte: function (a) {
return a.readUnsignedByte();
},
readUnsignedInt: function (a) {
return a.readUnsignedInt();
},
readUnsignedShort: function (a) {
return a.readUnsignedShort();
},
set: function (a, b, c) {
a.__resize(b + 1);
a.b[b] = c & 255;
return c;
},
toArrayBuffer: function (a) {
return a.b.bufferValue;
},
toBytePointer: function (a) {
ox.set(zb.__bytePointer, a, null, null, a.position);
return zb.__bytePointer;
},
toBytes: function (a) {
return a;
},
toBytesData: function (a) {
return a.b.bufferValue;
},
toLimeBytes: function (a) {
return a;
},
toString: function (a) {
return a.toString();
},
uncompress: function (a, b) {
a.uncompress(b);
},
writeBoolean: function (a, b) {
a.writeBoolean(b);
},
writeByte: function (a, b) {
a.writeByte(b);
},
writeBytes: function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
a.writeBytes(b, c, d);
},
writeDouble: function (a, b) {
a.writeDouble(b);
},
writeFloat: function (a, b) {
a.writeFloat(b);
},
writeInt: function (a, b) {
a.writeInt(b);
},
writeMultiByte: function (a, b, c) {
a.writeMultiByte(b, c);
},
writeObject: function (a, b) {
a.writeObject(b);
},
writeShort: function (a, b) {
a.writeShort(b);
},
writeUTF: function (a, b) {
a.writeUTF(b);
},
writeUTFBytes: function (a, b) {
a.writeUTFBytes(b);
},
writeUnsignedInt: function (a, b) {
a.writeUnsignedInt(b);
},
get_bytesAvailable: function (a) {
return a.length - a.position;
},
get_defaultEndian: function () {
null == pc.__defaultEndian &&
(Wa.get_endianness() == Bg.LITTLE_ENDIAN
? (pc.__defaultEndian = 1)
: (pc.__defaultEndian = 0));
return pc.__defaultEndian;
},
set_defaultEndian: function (a) {
return (pc.__defaultEndian = a);
},
get_defaultObjectEncoding: function () {
return pc.defaultObjectEncoding;
},
set_defaultObjectEncoding: function (a) {
return (pc.defaultObjectEncoding = a);
},
get_endian: function (a) {
return a.__endian;
},
set_endian: function (a, b) {
return (a.__endian = b);
},
get_length: function (a) {
return null == a ? 0 : a.length;
},
set_length: function (a, b) {
0 < b && (a.__resize(b), b < a.position && (a.position = b));
return (a.length = b);
},
get_objectEncoding: function (a) {
return a.objectEncoding;
},
set_objectEncoding: function (a, b) {
return (a.objectEncoding = b);
},
get_position: function (a) {
return a.position;
},
set_position: function (a, b) {
return (a.position = b);
}
},
pn = function () {};
h['openfl.utils.IDataOutput'] = pn;
pn.__name__ = 'openfl.utils.IDataOutput';
pn.__isInterface__ = !0;
pn.prototype = {
get_endian: null,
set_endian: null,
objectEncoding: null,
writeBoolean: null,
writeByte: null,
writeBytes: null,
writeDouble: null,
writeFloat: null,
writeInt: null,
writeMultiByte: null,
writeObject: null,
writeShort: null,
writeUnsignedInt: null,
writeUTF: null,
writeUTFBytes: null,
__class__: pn,
__properties__: { set_endian: 'set_endian', get_endian: 'get_endian' }
};
var qn = function () {};
h['openfl.utils.IDataInput'] = qn;
qn.__name__ = 'openfl.utils.IDataInput';
qn.__isInterface__ = !0;
qn.prototype = {
get_bytesAvailable: null,
get_endian: null,
set_endian: null,
objectEncoding: null,
readBoolean: null,
readByte: null,
readBytes: null,
readDouble: null,
readFloat: null,
readInt: null,
readMultiByte: null,
readObject: null,
readShort: null,
readUnsignedByte: null,
readUnsignedInt: null,
readUnsignedShort: null,
readUTF: null,
readUTFBytes: null,
__class__: qn,
__properties__: {
set_endian: 'set_endian',
get_endian: 'get_endian',
get_bytesAvailable: 'get_bytesAvailable'
}
};
var pc = function (a) {
null == a && (a = 0);
var b = new hb(new ArrayBuffer(a));
hb.call(this, b.b.buffer);
this.__length = a;
null == pc.__defaultEndian &&
(Wa.get_endianness() == Bg.LITTLE_ENDIAN
? (pc.__defaultEndian = 1)
: (pc.__defaultEndian = 0));
this.__endian = pc.__defaultEndian;
this.objectEncoding = pc.defaultObjectEncoding;
this.position = 0;
};
h['openfl.utils.ByteArrayData'] = pc;
pc.__name__ = 'openfl.utils.ByteArrayData';
pc.__interfaces__ = [pn, qn];
pc.__properties__ = {
set_defaultEndian: 'set_defaultEndian',
get_defaultEndian: 'get_defaultEndian'
};
pc.fromBytes = function (a) {
var b = new pc();
b.__fromBytes(a);
return b;
};
pc.get_defaultEndian = function () {
null == pc.__defaultEndian &&
(Wa.get_endianness() == Bg.LITTLE_ENDIAN
? (pc.__defaultEndian = 1)
: (pc.__defaultEndian = 0));
return pc.__defaultEndian;
};
pc.set_defaultEndian = function (a) {
return (pc.__defaultEndian = a);
};
pc.__super__ = hb;
pc.prototype = r(hb.prototype, {
objectEncoding: null,
position: null,
__endian: null,
__length: null,
clear: function () {
this.position = this.length = 0;
},
compress: function (a) {
null == a && (a = 2);
if (this.__length > this.length) {
var b = this.length;
this.length = this.__length;
var c = new hb(new ArrayBuffer(b));
c.blit(0, this, 0, b);
this.b = c.b;
this.__length = c.length;
this.data = c.data;
this.length = b;
}
switch (a) {
case 0:
a = kc.compress(this, ae.DEFLATE);
break;
case 1:
a = kc.compress(this, ae.LZMA);
break;
default:
a = kc.compress(this, ae.ZLIB);
}
null != a &&
((this.b = a.b),
(this.__length = a.length),
(this.data = a.data),
(this.position = this.length = this.__length));
},
deflate: function () {
this.compress(0);
},
inflate: function () {
this.uncompress(0);
},
readBoolean: function () {
if (this.position < this.length) return 0 != this.b[this.position++];
throw M.thrown(new fh());
},
readByte: function () {
var a = this.readUnsignedByte();
return 0 != (a & 128) ? a - 256 : a;
},
readBytes: function (a, b, c) {
null == c && (c = 0);
null == b && (b = 0);
0 == c && (c = this.length - this.position);
if (this.position + c > this.length) throw M.thrown(new fh());
a.length < b + c && a.__resize(b + c);
a.blit(b, this, this.position, c);
this.position += c;
},
readDouble: function () {
if (1 == this.__endian) {
if (this.position + 8 > this.length) throw M.thrown(new fh());
this.position += 8;
return this.getDouble(this.position - 8);
}
var a = this.readInt(),
b = this.readInt();
return Zd.i64ToDouble(b, a);
},
readFloat: function () {
if (1 == this.__endian) {
if (this.position + 4 > this.length) throw M.thrown(new fh());
this.position += 4;
return this.getFloat(this.position - 4);
}
return Zd.i32ToFloat(this.readInt());
},
readInt: function () {
var a = this.readUnsignedByte(),
b = this.readUnsignedByte(),
c = this.readUnsignedByte(),
d = this.readUnsignedByte();
return 1 == this.__endian
? (d << 24) | (c << 16) | (b << 8) | a
: (a << 24) | (b << 16) | (c << 8) | d;
},
readMultiByte: function (a, b) {
return this.readUTFBytes(a);
},
readObject: function () {
switch (this.objectEncoding) {
case 10:
var a = this.readUTF();
return Ke.run(a);
case 12:
return (a = this.readUTF()), JSON.parse(a);
default:
return null;
}
},
readShort: function () {
var a = this.readUnsignedByte(),
b = this.readUnsignedByte();
a = 1 == this.__endian ? (b << 8) | a : (a << 8) | b;
return 0 != (a & 32768) ? a - 65536 : a;
},
readUnsignedByte: function () {
if (this.position < this.length) return this.b[this.position++];
throw M.thrown(new fh());
},
readUnsignedInt: function () {
var a = this.readUnsignedByte(),
b = this.readUnsignedByte(),
c = this.readUnsignedByte(),
d = this.readUnsignedByte();
return 1 == this.__endian
? (d << 24) | (c << 16) | (b << 8) | a
: (a << 24) | (b << 16) | (c << 8) | d;
},
readUnsignedShort: function () {
var a = this.readUnsignedByte(),
b = this.readUnsignedByte();
return 1 == this.__endian ? (b << 8) + a : (a << 8) | b;
},
readUTF: function () {
var a = this.readUnsignedShort();
return this.readUTFBytes(a);
},
readUTFBytes: function (a) {
if (this.position + a > this.length) throw M.thrown(new fh());
this.position += a;
return this.getString(this.position - a, a);
},
uncompress: function (a) {
null == a && (a = 2);
if (this.__length > this.length) {
var b = this.length;
this.length = this.__length;
var c = new hb(new ArrayBuffer(b));
c.blit(0, this, 0, b);
this.b = c.b;
this.__length = c.length;
this.data = c.data;
this.length = b;
}
switch (a) {
case 0:
a = kc.decompress(this, ae.DEFLATE);
break;
case 1:
a = kc.decompress(this, ae.LZMA);
break;
default:
a = kc.decompress(this, ae.ZLIB);
}
null != a &&
((this.b = a.b),
(this.__length = a.length),
(this.data = a.data),
(this.length = this.__length));
this.position = 0;
},
writeBoolean: function (a) {
this.writeByte(a ? 1 : 0);
},
writeByte: function (a) {
this.__resize(this.position + 1);
this.b[this.position++] = a & 255;
},
writeBytes: function (a, b, c) {
null == c && (c = 0);
null == b && (b = 0);
0 != zb.get_length(a) &&
(0 == c && (c = zb.get_length(a) - b),
this.__resize(this.position + c),
this.blit(this.position, a, b, c),
(this.position += c));
},
writeDouble: function (a) {
a = Zd.doubleToI64(a);
1 == this.__endian
? (this.writeInt(a.low), this.writeInt(a.high))
: (this.writeInt(a.high), this.writeInt(a.low));
},
writeFloat: function (a) {
1 == this.__endian
? (this.__resize(this.position + 4),
this.setFloat(this.position, a),
(this.position += 4))
: ((a = Zd.floatToI32(a)), this.writeInt(a));
},
writeInt: function (a) {
this.__resize(this.position + 4);
1 == this.__endian
? ((this.b[this.position++] = a & 255),
(this.b[this.position++] = (a >> 8) & 255),
(this.b[this.position++] = (a >> 16) & 255),
(this.b[this.position++] = (a >> 24) & 255))
: ((this.b[this.position++] = (a >> 24) & 255),
(this.b[this.position++] = (a >> 16) & 255),
(this.b[this.position++] = (a >> 8) & 255),
(this.b[this.position++] = a & 255));
},
writeMultiByte: function (a, b) {
this.writeUTFBytes(a);
},
writeObject: function (a) {
switch (this.objectEncoding) {
case 10:
a = Be.run(a);
this.writeUTF(a);
break;
case 12:
(a = JSON.stringify(a)), this.writeUTF(a);
}
},
writeShort: function (a) {
this.__resize(this.position + 2);
1 == this.__endian
? ((this.b[this.position++] = a & 255), (this.b[this.position++] = (a >> 8) & 255))
: ((this.b[this.position++] = (a >> 8) & 255), (this.b[this.position++] = a & 255));
},
writeUnsignedInt: function (a) {
this.writeInt(a);
},
writeUTF: function (a) {
a = hb.ofString(a);
this.writeShort(a.length);
this.writeBytes(zb.fromBytes(a));
},
writeUTFBytes: function (a) {
a = hb.ofString(a);
this.writeBytes(zb.fromBytes(a));
},
__fromBytes: function (a) {
this.b = a.b;
this.__length = a.length;
this.data = a.data;
this.length = a.length;
},
__resize: function (a) {
if (a > this.__length) {
var b = new hb(new ArrayBuffer((3 * (a + 1)) >> 1));
if (0 < this.__length) {
var c = this.length;
this.length = this.__length;
b.blit(0, this, 0, this.__length);
this.length = c;
}
this.b = b.b;
this.__length = b.length;
this.data = b.data;
}
this.length < a && (this.length = a);
},
__setData: function (a) {
this.b = a.b;
this.__length = a.length;
this.data = a.data;
},
get_bytesAvailable: function () {
return this.length - this.position;
},
get_endian: function () {
return this.__endian;
},
set_endian: function (a) {
return (this.__endian = a);
},
__class__: pc,
__properties__: {
set_endian: 'set_endian',
get_endian: 'get_endian',
get_bytesAvailable: 'get_bytesAvailable'
}
});
var px = {
exists: function (a, b) {
return a.exists(b);
},
get: function (a, b) {
return a.get(b);
},
keyValueIterator: function (a) {
return a.keyValueIterator();
},
remove: function (a, b) {
return a.remove(b);
},
set: function (a, b, c) {
a.set(b, c);
return c;
},
iterator: function (a) {
return a.keys();
},
each: function (a) {
return a.iterator();
},
toStringMap: function (a, b) {
return new qa();
},
toIntMap: function (a, b) {
return new Za();
},
toFloatMap: function (a, b) {
return new fj();
},
toEnumValueMapMap: function (a, b) {
return new Nj();
},
toObjectMap: function (a, b) {
return new Jc();
},
toUtilsObjectMap: function (a, b) {
return new gj();
},
toClassMap: function (a, b) {
return new hj();
},
fromStringMap: function (a) {
return a;
},
fromIntMap: function (a) {
return a;
},
fromFloatMap: function (a) {
return a;
},
fromObjectMap: function (a) {
return a;
},
fromUtilsObjectMap: function (a) {
return a;
},
fromClassMap: function (a) {
return a;
}
},
hj = function () {
this.types = new qa();
this.values = new qa();
};
h['openfl.utils._Dictionary.ClassMap'] = hj;
hj.__name__ = 'openfl.utils._Dictionary.ClassMap';
hj.__interfaces__ = [ed];
hj.prototype = {
types: null,
values: null,
clear: function () {
this.types.h = Object.create(null);
this.values.h = Object.create(null);
},
copy: function () {
for (var a = new hj(), b = this.keys(); b.hasNext(); ) {
var c = b.next();
a.set(c, this.get(c));
}
return a;
},
exists: function (a) {
return Object.prototype.hasOwnProperty.call(this.types.h, a.__name__);
},
get: function (a) {
return this.values.h[a.__name__];
},
keyValueIterator: function () {
return new ih(this);
},
keys: function () {
return new Ci(this.types.h);
},
iterator: function () {
return new Ci(this.values.h);
},
remove: function (a) {
a = a.__name__;
var b = this.types;
Object.prototype.hasOwnProperty.call(b.h, a) ? (delete b.h[a], (b = !0)) : (b = !1);
if (b) return !0;
b = this.values;
return Object.prototype.hasOwnProperty.call(b.h, a) ? (delete b.h[a], !0) : !1;
},
set: function (a, b) {
var c = a.__name__;
this.types.h[c] = a;
this.values.h[c] = b;
},
toString: function () {
return qa.stringify(this.values.h);
},
__class__: hj
};
var fj = function () {
this.floatKeys = [];
this.values = [];
};
h['openfl.utils._Dictionary.FloatMap'] = fj;
fj.__name__ = 'openfl.utils._Dictionary.FloatMap';
fj.__interfaces__ = [ed];
fj.prototype = {
floatKeys: null,
values: null,
clear: function () {
this.floatKeys = [];
this.values = [];
},
copy: function () {
for (var a = new fj(), b = this.keys(); b.hasNext(); ) {
var c = b.next();
a.set(c, this.get(c));
}
return a;
},
exists: function (a) {
return -1 < this.indexOf(a);
},
get: function (a) {
a = this.indexOf(a);
return -1 < a ? this.values[a] : null;
},
keyValueIterator: function () {
return new ih(this);
},
keys: function () {
return new Me(this.floatKeys.slice());
},
iterator: function () {
return new Me(this.values.slice());
},
remove: function (a) {
a = this.indexOf(a);
return -1 < a ? (this.floatKeys.splice(a, 1), this.values.splice(a, 1), !0) : !1;
},
set: function (a, b) {
this.insertSorted(a, b);
},
indexOf: function (a) {
var b = this.floatKeys.length,
c = 0,
d = b - 1;
if (0 == b) return -1;
for (; c < d; ) {
b = Math.floor((c + d) / 2);
if (this.floatKeys[b] == a) return b;
this.floatKeys[b] > a ? (d = b - 1) : (c = b + 1);
}
return this.floatKeys[c] == a ? c : -1;
},
insertSorted: function (a, b) {
var c = this.floatKeys.length,
d = 0,
f = c - 1;
if (0 == c) this.floatKeys.push(a), this.values.push(b);
else {
for (; d < f; ) {
c = Math.floor((d + f) / 2);
if (this.floatKeys[c] == a) {
this.values[c] = b;
return;
}
this.floatKeys[c] > a ? (f = c - 1) : (d = c + 1);
}
this.floatKeys[d] > a
? (this.floatKeys.splice(d, 0, a), this.values.splice(d, 0, b))
: this.floatKeys[d] < a
? (this.floatKeys.splice(d + 1, 0, a), this.values.splice(d + 1, 0, b))
: (this.values[d] = b);
}
},
toString: function () {
return this.values.toString();
},
__class__: fj
};
var gj = function () {
this.map = new Jc();
};
h['openfl.utils._Dictionary.UtilsObjectMap'] = gj;
gj.__name__ = 'openfl.utils._Dictionary.UtilsObjectMap';
gj.__interfaces__ = [ed];
gj.prototype = {
map: null,
clear: function () {
this.map.h = { __keys__: {} };
},
copy: function () {
for (var a = new gj(), b = this.keys(); b.hasNext(); ) {
var c = b.next();
a.set(c, this.get(c));
}
return a;
},
exists: function (a) {
return null != this.map.h.__keys__[a.__id__];
},
get: function (a) {
return this.map.h[a.__id__];
},
keyValueIterator: function () {
return new ih(this);
},
keys: function () {
return this.map.keys();
},
iterator: function () {
return this.map.iterator();
},
remove: function (a) {
return this.map.remove(a);
},
set: function (a, b) {
this.map.set(a, b);
},
toString: function () {
return this.map.toString();
},
__class__: gj
};
var Tw = {
fromLimeEndian: function (a) {
switch (a._hx_index) {
case 0:
return 1;
case 1:
return 0;
}
},
fromString: function (a) {
switch (a) {
case 'bigEndian':
return 0;
case 'littleEndian':
return 1;
default:
return null;
}
},
toLimeEndian: function (a) {
switch (a) {
case 0:
return Bg.BIG_ENDIAN;
case 1:
return Bg.LITTLE_ENDIAN;
default:
return null;
}
},
toString: function (a) {
switch (a) {
case 0:
return 'bigEndian';
case 1:
return 'littleEndian';
default:
return null;
}
}
},
rn = function () {};
h['haxe.lang.Iterator'] = rn;
rn.__name__ = 'haxe.lang.Iterator';
rn.__isInterface__ = !0;
rn.prototype = { hasNext: null, next: null, __class__: rn };
var sn = function () {};
h['haxe.lang.Iterable'] = sn;
sn.__name__ = 'haxe.lang.Iterable';
sn.__isInterface__ = !0;
sn.prototype = { iterator: null, __class__: sn };
var Dc = function () {};
h['openfl.utils._internal.Lib'] = Dc;
Dc.__name__ = 'openfl.utils._internal.Lib';
Dc.notImplemented = function (a) {
var b = a.className + '.' + a.methodName;
Object.prototype.hasOwnProperty.call(Dc.__sentWarnings.h, b) ||
((Dc.__sentWarnings.h[b] = !0), Xa.warn(a.methodName + ' is not implemented', a));
};
var fi = function () {
this.rollOutStack = [];
};
h['openfl.utils._internal.TouchData'] = fi;
fi.__name__ = 'openfl.utils._internal.TouchData';
fi.prototype = {
rollOutStack: null,
touch: null,
touchDownTarget: null,
touchOverTarget: null,
reset: function () {
this.touchOverTarget = this.touchDownTarget = this.touch = null;
this.rollOutStack.splice(0, this.rollOutStack.length);
},
__class__: fi
};
var rg = function () {};
h['polygonal.ds.Cloneable'] = rg;
rg.__name__ = 'polygonal.ds.Cloneable';
rg.__isInterface__ = !0;
rg.prototype = { clone: null, __class__: rg };
var tn = function () {};
h['polygonal.ds.Hashable'] = tn;
tn.__name__ = 'polygonal.ds.Hashable';
tn.__isInterface__ = !0;
tn.prototype = { key: null, __class__: tn };
var ij = function () {};
h['polygonal.ds.Collection'] = ij;
ij.__name__ = 'polygonal.ds.Collection';
ij.__isInterface__ = !0;
ij.__interfaces__ = [tn];
ij.prototype = {
get_size: null,
free: null,
contains: null,
remove: null,
clear: null,
iterator: null,
isEmpty: null,
toArray: null,
clone: null,
__class__: ij,
__properties__: { get_size: 'get_size' }
};
var sg = function () {};
h['polygonal.ds.HashKey'] = sg;
sg.__name__ = 'polygonal.ds.HashKey';
sg.next = function () {
null == sg._counter && (sg._counter = 0);
Ea._assert(sg._counter < sg._counter + 1, '_counter < _counter + 1', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashKey.hx',
lineNumber: 44,
className: 'polygonal.ds.HashKey',
methodName: 'next'
});
return sg._counter++;
};
var mi = function () {};
h['polygonal.ds.Map'] = mi;
mi.__name__ = 'polygonal.ds.Map';
mi.__isInterface__ = !0;
mi.__interfaces__ = [ij];
mi.prototype = {
has: null,
hasKey: null,
get: null,
set: null,
unset: null,
remap: null,
toValSet: null,
toKeySet: null,
keys: null,
__class__: mi
};
var un = function (a, b) {
null == b && (b = -1);
this.mTmpKeyBuffer = [];
this.mTmpIntBuffer = [];
this.mIterator = null;
this.mFree = this.mSize = 0;
this.reuseIterator = !1;
this.key = sg.next();
Ea._assert(0 < a, 'slotCount > 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx',
lineNumber: 158,
className: 'polygonal.ds.HashTable',
methodName: 'new'
});
-1 == b && (b = a);
2 > b && (b = 2);
this.mMinCapacity = this.capacity = b;
this.mH = new tg(a, this.capacity);
this.mKeys = Array(this.capacity);
this.mVals = Array(this.capacity);
a = this.mNext = Array(this.capacity);
b = 0;
for (var c = this.capacity - 1; b < c; ) {
var d = b++;
a[d] = d + 1;
}
a[this.capacity - 1] = -1;
};
h['polygonal.ds.HashTable'] = un;
un.__name__ = 'polygonal.ds.HashTable';
un.__interfaces__ = [mi];
un.prototype = {
key: null,
capacity: null,
get_loadFactor: function () {
return this.mH.get_loadFactor();
},
get_slotCount: function () {
return this.mH.slotCount;
},
reuseIterator: null,
get_growthRate: function () {
return this.mH.growthRate;
},
set_growthRate: function (a) {
return (this.mH.growthRate = a);
},
mH: null,
mKeys: null,
mVals: null,
mNext: null,
mFree: null,
mSize: null,
mMinCapacity: null,
mIterator: null,
mTmpIntBuffer: null,
mTmpKeyBuffer: null,
getCollisionCount: function () {
return this.mH.getCollisionCount();
},
getFront: function (a) {
var b = this.mH;
a = a.key;
var c = (73856093 * a) & b.mMask,
d = b.mHash[c];
if (-1 == d) b = -2147483648;
else {
var f = b.mData;
if (f[d] == a) b = f[d + 1];
else {
var g = -2147483648,
k = d,
l = k;
for (d = f[d + 2]; -1 != d; ) {
if (f[d] == a) {
g = f[d + 1];
f[l + 2] = f[d + 2];
f[d + 2] = k;
b.mHash[c] = d;
break;
}
l = d;
d = f[l + 2];
}
b = g;
}
}
return -2147483648 == b ? null : this.mVals[b];
},
setIfAbsent: function (a, b) {
Ea._assert(null != a, 'key != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx',
lineNumber: 210,
className: 'polygonal.ds.HashTable',
methodName: 'setIfAbsent'
});
this.mSize == this.capacity && this.grow();
var c = this.mFree,
d = this.mH,
f = a.key;
Ea._assert(-2147483648 != c, 'val 0x80000000 is reserved(val != KEY_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 291,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'setIfAbsent'
});
var g = (73856093 * f) & d.mMask,
k = d.mData,
l = d.mHash[g];
if (-1 == l) {
d.mSize == d.capacity && (d.grow(), (k = d.mData));
var h = 3 * d.mFree;
d.mFree = d.mNext[d.mFree];
d.mHash[g] = h;
k[h] = f;
k[h + 1] = c;
d.mSize++;
d = !0;
} else if (k[l] == f) d = !1;
else {
for (g = k[l + 2]; -1 != g; ) {
if (k[g] == f) {
l = -1;
break;
}
l = g;
g = k[l + 2];
}
-1 == l
? (d = !1)
: (d.mSize == d.capacity && (d.grow(), (k = d.mData)),
(h = 3 * d.mFree),
(d.mFree = d.mNext[d.mFree]),
(k[l + 2] = h),
(k[h] = f),
(k[h + 1] = c),
d.mSize++,
(d = !0));
}
return d
? ((this.mVals[c] = b),
(this.mKeys[c] = a),
(this.mFree = this.mNext[c]),
this.mSize++,
!0)
: !1;
},
rehash: function (a) {
this.mH.rehash(a);
return this;
},
remap: function (a, b) {
Ea._assert(null != a, 'key != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx',
lineNumber: 244,
className: 'polygonal.ds.HashTable',
methodName: 'remap'
});
var c = this.mH;
a = a.key;
var d = c.mHash[(73856093 * a) & c.mMask];
if (-1 == d) a = -2147483648;
else if (((c = c.mData), c[d] == a)) a = c[d + 1];
else {
var f = -2147483648;
for (d = c[d + 2]; -1 != d; ) {
if (c[d] == a) {
f = c[d + 1];
break;
}
d = c[d + 2];
}
a = f;
}
return -2147483648 != a ? ((this.mVals[a] = b), !0) : !1;
},
toKeyArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <= a, 'len >= 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 37,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'alloc'
});
a = Array(a);
for (var b = 0, c = this.mKeys, d, f = 0, g = this.capacity; f < g; )
(d = f++), (d = c[d]), null != d && (a[b++] = d);
return a;
},
pack: function () {
this.mH.pack();
if (this.mH.capacity == this.capacity) return this;
this.capacity = this.mH.capacity;
for (var a = (this.mNext = Array(this.capacity)), b = 0, c = this.capacity - 1; b < c; ) {
var d = b++;
a[d] = d + 1;
}
a[this.capacity - 1] = -1;
this.mFree = 0;
b = this.mKeys;
a = Array(this.capacity);
c = this.mVals;
var f = Array(this.capacity),
g = this.mFree;
for (d = this.mH.iterator(); d.hasNext(); ) {
var k = d.next();
a[g] = b[k];
f[g] = c[k];
g = this.mNext[g];
}
this.mFree = g;
this.mKeys = a;
this.mVals = f;
b = 0;
for (c = this.mSize; b < c; )
if (
((d = b++),
(g = this.mH),
(f = a[d].key),
(k = g.mHash[(73856093 * f) & g.mMask]),
-1 != k)
)
if (((g = g.mData), g[k] == f)) g[k + 1] = d;
else
for (k = g[k + 2]; -1 != k; ) {
if (g[k] == f) {
g[k + 1] = d;
break;
}
k = g[k + 2];
}
return this;
},
iter: function (a) {
Ea._assert(null != a, 'f != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx',
lineNumber: 322,
className: 'polygonal.ds.HashTable',
methodName: 'iter'
});
for (
var b = this.mH.mData, c = this.mVals, d = this.mKeys, f, g = 0, k = this.mH.capacity;
g < k;
)
(f = g++), (f = b[3 * f + 1]), -2147483648 != f && a(d[f], c[f]);
return this;
},
toString: function () {
var a =
'' +
B.string(
fb.format(
'[ HashTable size=' + this.mSize + ' capacity=' + this.capacity + ' load=%.2f',
[this.get_loadFactor()]
)
);
if (0 == this.mSize) return a + ' ]';
a += '\n';
for (var b = 0, c = this.keys(); c.hasNext(); ) {
var d = c.next(),
f = B.string(d).length;
b <= f && (b = f);
}
f = [];
b = ' %- ' + b + 's -> %s\n';
var g = [];
for (c = this.keys(); c.hasNext(); ) (d = c.next()), g.push(d);
g.sort(function (a, b) {
return a.key - b.key;
});
var k = 1,
l = g.length;
c = 0;
for (d = 1; k < l; ) {
if (g[c] == g[k]) ++d;
else {
c = g[c];
f[0] = c;
if (1 < d) (d = []), this.getAll(c, d), (f[1] = d.join(','));
else {
Ea._assert(null != c, 'key != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx',
lineNumber: 449,
className: 'polygonal.ds.HashTable',
methodName: 'get'
});
var h = this.mH;
d = c.key;
c = h.mHash[(73856093 * d) & h.mMask];
if (-1 == c) c = -2147483648;
else if (((h = h.mData), h[c] == d)) c = h[c + 1];
else {
var n = -2147483648;
for (c = h[c + 2]; -1 != c; ) {
if (h[c] == d) {
n = h[c + 1];
break;
}
c = h[c + 2];
}
c = n;
}
f[1] = B.string(-2147483648 == c ? null : this.mVals[c]);
}
a += B.string(fb.format(b, f));
c = k;
d = 1;
}
++k;
}
c = g[c];
f[0] = c;
if (1 < d) (d = []), this.getAll(c, d), (f[1] = d.join(','));
else {
Ea._assert(null != c, 'key != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx',
lineNumber: 449,
className: 'polygonal.ds.HashTable',
methodName: 'get'
});
h = this.mH;
d = c.key;
k = h.mHash[(73856093 * d) & h.mMask];
if (-1 == k) c = -2147483648;
else if (((h = h.mData), h[k] == d)) c = h[k + 1];
else {
n = -2147483648;
for (k = h[k + 2]; -1 != k; ) {
if (h[k] == d) {
n = h[k + 1];
break;
}
k = h[k + 2];
}
c = n;
}
f[1] = B.string(-2147483648 == c ? null : this.mVals[c]);
}
a += B.string(fb.format(b, f));
return a + ']';
},
grow: function () {
var a = this.capacity;
this.capacity = Hg.compute(this.get_growthRate(), this.capacity);
var b = Array(this.capacity);
Kb.blit(this.mNext, 0, b, 0, a);
b = this.mNext = b;
for (var c = a - 1, d = this.capacity - 1; c < d; ) {
var f = c++;
b[f] = f + 1;
}
b[this.capacity - 1] = -1;
this.mFree = a;
b = Array(this.capacity);
Kb.blit(this.mVals, 0, b, 0, a);
this.mVals = b;
b = Array(this.capacity);
Kb.blit(this.mKeys, 0, b, 0, a);
this.mKeys = b;
},
has: function (a) {
for (var b = this.mKeys, c = this.mVals, d = 0, f = this.capacity; d < f; ) {
var g = d++;
if (null != b[g] && c[g] == a) return !0;
}
return !1;
},
hasKey: function (a) {
Ea._assert(null != a, 'key != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx',
lineNumber: 439,
className: 'polygonal.ds.HashTable',
methodName: 'hasKey'
});
var b = this.mH;
a = a.key;
var c = b.mHash[(73856093 * a) & b.mMask];
if (-1 == c) return !1;
b = b.mData;
if (b[c] == a) return !0;
var d = !1;
for (c = b[c + 2]; -1 != c; ) {
if (b[c] == a) {
d = !0;
break;
}
c = b[c + 2];
}
return d;
},
get: function (a) {
Ea._assert(null != a, 'key != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx',
lineNumber: 449,
className: 'polygonal.ds.HashTable',
methodName: 'get'
});
var b = this.mH;
a = a.key;
var c = b.mHash[(73856093 * a) & b.mMask];
if (-1 == c) a = -2147483648;
else if (((b = b.mData), b[c] == a)) a = b[c + 1];
else {
var d = -2147483648;
for (c = b[c + 2]; -1 != c; ) {
if (b[c] == a) {
d = b[c + 1];
break;
}
c = b[c + 2];
}
a = d;
}
return -2147483648 == a ? null : this.mVals[a];
},
getAll: function (a, b) {
var c = this.mH,
d = a.key,
f = c.mHash[(73856093 * d) & c.mMask];
if (-1 == f) c = -2147483648;
else {
var g = c.mData;
if (g[f] == d) c = g[f + 1];
else
for (c = -2147483648, f = g[f + 2]; -1 != f; ) {
if (g[f] == d) {
c = g[f + 1];
break;
}
f = g[f + 2];
}
}
if (-2147483648 == c) return 0;
d = this.mTmpIntBuffer;
a = this.mH.getAll(a.key, d);
c = this.mVals;
for (f = 0; f < a; ) (g = f++), (b[g] = c[d[g]]);
return a;
},
set: function (a, b) {
Ea._assert(null != a, 'key != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx',
lineNumber: 483,
className: 'polygonal.ds.HashTable',
methodName: 'set'
});
this.mSize == this.capacity && this.grow();
var c = this.mFree,
d = this.mH,
f = a.key;
Ea._assert(-2147483648 != c, 'val 0x80000000 is reserved(val != KEY_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 1046,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'set'
});
d.mSize == d.capacity && d.grow();
var g = d.mData,
k = d.mHash,
l = 3 * d.mFree;
d.mFree = d.mNext[d.mFree];
g[l] = f;
g[l + 1] = c;
var h = (73856093 * f) & d.mMask,
n = k[h];
if (-1 == n) (k[h] = l), d.mSize++, (d = !0);
else {
k = g[n] != f;
for (h = g[n + 2]; -1 != h; ) g[h] == f && (k = !1), (n = h), (h = g[h + 2]);
g[n + 2] = l;
d.mSize++;
d = k;
}
this.mVals[c] = b;
this.mKeys[c] = a;
this.mFree = this.mNext[c];
this.mSize++;
return d;
},
unset: function (a) {
var b = this.mH,
c = a.key,
d = b.mHash[(73856093 * c) & b.mMask];
if (-1 == d) d = -2147483648;
else {
var f = b.mData;
if (f[d] == c) d = f[d + 1];
else {
b = -2147483648;
for (d = f[d + 2]; -1 != d; ) {
if (f[d] == c) {
b = f[d + 1];
break;
}
d = f[d + 2];
}
d = b;
}
}
if (-2147483648 == d) return !1;
this.mKeys[d] = null;
this.mNext[d] = this.mFree;
this.mFree = d;
b = this.mH;
c = a.key;
a = (73856093 * c) & b.mMask;
var g = b.mHash;
d = g[a];
if (-1 != d)
if (((f = b.mData), c == f[d]))
(g[a] = -1 == f[d + 2] ? -1 : f[d + 2]),
(c = (d / 3) | 0),
(b.mNext[c] = b.mFree),
(b.mFree = c),
(f[d + 1] = -2147483648),
(f[d + 2] = -1),
b.mSize--;
else {
a = !1;
g = d;
for (d = f[d + 2]; -1 != d; ) {
if (f[d] == c) {
a = !0;
break;
}
g = d;
d = f[g + 2];
}
a &&
((f[g + 2] = f[d + 2]),
(c = (d / 3) | 0),
(b.mNext[c] = b.mFree),
(b.mFree = c),
(f[d + 1] = -2147483648),
(f[d + 2] = -1),
b.mSize--);
}
this.mSize--;
return !0;
},
toValSet: function () {
for (
var a = new ni(), b = this.mKeys, c = this.mVals, d = 0, f = this.capacity;
d < f;
) {
var g = d++;
null != b[g] && a.set(c[g]);
}
return a;
},
toKeySet: function () {
for (var a = new ni(), b = this.mKeys, c, d = 0, f = this.capacity; d < f; )
(c = d++), (c = b[c]), null != c && a.set(c);
return a;
},
keys: function () {
return new vn(this);
},
get_size: function () {
return this.mSize;
},
free: function () {
Kb.nullify(this.mVals);
this.mVals = null;
Kb.nullify(this.mKeys);
this.mNext = this.mKeys = null;
this.mH.free();
this.mH = null;
null != this.mIterator && (this.mIterator.free(), (this.mIterator = null));
this.mTmpKeyBuffer = this.mTmpIntBuffer = null;
},
contains: function (a) {
return this.has(a);
},
remove: function (a) {
for (
var b = this.mTmpKeyBuffer,
c = this.mKeys,
d = this.mVals,
f,
g = 0,
k = 0,
l = this.capacity;
k < l;
) {
var h = k++;
f = c[h];
null != f && d[h] == a && (b[g++] = f);
}
k = 0;
for (l = g; k < l; ) (h = k++), this.unset(b[h]), (b[h] = null);
return 0 < g;
},
clear: function (a) {
null == a && (a = !1);
this.mH.clear(a);
Kb.init(this.mKeys, null, 0, this.capacity);
Kb.init(this.mVals, null, 0, this.capacity);
a = this.mNext;
for (var b = 0, c = this.capacity - 1; b < c; ) {
var d = b++;
a[d] = d + 1;
}
a[this.capacity - 1] = -1;
this.mSize = this.mFree = 0;
},
iterator: function () {
return this.reuseIterator
? (null == this.mIterator ? (this.mIterator = new kk(this)) : this.mIterator.reset(),
this.mIterator)
: new kk(this);
},
isEmpty: function () {
return 0 == this.mSize;
},
toArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <= a, 'len >= 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 37,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'alloc'
});
a = Array(a);
for (var b = 0, c = this.mKeys, d = this.mVals, f = 0, g = this.capacity; f < g; ) {
var k = f++;
null != c[k] && (a[b++] = d[k]);
}
return a;
},
clone: function (a, b) {
null == a && (a = !0);
var c = new un(this.mH.slotCount, this.mSize);
c.mH = this.mH.clone();
c.mSize = this.mSize;
c.mFree = this.mFree;
var d = this.mVals,
f = c.mVals,
g = this.mKeys;
Kb.blit(g, 0, c.mKeys, 0, this.mSize);
if (a) Kb.blit(d, 0, f, 0, this.mSize);
else if (null != b) {
a = 0;
for (var k = this.mSize; a < k; ) {
var l = a++;
f[l] = null != g[l] ? b(d[l]) : null;
}
} else
for (a = 0, k = this.mSize; a < k; )
(l = a++),
null != g[l]
? (Ea._assert(
x.__implements(d[l], rg),
'element is not of type Cloneable(Std.isOfType(srcVals.get(i), Cloneable))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx',
lineNumber: 735,
className: 'polygonal.ds.HashTable',
methodName: 'clone'
}
),
(f[l] = x.__cast(d[l], rg).clone()))
: (f[l] = null);
Kb.blit(this.mNext, 0, c.mNext, 0, this.mSize);
return c;
},
__class__: un,
__properties__: {
get_size: 'get_size',
set_growthRate: 'set_growthRate',
get_growthRate: 'get_growthRate',
get_slotCount: 'get_slotCount',
get_loadFactor: 'get_loadFactor'
}
};
var Ig = function () {};
h['polygonal.ds.Itr'] = Ig;
Ig.__name__ = 'polygonal.ds.Itr';
Ig.__isInterface__ = !0;
Ig.prototype = {
hasNext: null,
next: null,
remove: null,
reset: null,
__class__: Ig
};
var vn = function (a) {
this.mObject = a;
this.reset();
};
h['polygonal.ds.HashTableKeyIterator'] = vn;
vn.__name__ = 'polygonal.ds.HashTableKeyIterator';
vn.__interfaces__ = [Ig];
vn.prototype = {
mObject: null,
mKeys: null,
mI: null,
mS: null,
free: function () {
this.mKeys = this.mObject = null;
},
reset: function () {
this.mKeys = this.mObject.mKeys;
this.mS = this.mObject.mH.capacity;
for (this.mI = 0; this.mI < this.mS && null == this.mKeys[this.mI]; ) this.mI++;
return this;
},
hasNext: function () {
return this.mI < this.mS;
},
next: function () {
for (var a = this.mKeys[this.mI]; ++this.mI < this.mS && null == this.mKeys[this.mI]; );
return a;
},
remove: function () {
throw M.thrown('unsupported operation');
},
__class__: vn
};
var kk = function (a) {
this.mObject = a;
this.reset();
};
h['polygonal.ds.HashTableValIterator'] = kk;
kk.__name__ = 'polygonal.ds.HashTableValIterator';
kk.__interfaces__ = [Ig];
kk.prototype = {
mObject: null,
mKeys: null,
mVals: null,
mI: null,
mS: null,
free: function () {
this.mVals = this.mKeys = this.mObject = null;
},
reset: function () {
this.mVals = this.mObject.mVals;
this.mKeys = this.mObject.mKeys;
this.mS = this.mObject.mH.capacity;
for (this.mI = 0; this.mI < this.mS && null == this.mKeys[this.mI]; ) this.mI++;
return this;
},
hasNext: function () {
return this.mI < this.mS;
},
next: function () {
for (var a = this.mVals[this.mI]; ++this.mI < this.mS && null == this.mKeys[this.mI]; );
return a;
},
remove: function () {
throw M.thrown('unsupported operation');
},
__class__: kk
};
var jj = function () {};
h['polygonal.ds.Set'] = jj;
jj.__name__ = 'polygonal.ds.html';
jj.__isInterface__ = !0;
jj.__interfaces__ = [ij];
jj.prototype = { has: null, set: null, unset: null, __class__: jj };
var Jg = function (a, b) {
null == b && (b = -1);
this.mFree = this.mSize = 0;
this.reuseIterator = !1;
this.growthRate = -3;
this.key = sg.next();
Ea._assert(0 < a, 'slotCount > 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx',
lineNumber: 138,
className: 'polygonal.ds.IntHashSet',
methodName: 'new'
});
Ea._assert(
0 < a && 0 == (a & (a - 1)),
'slotCount is not a power of 2(MathTools.isPow2(slotCount))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx',
lineNumber: 139,
className: 'polygonal.ds.IntHashSet',
methodName: 'new'
}
);
-1 == b && (b = a);
2 > b && (b = 2);
this.mMinCapacity = this.capacity = b;
this.slotCount = a;
this.mMask = a - 1;
this.mHash = Kb.init(Array(a), -1);
this.mData = Array(this.capacity << 1);
this.mNext = Array(this.capacity);
var c = 1;
a = this.mData;
b = 0;
for (var d = this.capacity; b < d; ) b++, (a[c - 1] = -2147483648), (a[c] = -1), (c += 2);
a = this.mNext;
b = 0;
for (d = this.capacity - 1; b < d; ) (c = b++), (a[c] = c + 1);
a[this.capacity - 1] = -1;
};
h['polygonal.ds.IntHashSet'] = Jg;
Jg.__name__ = 'polygonal.ds.IntHashSet';
Jg.__interfaces__ = [jj];
Jg.prototype = {
key: null,
capacity: null,
growthRate: null,
reuseIterator: null,
get_loadFactor: function () {
return this.mSize / this.slotCount;
},
slotCount: null,
mHash: null,
mData: null,
mNext: null,
mMask: null,
mFree: null,
mSize: null,
mMinCapacity: null,
mIterator: null,
getCollisionCount: function () {
for (var a = 0, b, c = this.mData, d = this.mHash, f = 0, g = this.slotCount; f < g; )
if (((b = f++), (b = d[b]), -1 != b)) for (b = c[b + 1]; -1 != b; ) (b = c[b + 1]), ++a;
return a;
},
hasFront: function (a) {
Ea._assert(-2147483648 != a, 'value 0x80000000 is reserved(val != VAL_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx',
lineNumber: 203,
className: 'polygonal.ds.IntHashSet',
methodName: 'hasFront'
});
var b = (73856093 * a) & this.mMask,
c = this.mHash[b];
if (-1 == c) return !1;
var d = this.mData;
if (d[c] == a) return !0;
var f = !1,
g = c,
k = g;
for (c = d[c + 1]; -1 != c; ) {
if (d[c] == a) {
d[k + 1] = d[c + 1];
d[c + 1] = g;
d[b] = c;
f = !0;
break;
}
k = c;
c = d[k + 1];
}
return f;
},
rehash: function (a) {
Ea._assert(
0 < a && 0 == (a & (a - 1)),
'slotCount is not a power of 2(MathTools.isPow2(slotCount))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx',
lineNumber: 270,
className: 'polygonal.ds.IntHashSet',
methodName: 'rehash'
}
);
if (this.slotCount == a) return this;
for (
var b = new Jg(a, this.capacity), c = this.mData, d = 0, f = this.capacity;
d < f;
) {
var g = d++;
g = c[g << 1];
if (-2147483648 != g) {
Ea._assert(-2147483648 != g, 'value 0x80000000 is reserved(val != VAL_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx',
lineNumber: 521,
className: 'polygonal.ds.IntHashSet',
methodName: 'set'
});
var k = (73856093 * g) & b.mMask,
l = b.mData,
h = b.mHash[k];
if (-1 == h)
b.mSize == b.capacity && (b.grow(), (l = b.mData)),
(h = b.mFree << 1),
(b.mFree = b.mNext[b.mFree]),
(b.mHash[k] = h),
(l[h] = g),
b.mSize++;
else if (l[h] != g) {
for (k = l[h + 1]; -1 != k; ) {
if (l[k] == g) {
h = -1;
break;
}
h = k;
k = l[k + 1];
}
-1 != h &&
(b.mSize == b.capacity && (b.grow(), (l = b.mData)),
(k = b.mFree << 1),
(b.mFree = b.mNext[b.mFree]),
(l[k] = g),
(l[h + 1] = k),
b.mSize++);
}
}
}
this.mHash = b.mHash;
this.mData = b.mData;
this.mNext = b.mNext;
this.slotCount = a;
this.mMask = b.mMask;
this.mFree = b.mFree;
return this;
},
pack: function () {
if (this.capacity == this.mMinCapacity) return this;
var a = this.mSize,
b = this.mMinCapacity;
this.capacity = a > b ? a : b;
var c = this.mData,
d = 0,
f = this.mHash,
g = Array(this.capacity << 1);
a = 0;
for (b = this.slotCount; a < b; ) {
var k = a++;
var l = f[k];
if (-1 != l)
for (f[k] = d, g[d++] = c[l], g[d++] = -1, l = c[l + 1]; -1 != l; )
(g[d - 1] = d), (g[d++] = c[l]), (g[d++] = -1), (l = c[l + 1]);
}
this.mData = g;
c = this.mNext = Array(this.capacity);
a = 0;
for (b = this.capacity - 1; a < b; ) (k = a++), (c[k] = k + 1);
this.mFree = c[this.capacity - 1] = -1;
return this;
},
iter: function (a) {
Ea._assert(null != a, 'f != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx',
lineNumber: 384,
className: 'polygonal.ds.IntHashSet',
methodName: 'iter'
});
for (var b = this.mData, c, d, f = 0, g = this.capacity; f < g; )
(c = f++ << 1), (d = b[c]), -2147483648 != d && a(b[c]);
return this;
},
toString: function () {
var a =
'' +
B.string(
fb.format(
'[ IntHashSet size=' + this.mSize + ' capacity=' + this.capacity + ' load=%.2f',
[this.get_loadFactor()]
)
);
if (0 == this.mSize) return a + ' ]';
a += '\n';
for (var b = this.iterator(); b.hasNext(); ) {
var c = b.next();
a += B.string(' ' + c + '\n');
}
return a + ']';
},
hashCode: function (a) {
return (73856093 * a) & this.mMask;
},
grow: function () {
var a = this.capacity;
this.capacity = Hg.compute(this.growthRate, this.capacity);
var b = Array(this.capacity);
Kb.blit(this.mNext, 0, b, 0, a);
this.mNext = b;
b = Array(this.capacity << 1);
Kb.blit(this.mData, 0, b, 0, a << 1);
this.mData = b;
b = this.mNext;
for (var c = a - 1, d = this.capacity - 1; c < d; ) {
var f = c++;
b[f] = f + 1;
}
b[this.capacity - 1] = -1;
this.mFree = a;
f = a << 1;
b = this.mData;
c = 0;
for (d = this.capacity - a; c < d; ) c++, (b[f] = -2147483648), (b[f + 1] = -1), (f += 2);
},
has: function (a) {
Ea._assert(-2147483648 != a, 'value 0x80000000 is reserved(val != VAL_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx',
lineNumber: 467,
className: 'polygonal.ds.IntHashSet',
methodName: 'has'
});
var b = this.mHash[(73856093 * a) & this.mMask];
if (-1 == b) return !1;
var c = this.mData;
if (c[b] == a) return !0;
var d = !1;
for (b = c[b + 1]; -1 != b; ) {
if (c[b] == a) {
d = !0;
break;
}
b = c[b + 1];
}
return d;
},
set: function (a) {
Ea._assert(-2147483648 != a, 'value 0x80000000 is reserved(val != VAL_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx',
lineNumber: 521,
className: 'polygonal.ds.IntHashSet',
methodName: 'set'
});
var b = (73856093 * a) & this.mMask,
c = this.mData,
d = this.mHash[b];
if (-1 == d)
return (
this.mSize == this.capacity && (this.grow(), (c = this.mData)),
(d = this.mFree << 1),
(this.mFree = this.mNext[this.mFree]),
(this.mHash[b] = d),
(c[d] = a),
this.mSize++,
!0
);
if (c[d] == a) return !1;
for (b = c[d + 1]; -1 != b; ) {
if (c[b] == a) {
d = -1;
break;
}
d = b;
b = c[b + 1];
}
if (-1 == d) return !1;
this.mSize == this.capacity && (this.grow(), (c = this.mData));
b = this.mFree << 1;
this.mFree = this.mNext[this.mFree];
c[b] = a;
c[d + 1] = b;
this.mSize++;
return !0;
},
unset: function (a) {
var b = (73856093 * a) & this.mMask,
c = this.mHash[b];
if (-1 == c) return !1;
var d = this.mData;
if (a == d[c])
return (
(this.mHash[b] = -1 == d[c + 1] ? -1 : d[c + 1]),
(a = c >> 1),
(this.mNext[a] = this.mFree),
(this.mFree = a),
(d[c] = -2147483648),
(d[c + 1] = -1),
this.mSize--,
!0
);
b = !1;
var f = c;
for (c = d[c + 1]; -1 != c; ) {
if (d[c] == a) {
b = !0;
break;
}
f = c;
c = d[f + 1];
}
return b
? ((d[f + 1] = d[c + 1]),
(a = c >> 1),
(this.mNext[a] = this.mFree),
(this.mFree = a),
(d[c] = -2147483648),
(d[c + 1] = -1),
--this.mSize,
!0)
: !1;
},
get_size: function () {
return this.mSize;
},
free: function () {
this.mNext = this.mData = this.mHash = null;
null != this.mIterator && (this.mIterator.free(), (this.mIterator = null));
},
contains: function (a) {
Ea._assert(-2147483648 != a, 'value 0x80000000 is reserved(val != VAL_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx',
lineNumber: 467,
className: 'polygonal.ds.IntHashSet',
methodName: 'has'
});
var b = this.mHash[(73856093 * a) & this.mMask];
if (-1 == b) return !1;
var c = this.mData;
if (c[b] == a) return !0;
var d = !1;
for (b = c[b + 1]; -1 != b; ) {
if (c[b] == a) {
d = !0;
break;
}
b = c[b + 1];
}
return d;
},
remove: function (a) {
var b = (73856093 * a) & this.mMask,
c = this.mHash[b];
if (-1 == c) return !1;
var d = this.mData;
if (a == d[c])
return (
(this.mHash[b] = -1 == d[c + 1] ? -1 : d[c + 1]),
(a = c >> 1),
(this.mNext[a] = this.mFree),
(this.mFree = a),
(d[c] = -2147483648),
(d[c + 1] = -1),
this.mSize--,
!0
);
b = !1;
var f = c;
for (c = d[c + 1]; -1 != c; ) {
if (d[c] == a) {
b = !0;
break;
}
f = c;
c = d[f + 1];
}
return b
? ((d[f + 1] = d[c + 1]),
(a = c >> 1),
(this.mNext[a] = this.mFree),
(this.mFree = a),
(d[c] = -2147483648),
(d[c + 1] = -1),
--this.mSize,
!0)
: !1;
},
clear: function (a) {
var b = this.mHash;
a = 0;
for (var c = this.slotCount; a < c; ) {
var d = a++;
b[d] = -1;
}
d = 1;
b = this.mData;
a = 0;
for (c = this.capacity; a < c; ) a++, (b[d - 1] = -2147483648), (b[d] = -1), (d += 2);
b = this.mNext;
a = 0;
for (c = this.capacity - 1; a < c; ) (d = a++), (b[d] = d + 1);
b[this.capacity - 1] = -1;
this.mSize = this.mFree = 0;
},
iterator: function () {
return this.reuseIterator
? (null == this.mIterator ? (this.mIterator = new lk(this)) : this.mIterator.reset(),
this.mIterator)
: new lk(this);
},
isEmpty: function () {
return 0 == this.mSize;
},
toArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <= a, 'len >= 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 37,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'alloc'
});
a = Array(a);
for (var b = 0, c, d = this.mData, f = 0, g = this.capacity; f < g; )
(c = f++), (c = d[c << 1]), -2147483648 != c && (a[b++] = c);
return a;
},
clone: function (a, b) {
a = new Jg(this.slotCount, this.mSize);
Kb.blit(this.mHash, 0, a.mHash, 0, this.slotCount);
Kb.blit(this.mData, 0, a.mData, 0, this.mSize << 1);
Kb.blit(this.mNext, 0, a.mNext, 0, this.mSize);
a.mMask = this.mMask;
a.slotCount = this.slotCount;
a.capacity = this.capacity;
a.mFree = this.mFree;
a.mSize = this.mSize;
return a;
},
__class__: Jg,
__properties__: {
get_size: 'get_size',
get_loadFactor: 'get_loadFactor'
}
};
var lk = function (a) {
this.mObject = a;
this.mData = a.mData;
this.mI = 0;
this.mS = a.capacity;
this.scan();
};
h['polygonal.ds.IntHashSetIterator'] = lk;
lk.__name__ = 'polygonal.ds.IntHashSetIterator';
lk.__interfaces__ = [Ig];
lk.prototype = {
mObject: null,
mI: null,
mS: null,
mData: null,
free: function () {
this.mData = this.mObject = null;
},
reset: function () {
this.mData = this.mObject.mData;
this.mI = 0;
this.mS = this.mObject.capacity;
this.scan();
return this;
},
hasNext: function () {
return this.mI < this.mS;
},
next: function () {
var a = this.mData[this.mI++ << 1];
this.scan();
return a;
},
remove: function () {
throw M.thrown('unsupported operation');
},
scan: function () {
for (; this.mI < this.mS && -2147483648 == this.mData[this.mI << 1]; ) this.mI++;
},
__class__: lk
};
var ye = function (a, b) {
null == b && (b = -1);
this.mTmpKeyBuffer = [];
this.mIterator = null;
this.mFree = this.mSize = 0;
this.reuseIterator = !1;
this.key = sg.next();
Ea._assert(0 < a, 'slotCount > 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashTable.hx',
lineNumber: 158,
className: 'polygonal.ds.IntHashTable',
methodName: 'new'
});
-1 == b && (b = a);
2 > b && (b = 2);
this.mMinCapacity = this.capacity = b;
this.mH = new tg(a, this.capacity);
this.mVals = Array(this.capacity);
this.mNext = Array(this.capacity);
this.mKeys = Kb.init(Array(this.capacity), -2147483648, 0, this.capacity);
a = this.mNext;
b = 0;
for (var c = this.capacity - 1; b < c; ) {
var d = b++;
a[d] = d + 1;
}
a[this.capacity - 1] = -1;
};
h['polygonal.ds.IntHashTable'] = ye;
ye.__name__ = 'polygonal.ds.IntHashTable';
ye.__interfaces__ = [mi];
ye.prototype = {
key: null,
capacity: null,
get_growthRate: function () {
return this.mH.growthRate;
},
set_growthRate: function (a) {
return (this.mH.growthRate = a);
},
reuseIterator: null,
get_loadFactor: function () {
return this.mH.get_loadFactor();
},
get_slotCount: function () {
return this.mH.slotCount;
},
mH: null,
mVals: null,
mNext: null,
mKeys: null,
mFree: null,
mSize: null,
mMinCapacity: null,
mShrinkSize: null,
mIterator: null,
mTmpKeyBuffer: null,
getCollisionCount: function () {
return this.mH.getCollisionCount();
},
getFront: function (a) {
var b = this.mH,
c = (73856093 * a) & b.mMask,
d = b.mHash[c];
if (-1 == d) a = -2147483648;
else {
var f = b.mData;
if (f[d] == a) a = f[d + 1];
else {
var g = -2147483648,
k = d,
l = k;
for (d = f[d + 2]; -1 != d; ) {
if (f[d] == a) {
g = f[d + 1];
f[l + 2] = f[d + 2];
f[d + 2] = k;
b.mHash[c] = d;
break;
}
l = d;
d = f[l + 2];
}
a = g;
}
}
return -2147483648 == a ? null : this.mVals[a];
},
setIfAbsent: function (a, b) {
Ea._assert(
-2147483648 != a,
'key 0x80000000 is reserved(key != IntIntHashTable.KEY_ABSENT)',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashTable.hx',
lineNumber: 212,
className: 'polygonal.ds.IntHashTable',
methodName: 'setIfAbsent'
}
);
this.mSize == this.capacity && this.grow();
var c = this.mFree,
d = this.mH;
Ea._assert(-2147483648 != c, 'val 0x80000000 is reserved(val != KEY_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 291,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'setIfAbsent'
});
var f = (73856093 * a) & d.mMask,
g = d.mData,
k = d.mHash[f];
if (-1 == k) {
d.mSize == d.capacity && (d.grow(), (g = d.mData));
var l = 3 * d.mFree;
d.mFree = d.mNext[d.mFree];
d.mHash[f] = l;
g[l] = a;
g[l + 1] = c;
d.mSize++;
d = !0;
} else if (g[k] == a) d = !1;
else {
for (f = g[k + 2]; -1 != f; ) {
if (g[f] == a) {
k = -1;
break;
}
k = f;
f = g[k + 2];
}
-1 == k
? (d = !1)
: (d.mSize == d.capacity && (d.grow(), (g = d.mData)),
(l = 3 * d.mFree),
(d.mFree = d.mNext[d.mFree]),
(g[k + 2] = l),
(g[l] = a),
(g[l + 1] = c),
d.mSize++,
(d = !0));
}
return d
? ((this.mVals[c] = b),
(this.mKeys[c] = a),
(this.mFree = this.mNext[c]),
this.mSize++,
!0)
: !1;
},
rehash: function (a) {
this.mH.rehash(a);
return this;
},
remap: function (a, b) {
var c = this.mH,
d = c.mHash[(73856093 * a) & c.mMask];
if (-1 == d) a = -2147483648;
else if (((c = c.mData), c[d] == a)) a = c[d + 1];
else {
var f = -2147483648;
for (d = c[d + 2]; -1 != d; ) {
if (c[d] == a) {
f = c[d + 1];
break;
}
d = c[d + 2];
}
a = f;
}
return -2147483648 != a ? ((this.mVals[a] = b), !0) : !1;
},
toKeyArray: function () {
return this.mH.toKeyArray();
},
toString: function () {
var a = this;
var b =
'' +
B.string(
fb.format(
'[ IntHashTable size=' + this.mSize + ' capacity=' + this.capacity + ' load=%.2f',
[this.get_loadFactor()]
)
);
if (0 == this.mSize) return b + ' ]';
b += '\n';
for (var c = 0, d = this.keys(); d.hasNext(); ) {
var f = d.next();
c = Math.max(c, f);
}
for (f = 1; 0 != c; ) ++f, (c = (c / 10) | 0);
c = [];
var g = ' %- ' + f + 'd -> %s\n',
k = [];
for (d = this.keys(); d.hasNext(); ) (f = d.next()), k.push(f);
k.sort(function (a, b) {
return a - b;
});
f = 1;
var l = k.length;
d = 0;
for (var h = 1; f < l; ) {
if (k[d] == k[f]) ++h;
else {
d = k[d];
c[0] = d;
if (1 < h) (h = []), a.getAll(d, h), (c[1] = h.join(','));
else {
h = a.mVals;
var n = a.mH,
t = n.mHash[(73856093 * d) & n.mMask];
if (-1 == t) d = -2147483648;
else if (((n = n.mData), n[t] == d)) d = n[t + 1];
else {
var m = -2147483648;
for (t = n[t + 2]; -1 != t; ) {
if (n[t] == d) {
m = n[t + 1];
break;
}
t = n[t + 2];
}
d = m;
}
c[1] = B.string(h[d]);
}
b += B.string(fb.format(g, c));
d = f;
h = 1;
}
++f;
}
d = k[d];
c[0] = d;
if (1 < h) (h = []), a.getAll(d, h), (c[1] = h.join(','));
else {
h = a.mVals;
n = a.mH;
f = n.mHash[(73856093 * d) & n.mMask];
if (-1 == f) a = -2147483648;
else if (((n = n.mData), n[f] == d)) a = n[f + 1];
else {
m = -2147483648;
for (f = n[f + 2]; -1 != f; ) {
if (n[f] == d) {
m = n[f + 1];
break;
}
f = n[f + 2];
}
a = m;
}
c[1] = B.string(h[a]);
}
b += B.string(fb.format(g, c));
return b + ']';
},
has: function (a) {
for (var b = this.mKeys, c = this.mVals, d = 0, f = this.capacity; d < f; ) {
var g = d++;
if (-2147483648 != b[g] && c[g] == a) return !0;
}
return !1;
},
hasKey: function (a) {
var b = this.mH,
c = b.mHash[(73856093 * a) & b.mMask];
if (-1 == c) return !1;
b = b.mData;
if (b[c] == a) return !0;
var d = !1;
for (c = b[c + 2]; -1 != c; ) {
if (b[c] == a) {
d = !0;
break;
}
c = b[c + 2];
}
return d;
},
count: function (a) {
return this.mH.count(a);
},
get: function (a) {
var b = this.mH,
c = b.mHash[(73856093 * a) & b.mMask];
if (-1 == c) a = -2147483648;
else if (((b = b.mData), b[c] == a)) a = b[c + 1];
else {
var d = -2147483648;
for (c = b[c + 2]; -1 != c; ) {
if (b[c] == a) {
d = b[c + 1];
break;
}
c = b[c + 2];
}
a = d;
}
return -2147483648 == a ? null : this.mVals[a];
},
getAll: function (a, b) {
var c = this.mH,
d = c.mHash[(73856093 * a) & c.mMask];
if (-1 == d) c = -2147483648;
else {
var f = c.mData;
if (f[d] == a) c = f[d + 1];
else
for (c = -2147483648, d = f[d + 2]; -1 != d; ) {
if (f[d] == a) {
c = f[d + 1];
break;
}
d = f[d + 2];
}
}
if (-2147483648 == c) return 0;
d = this.mTmpKeyBuffer;
a = this.mH.getAll(a, d);
c = this.mVals;
for (f = 0; f < a; ) {
var g = f++;
b[g] = c[d[g]];
}
return a;
},
set: function (a, b) {
Ea._assert(
-2147483648 != a,
'key 0x80000000 is reserved(key != IntIntHashTable.KEY_ABSENT)',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashTable.hx',
lineNumber: 397,
className: 'polygonal.ds.IntHashTable',
methodName: 'set'
}
);
this.mSize == this.capacity && this.grow();
var c = this.mFree,
d = this.mH;
Ea._assert(-2147483648 != c, 'val 0x80000000 is reserved(val != KEY_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 1046,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'set'
});
d.mSize == d.capacity && d.grow();
var f = d.mData,
g = d.mHash,
k = 3 * d.mFree;
d.mFree = d.mNext[d.mFree];
f[k] = a;
f[k + 1] = c;
var l = (73856093 * a) & d.mMask,
h = g[l];
if (-1 == h) (g[l] = k), d.mSize++, (d = !0);
else {
g = f[h] != a;
for (l = f[h + 2]; -1 != l; ) f[l] == a && (g = !1), (h = l), (l = f[l + 2]);
f[h + 2] = k;
d.mSize++;
d = g;
}
this.mVals[c] = b;
this.mKeys[c] = a;
this.mFree = this.mNext[c];
this.mSize++;
return d;
},
unset: function (a) {
var b = this.mH,
c = b.mHash[(73856093 * a) & b.mMask];
if (-1 == c) c = -2147483648;
else {
var d = b.mData;
if (d[c] == a) c = d[c + 1];
else {
b = -2147483648;
for (c = d[c + 2]; -1 != c; ) {
if (d[c] == a) {
b = d[c + 1];
break;
}
c = d[c + 2];
}
c = b;
}
}
if (-2147483648 == c) return !1;
this.mVals[c] = null;
this.mKeys[c] = -2147483648;
this.mNext[c] = this.mFree;
this.mFree = c;
b = this.mH;
var f = (73856093 * a) & b.mMask,
g = b.mHash;
c = g[f];
if (-1 != c)
if (((d = b.mData), a == d[c]))
(g[f] = -1 == d[c + 2] ? -1 : d[c + 2]),
(a = (c / 3) | 0),
(b.mNext[a] = b.mFree),
(b.mFree = a),
(d[c + 1] = -2147483648),
(d[c + 2] = -1),
b.mSize--;
else {
f = !1;
g = c;
for (c = d[c + 2]; -1 != c; ) {
if (d[c] == a) {
f = !0;
break;
}
g = c;
c = d[g + 2];
}
f &&
((d[g + 2] = d[c + 2]),
(a = (c / 3) | 0),
(b.mNext[a] = b.mFree),
(b.mFree = a),
(d[c + 1] = -2147483648),
(d[c + 2] = -1),
b.mSize--);
}
this.mSize--;
return !0;
},
toValSet: function () {
for (
var a = new ni(), b = this.mKeys, c = this.mVals, d = 0, f = this.capacity;
d < f;
) {
var g = d++;
-2147483648 != b[g] && a.set(c[g]);
}
return a;
},
toKeySet: function () {
return this.mH.toKeySet();
},
keys: function () {
return this.mH.keys();
},
pack: function () {
this.mH.pack();
if (this.mH.capacity == this.capacity) return this;
this.capacity = this.mH.capacity;
for (var a = (this.mNext = Array(this.capacity)), b = 0, c = this.capacity - 1; b < c; ) {
var d = b++;
a[d] = d + 1;
}
a[this.capacity - 1] = -1;
this.mFree = 0;
b = this.mKeys;
a = Array(this.capacity);
c = this.mVals;
var f = Array(this.capacity),
g = this.mFree;
for (d = this.mH.iterator(); d.hasNext(); ) {
var k = d.next();
a[g] = b[k];
f[g] = c[k];
g = this.mNext[g];
}
this.mFree = g;
this.mKeys = a;
this.mVals = f;
b = 0;
for (c = this.mSize; b < c; )
if (
((d = b++),
(g = this.mH),
(f = a[d]),
(k = g.mHash[(73856093 * f) & g.mMask]),
-1 != k)
)
if (((g = g.mData), g[k] == f)) g[k + 1] = d;
else
for (k = g[k + 2]; -1 != k; ) {
if (g[k] == f) {
g[k + 1] = d;
break;
}
k = g[k + 2];
}
return this;
},
iter: function (a) {
Ea._assert(null != a, 'f != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashTable.hx',
lineNumber: 518,
className: 'polygonal.ds.IntHashTable',
methodName: 'iter'
});
var b = this.mVals,
c = this.mH;
Ea._assert(!0, 'f != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 1360,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'iter'
});
for (var d = c.mData, f, g = 0, k = c.capacity; g < k; )
(c = 3 * g++), (f = d[c + 1]), -2147483648 != f && a(d[c], b[f]);
return this;
},
grow: function () {
var a = this.capacity;
this.capacity = Hg.compute(this.get_growthRate(), this.capacity);
var b = Array(this.capacity);
Kb.blit(this.mNext, 0, b, 0, a);
this.mNext = b;
b = Array(this.capacity);
Kb.blit(this.mKeys, 0, b, 0, a);
b = this.mKeys = b;
for (var c = a, d = this.capacity; c < d; ) {
var f = c++;
b[f] = -2147483648;
}
b = this.mNext;
c = a - 1;
for (d = this.capacity - 1; c < d; ) (f = c++), (b[f] = f + 1);
b[this.capacity - 1] = -1;
this.mFree = a;
b = Array(this.capacity);
Kb.blit(this.mVals, 0, b, 0, a);
this.mVals = b;
},
get_size: function () {
return this.mSize;
},
free: function () {
Kb.nullify(this.mVals);
this.mNext = this.mKeys = this.mVals = null;
this.mH.free();
this.mH = null;
null != this.mIterator && (this.mIterator.free(), (this.mIterator = null));
this.mTmpKeyBuffer = null;
},
contains: function (a) {
return this.has(a);
},
remove: function (a) {
for (
var b = this.mTmpKeyBuffer,
c = 0,
d = this.mKeys,
f = this.mVals,
g,
k = 0,
l = this.capacity;
k < l;
) {
var h = k++;
g = d[h];
-2147483648 != g && f[h] == a && (b[c++] = g);
}
k = 0;
for (l = c; k < l; ) (h = k++), this.unset(b[h]);
return 0 < c;
},
clear: function (a) {
null == a && (a = !1);
this.mH.clear(a);
Kb.init(this.mKeys, -2147483648, 0, this.capacity);
a = this.mNext;
for (var b = 0, c = this.capacity - 1; b < c; ) {
var d = b++;
a[d] = d + 1;
}
a[this.capacity - 1] = -1;
this.mSize = this.mFree = 0;
},
iterator: function () {
return this.reuseIterator
? (null == this.mIterator ? (this.mIterator = new mk(this)) : this.mIterator.reset(),
this.mIterator)
: new mk(this);
},
isEmpty: function () {
return 0 == this.mSize;
},
toArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <= a, 'len >= 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 37,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'alloc'
});
a = Array(a);
for (var b = 0, c = this.mKeys, d = this.mVals, f = 0, g = this.capacity; f < g; ) {
var k = f++;
-2147483648 != c[k] && (a[b++] = d[k]);
}
return a;
},
clone: function (a, b) {
null == a && (a = !0);
var c = new ye(this.mH.slotCount, this.mSize);
c.mH = this.mH.clone(!1);
c.mSize = this.mSize;
c.mFree = this.mFree;
var d = this.mVals,
f = c.mVals;
if (a) Kb.blit(d, 0, f, 0, this.mSize);
else if (((a = this.mKeys), null != b))
for (var g = 0, k = this.mSize; g < k; ) {
var l = g++;
-2147483648 != a[l] && (f[l] = b(d[l]));
}
else
for (g = 0, k = this.mSize; g < k; )
(l = g++),
-2147483648 != a[l] &&
(Ea._assert(
x.__implements(d[l], rg),
'element is not of type Cloneable(Std.isOfType(src.get(i), Cloneable))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashTable.hx',
lineNumber: 727,
className: 'polygonal.ds.IntHashTable',
methodName: 'clone'
}
),
(f[l] = x.__cast(d[l], rg).clone()));
Kb.blit(this.mKeys, 0, c.mKeys, 0, this.mSize);
Kb.blit(this.mNext, 0, c.mNext, 0, this.mSize);
return c;
},
__class__: ye,
__properties__: {
get_size: 'get_size',
get_slotCount: 'get_slotCount',
get_loadFactor: 'get_loadFactor',
set_growthRate: 'set_growthRate',
get_growthRate: 'get_growthRate'
}
};
var mk = function (a) {
this.mObject = a;
this.reset();
};
h['polygonal.ds.IntHashTableIterator'] = mk;
mk.__name__ = 'polygonal.ds.IntHashTableIterator';
mk.__interfaces__ = [Ig];
mk.prototype = {
mObject: null,
mVals: null,
mKeys: null,
mI: null,
mS: null,
free: function () {
this.mKeys = this.mVals = this.mObject = null;
},
reset: function () {
this.mVals = this.mObject.mVals;
this.mKeys = this.mObject.mKeys;
this.mS = this.mObject.mH.capacity;
for (this.mI = 0; this.mI < this.mS && -2147483648 == this.mKeys[this.mI]; ) this.mI++;
return this;
},
hasNext: function () {
return this.mI < this.mS;
},
next: function () {
for (
var a = this.mVals[this.mI];
++this.mI < this.mS && -2147483648 == this.mKeys[this.mI];
);
return a;
},
remove: function () {
throw M.thrown('unsupported operation');
},
__class__: mk
};
var tg = function (a, b) {
null == b && (b = -1);
this.mTmpBufferSize = 16;
this.mFree = this.mSize = 0;
this.reuseIterator = !1;
this.growthRate = -3;
this.key = sg.next();
Ea._assert(0 < a, 'slotCount > 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 156,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'new'
});
Ea._assert(
0 < a && 0 == (a & (a - 1)),
'slotCount is not a power of 2(MathTools.isPow2(slotCount))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 157,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'new'
}
);
-1 == b
? (b = a)
: (Ea._assert(2 <= b, 'minimum capacity is 2(initialCapacity >= 2)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 163,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'new'
}),
Ea._assert(
0 < a && 0 == (a & (a - 1)),
'capacity is not a power of 2(MathTools.isPow2(slotCount))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 164,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'new'
}
));
this.mMinCapacity = this.capacity = b;
this.slotCount = a;
this.mMask = a - 1;
this.mHash = Kb.init(Array(a), -1);
this.mData = Array(3 * this.capacity);
this.mNext = Array(this.capacity);
var c = 2;
a = this.mData;
b = 0;
for (var d = this.capacity; b < d; ) b++, (a[c - 1] = -2147483648), (a[c] = -1), (c += 3);
a = this.mNext;
b = 0;
for (d = this.capacity - 1; b < d; ) (c = b++), (a[c] = c + 1);
a[this.capacity - 1] = -1;
this.mTmpBuffer = Array(this.mTmpBufferSize);
};
h['polygonal.ds.IntIntHashTable'] = tg;
tg.__name__ = 'polygonal.ds.IntIntHashTable';
tg.__interfaces__ = [mi];
tg.prototype = {
key: null,
capacity: null,
growthRate: null,
reuseIterator: null,
get_loadFactor: function () {
return this.mSize / this.slotCount;
},
slotCount: null,
mHash: null,
mData: null,
mNext: null,
mMask: null,
mFree: null,
mSize: null,
mMinCapacity: null,
mIterator: null,
mTmpBuffer: null,
mTmpBufferSize: null,
getCollisionCount: function () {
for (var a = 0, b, c = this.mData, d = this.mHash, f = 0, g = this.slotCount; f < g; )
if (((b = f++), (b = d[b]), -1 != b)) for (b = c[b + 2]; -1 != b; ) (b = c[b + 2]), ++a;
return a;
},
getFront: function (a) {
var b = (73856093 * a) & this.mMask,
c = this.mHash[b];
if (-1 == c) return -2147483648;
var d = this.mData;
if (d[c] == a) return d[c + 1];
var f = -2147483648,
g = c,
k = g;
for (c = d[c + 2]; -1 != c; ) {
if (d[c] == a) {
f = d[c + 1];
d[k + 2] = d[c + 2];
d[c + 2] = g;
this.mHash[b] = c;
break;
}
k = c;
c = d[k + 2];
}
return f;
},
setIfAbsent: function (a, b) {
Ea._assert(-2147483648 != b, 'val 0x80000000 is reserved(val != KEY_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 291,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'setIfAbsent'
});
var c = (73856093 * a) & this.mMask,
d = this.mData,
f = this.mHash[c];
if (-1 == f) {
this.mSize == this.capacity && (this.grow(), (d = this.mData));
var g = 3 * this.mFree;
this.mFree = this.mNext[this.mFree];
this.mHash[c] = g;
d[g] = a;
d[g + 1] = b;
this.mSize++;
return !0;
}
if (d[f] == a) return !1;
for (c = d[f + 2]; -1 != c; ) {
if (d[c] == a) {
f = -1;
break;
}
f = c;
c = d[f + 2];
}
if (-1 == f) return !1;
this.mSize == this.capacity && (this.grow(), (d = this.mData));
g = 3 * this.mFree;
this.mFree = this.mNext[this.mFree];
d[f + 2] = g;
d[g] = a;
d[g + 1] = b;
this.mSize++;
return !0;
},
rehash: function (a) {
Ea._assert(
0 < a && 0 == (a & (a - 1)),
'slotCount is not a power of 2(MathTools.isPow2(slotCount))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 403,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'rehash'
}
);
if (this.slotCount == a) return this;
for (
var b = new tg(a, this.capacity), c = this.mData, d = 0, f = this.capacity;
d < f;
) {
var g = d++,
k = c[3 * g + 1];
if (-2147483648 != k) {
var l = c[3 * g];
Ea._assert(-2147483648 != k, 'val 0x80000000 is reserved(val != KEY_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 1046,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'set'
});
b.mSize == b.capacity && b.grow();
g = b.mData;
var h = b.mHash,
n = 3 * b.mFree;
b.mFree = b.mNext[b.mFree];
g[n] = l;
g[n + 1] = k;
l = (73856093 * l) & b.mMask;
k = h[l];
if (-1 == k) h[l] = n;
else {
for (h = g[k + 2]; -1 != h; ) (k = h), (h = g[h + 2]);
g[k + 2] = n;
}
b.mSize++;
}
}
this.mHash = b.mHash;
this.mData = b.mData;
this.mNext = b.mNext;
this.slotCount = a;
this.mMask = b.mMask;
this.mFree = b.mFree;
return this;
},
remap: function (a, b) {
var c = this.mHash[(73856093 * a) & this.mMask];
if (-1 == c) return !1;
var d = this.mData;
if (d[c] == a) return (d[c + 1] = b), !0;
for (c = d[c + 2]; -1 != c; ) {
if (d[c] == a) {
d[c + 1] = b;
break;
}
c = d[c + 2];
}
return -1 != c;
},
extract: function (a) {
var b = (73856093 * a) & this.mMask,
c = this.mHash,
d = c[b];
if (-1 == d) return -2147483648;
var f = this.mData;
if (a == f[d]) {
var g = f[d + 1];
c[b] = -1 == f[d + 2] ? -1 : f[d + 2];
a = (d / 3) | 0;
this.mNext[a] = this.mFree;
this.mFree = a;
f[d + 1] = -2147483648;
f[d + 2] = -1;
this.mSize--;
return g;
}
b = d;
d = f[d + 2];
for (g = -2147483648; -1 != d; ) {
if (f[d] == a) {
g = f[d + 1];
break;
}
b = d;
d = f[b + 2];
}
return -2147483648 != g
? ((f[b + 2] = f[d + 2]),
(a = (d / 3) | 0),
(this.mNext[a] = this.mFree),
(this.mFree = a),
(f[d + 1] = -2147483648),
(f[d + 2] = -1),
this.mSize--,
g)
: -2147483648;
},
toKeyArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <= a, 'len >= 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 37,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'alloc'
});
a = Array(a);
for (var b = 0, c = this.mData, d = 0, f = this.capacity; d < f; ) {
var g = d++;
-2147483648 != c[3 * g + 1] && (a[b++] = c[3 * g]);
}
return a;
},
toString: function () {
var a =
'' +
B.string(
fb.format(
'[ IntIntHashTable size=' +
this.mSize +
' capacity=' +
this.capacity +
' load=%.2f',
[this.get_loadFactor()]
)
);
if (0 == this.mSize) return a + ' ]';
a += '\n';
for (var b = 0, c = this.keys(); c.hasNext(); ) {
var d = c.next();
b = Math.max(b, d);
}
for (d = 1; 0 != b; ) ++d, (b = (b / 10) | 0);
b = [];
var f = ' %- ' + d + 'd -> %s\n',
g = [];
for (c = this.keys(); c.hasNext(); ) (d = c.next()), g.push(d);
g.sort(function (a, b) {
return a - b;
});
d = 1;
var k = g.length;
c = 0;
for (var l = 1; d < k; ) {
if (g[c] == g[d]) ++l;
else {
c = g[c];
b[0] = c;
if (1 < l) (l = []), this.getAll(c, l), (b[1] = l.join(','));
else {
l = this.mHash[(73856093 * c) & this.mMask];
if (-1 == l) c = -2147483648;
else {
var h = this.mData;
if (h[l] == c) c = h[l + 1];
else {
var n = -2147483648;
for (l = h[l + 2]; -1 != l; ) {
if (h[l] == c) {
n = h[l + 1];
break;
}
l = h[l + 2];
}
c = n;
}
}
b[1] = c;
}
a += B.string(fb.format(f, b));
c = d;
l = 1;
}
++d;
}
c = g[c];
b[0] = c;
if (1 < l) (l = []), this.getAll(c, l), (b[1] = l.join(','));
else {
d = this.mHash[(73856093 * c) & this.mMask];
if (-1 == d) l = -2147483648;
else if (((h = this.mData), h[d] == c)) l = h[d + 1];
else {
n = -2147483648;
for (d = h[d + 2]; -1 != d; ) {
if (h[d] == c) {
n = h[d + 1];
break;
}
d = h[d + 2];
}
l = n;
}
b[1] = l;
}
a += B.string(fb.format(f, b));
return a + ']';
},
has: function (a) {
Ea._assert(-2147483648 != a, 'val 0x80000000 is reserved(val != VAL_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 697,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'has'
});
for (var b = !1, c = this.mData, d = 0, f = this.capacity; d < f; ) {
var g = d++;
if (c[3 * g + 1] == a) {
b = !0;
break;
}
}
return b;
},
hasKey: function (a) {
var b = this.mHash[(73856093 * a) & this.mMask];
if (-1 == b) return !1;
var c = this.mData;
if (c[b] == a) return !0;
var d = !1;
for (b = c[b + 2]; -1 != b; ) {
if (c[b] == a) {
d = !0;
break;
}
b = c[b + 2];
}
return d;
},
count: function (a) {
var b = 0,
c = this.mHash[(73856093 * a) & this.mMask];
if (-1 != c) for (var d = this.mData; -1 != c; ) d[c] == a && ++b, (c = d[c + 2]);
return b;
},
get: function (a) {
var b = this.mHash[(73856093 * a) & this.mMask];
if (-1 == b) return -2147483648;
var c = this.mData;
if (c[b] == a) return c[b + 1];
var d = -2147483648;
for (b = c[b + 2]; -1 != b; ) {
if (c[b] == a) {
d = c[b + 1];
break;
}
b = c[b + 2];
}
return d;
},
getAll: function (a, b) {
var c = this.mHash[(73856093 * a) & this.mMask];
if (-1 == c) return 0;
var d = 0,
f = this.mData;
f[c] == a && (b[d++] = f[c + 1]);
for (c = f[c + 2]; -1 != c; ) f[c] == a && (b[d++] = f[c + 1]), (c = f[c + 2]);
return d;
},
hasPair: function (a, b) {
Ea._assert(-2147483648 != b, 'val 0x80000000 is reserved(val != KEY_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 891,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'hasPair'
});
var c = this.mHash[(73856093 * a) & this.mMask];
if (-1 != c) {
var d = this.mData;
if (d[c] == a && d[c + 1] == b) return !0;
for (c = d[c + 2]; -1 != c; ) {
if (d[c] == a && d[c + 1] == b) return !0;
c = d[c + 2];
}
}
return !1;
},
unsetPair: function (a, b) {
Ea._assert(-2147483648 != b, 'val 0x80000000 is reserved(val != KEY_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 939,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'unsetPair'
});
var c = (73856093 * a) & this.mMask,
d = this.mHash,
f = d[c];
if (-1 == f) return !1;
var g = this.mData;
if (a == g[f] && b == g[f + 1])
return (
(d[c] = -1 == g[f + 2] ? -1 : g[f + 2]),
(a = (f / 3) | 0),
(this.mNext[a] = this.mFree),
(this.mFree = a),
(g[f + 1] = -2147483648),
(g[f + 2] = -1),
this.mSize--,
!0
);
c = !1;
d = f;
for (f = g[f + 2]; -1 != f; ) {
if (g[f] == a && g[f + 1] == b) {
c = !0;
break;
}
d = f;
f = g[d + 2];
}
return c
? ((g[d + 2] = g[f + 2]),
(a = (f / 3) | 0),
(this.mNext[a] = this.mFree),
(this.mFree = a),
(g[f + 1] = -2147483648),
(g[f + 2] = -1),
--this.mSize,
!0)
: !1;
},
set: function (a, b) {
Ea._assert(-2147483648 != b, 'val 0x80000000 is reserved(val != KEY_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 1046,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'set'
});
this.mSize == this.capacity && this.grow();
var c = this.mData,
d = this.mHash,
f = 3 * this.mFree;
this.mFree = this.mNext[this.mFree];
c[f] = a;
c[f + 1] = b;
var g = (73856093 * a) & this.mMask;
b = d[g];
if (-1 == b) return (d[g] = f), this.mSize++, !0;
d = c[b] != a;
for (g = c[b + 2]; -1 != g; ) c[g] == a && (d = !1), (b = g), (g = c[g + 2]);
c[b + 2] = f;
this.mSize++;
return d;
},
unset: function (a) {
var b = (73856093 * a) & this.mMask,
c = this.mHash,
d = c[b];
if (-1 == d) return !1;
var f = this.mData;
if (a == f[d])
return (
(c[b] = -1 == f[d + 2] ? -1 : f[d + 2]),
(a = (d / 3) | 0),
(this.mNext[a] = this.mFree),
(this.mFree = a),
(f[d + 1] = -2147483648),
(f[d + 2] = -1),
this.mSize--,
!0
);
b = !1;
c = d;
for (d = f[d + 2]; -1 != d; ) {
if (f[d] == a) {
b = !0;
break;
}
c = d;
d = f[c + 2];
}
return b
? ((f[c + 2] = f[d + 2]),
(a = (d / 3) | 0),
(this.mNext[a] = this.mFree),
(this.mFree = a),
(f[d + 1] = -2147483648),
(f[d + 2] = -1),
this.mSize--,
!0)
: !1;
},
toValSet: function () {
for (var a = new Jg(this.capacity), b = this.mData, c = 0, d = this.capacity; c < d; ) {
var f = c++;
f = b[3 * f + 1];
if (-2147483648 != f) {
Ea._assert(-2147483648 != f, 'value 0x80000000 is reserved(val != VAL_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx',
lineNumber: 521,
className: 'polygonal.ds.IntHashSet',
methodName: 'set'
});
var g = (73856093 * f) & a.mMask,
k = a.mData,
l = a.mHash[g];
if (-1 == l)
a.mSize == a.capacity && (a.grow(), (k = a.mData)),
(l = a.mFree << 1),
(a.mFree = a.mNext[a.mFree]),
(a.mHash[g] = l),
(k[l] = f),
a.mSize++;
else if (k[l] != f) {
for (g = k[l + 1]; -1 != g; ) {
if (k[g] == f) {
l = -1;
break;
}
l = g;
g = k[g + 1];
}
-1 != l &&
(a.mSize == a.capacity && (a.grow(), (k = a.mData)),
(g = a.mFree << 1),
(a.mFree = a.mNext[a.mFree]),
(k[g] = f),
(k[l + 1] = g),
a.mSize++);
}
}
}
return a;
},
toKeySet: function () {
for (var a = new Jg(this.capacity), b = this.mData, c = 0, d = this.capacity; c < d; ) {
var f = c++;
if (-2147483648 != b[3 * f + 1]) {
f = b[3 * f];
Ea._assert(-2147483648 != f, 'value 0x80000000 is reserved(val != VAL_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx',
lineNumber: 521,
className: 'polygonal.ds.IntHashSet',
methodName: 'set'
});
var g = (73856093 * f) & a.mMask,
k = a.mData,
l = a.mHash[g];
if (-1 == l)
a.mSize == a.capacity && (a.grow(), (k = a.mData)),
(l = a.mFree << 1),
(a.mFree = a.mNext[a.mFree]),
(a.mHash[g] = l),
(k[l] = f),
a.mSize++;
else if (k[l] != f) {
for (g = k[l + 1]; -1 != g; ) {
if (k[g] == f) {
l = -1;
break;
}
l = g;
g = k[g + 1];
}
-1 != l &&
(a.mSize == a.capacity && (a.grow(), (k = a.mData)),
(g = a.mFree << 1),
(a.mFree = a.mNext[a.mFree]),
(k[g] = f),
(k[l + 1] = g),
a.mSize++);
}
}
}
return a;
},
keys: function () {
return new wn(this);
},
pack: function () {
if (this.capacity == this.mMinCapacity) return this;
var a = this.mSize,
b = this.mMinCapacity;
this.capacity = a > b ? a : b;
var c = this.mData,
d = 0,
f = this.mHash,
g = Array(3 * this.capacity),
k = 2;
a = 0;
for (b = this.capacity; a < b; ) a++, (g[k - 1] = -2147483648), (g[k] = -1), (k += 3);
a = 0;
for (b = this.slotCount; a < b; ) {
var l = a++;
k = f[l];
if (-1 != k)
for (
f[l] = d, g[d] = c[k], g[d + 1] = c[k + 1], g[d + 2] = -1, d += 3, k = c[k + 2];
-1 != k;
)
(g[d - 1] = d),
(g[d] = c[k]),
(g[d + 1] = c[k + 1]),
(g[d + 2] = -1),
(d += 3),
(k = c[k + 2]);
}
this.mData = g;
c = this.mNext = Array(this.capacity);
a = 0;
for (b = this.capacity - 1; a < b; ) (l = a++), (c[l] = l + 1);
this.mFree = c[this.capacity - 1] = -1;
return this;
},
iter: function (a) {
Ea._assert(null != a, 'f != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 1360,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'iter'
});
for (var b = this.mData, c, d, f = 0, g = this.capacity; f < g; )
(c = 3 * f++), (d = b[c + 1]), -2147483648 != d && a(b[c], d);
return this;
},
hashCode: function (a) {
return (73856093 * a) & this.mMask;
},
grow: function () {
var a = this.capacity;
this.capacity = Hg.compute(this.growthRate, this.capacity);
var b = Array(this.capacity);
Kb.blit(this.mNext, 0, b, 0, a);
this.mNext = b;
b = Array(3 * this.capacity);
Kb.blit(this.mData, 0, b, 0, 3 * a);
this.mData = b;
b = this.mNext;
for (var c = a - 1, d = this.capacity - 1; c < d; ) {
var f = c++;
b[f] = f + 1;
}
b[this.capacity - 1] = -1;
this.mFree = a;
f = 3 * a + 2;
b = this.mData;
c = 0;
for (d = this.capacity - a; c < d; ) c++, (b[f - 1] = -2147483648), (b[f] = -1), (f += 3);
},
get_size: function () {
return this.mSize;
},
free: function () {
this.mNext = this.mData = this.mHash = null;
null != this.mIterator && (this.mIterator.free(), (this.mIterator = null));
this.mTmpBuffer = null;
},
contains: function (a) {
return this.has(a);
},
remove: function (a) {
Ea._assert(-2147483648 != a, 'val 0x80000000 is reserved(val != KEY_ABSENT)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx',
lineNumber: 1465,
className: 'polygonal.ds.IntIntHashTable',
methodName: 'remove'
});
for (
var b = 0,
c = this.mTmpBuffer,
d = this.mTmpBufferSize,
f = this.mData,
g,
k = 0,
l = this.capacity;
k < l;
)
(g = k++),
(g *= 3),
f[g + 1] == a &&
(b == d &&
((this.mTmpBufferSize = d <<= 1),
(c = Array(d)),
Kb.blit(this.mTmpBuffer, 0, c, 0, b),
(this.mTmpBuffer = c)),
(c[b++] = f[g]));
k = 0;
for (l = b; k < l; ) {
g = k++;
d = c[g];
g = (73856093 * d) & this.mMask;
var h = this.mHash;
a = h[g];
if (-1 != a)
if (((f = this.mData), d == f[a]))
(h[g] = -1 == f[a + 2] ? -1 : f[a + 2]),
(g = (a / 3) | 0),
(this.mNext[g] = this.mFree),
(this.mFree = g),
(f[a + 1] = -2147483648),
(f[a + 2] = -1),
this.mSize--;
else {
g = !1;
h = a;
for (a = f[a + 2]; -1 != a; ) {
if (f[a] == d) {
g = !0;
break;
}
h = a;
a = f[h + 2];
}
g &&
((f[h + 2] = f[a + 2]),
(d = (a / 3) | 0),
(this.mNext[d] = this.mFree),
(this.mFree = d),
(f[a + 1] = -2147483648),
(f[a + 2] = -1),
this.mSize--);
}
}
return 0 < b;
},
clear: function (a) {
var b = this.mHash;
a = 0;
for (var c = this.slotCount; a < c; ) {
var d = a++;
b[d] = -1;
}
d = 2;
b = this.mData;
a = 0;
for (c = this.capacity; a < c; ) a++, (b[d - 1] = -2147483648), (b[d] = -1), (d += 3);
b = this.mNext;
a = 0;
for (c = this.capacity - 1; a < c; ) (d = a++), (b[d] = d + 1);
b[this.capacity - 1] = -1;
this.mSize = this.mFree = 0;
},
iterator: function () {
return this.reuseIterator
? (null == this.mIterator ? (this.mIterator = new nk(this)) : this.mIterator.reset(),
this.mIterator)
: new nk(this);
},
isEmpty: function () {
return 0 == this.mSize;
},
toArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <= a, 'len >= 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 37,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'alloc'
});
a = Array(a);
for (var b = 0, c, d = this.mData, f = 0, g = this.capacity; f < g; )
(c = f++), (c = d[3 * c + 1]), -2147483648 != c && (a[b++] = c);
return a;
},
clone: function (a, b) {
a = new tg(this.slotCount, this.capacity);
Kb.blit(this.mHash, 0, a.mHash, 0, this.slotCount);
Kb.blit(this.mData, 0, a.mData, 0, 3 * this.capacity);
Kb.blit(this.mNext, 0, a.mNext, 0, this.capacity);
a.mMask = this.mMask;
a.slotCount = this.slotCount;
a.capacity = this.capacity;
a.mFree = this.mFree;
a.mSize = this.mSize;
return a;
},
__class__: tg,
__properties__: {
get_size: 'get_size',
get_loadFactor: 'get_loadFactor'
}
};
var nk = function (a) {
this.mObject = a;
this.mData = a.mData;
this.mI = 0;
this.mS = a.capacity;
this.scan();
};
h['polygonal.ds.IntIntHashTableValIterator'] = nk;
nk.__name__ = 'polygonal.ds.IntIntHashTableValIterator';
nk.__interfaces__ = [Ig];
nk.prototype = {
mObject: null,
mI: null,
mS: null,
mData: null,
free: function () {
this.mData = this.mObject = null;
},
reset: function () {
this.mData = this.mObject.mData;
this.mI = 0;
this.mS = this.mObject.capacity;
this.scan();
return this;
},
hasNext: function () {
return this.mI < this.mS;
},
next: function () {
var a = this.mData[3 * this.mI++ + 1];
this.scan();
return a;
},
remove: function () {
throw M.thrown('unsupported operation');
},
scan: function () {
for (; this.mI < this.mS && -2147483648 == this.mData[3 * this.mI + 1]; ) this.mI++;
},
__class__: nk
};
var wn = function (a) {
this.mObject = a;
this.mData = a.mData;
this.mI = 0;
this.mS = a.capacity;
this.scan();
};
h['polygonal.ds.IntIntHashTableKeyIterator'] = wn;
wn.__name__ = 'polygonal.ds.IntIntHashTableKeyIterator';
wn.__interfaces__ = [Ig];
wn.prototype = {
mObject: null,
mI: null,
mS: null,
mData: null,
free: function () {
this.mData = this.mObject = null;
},
reset: function () {
this.mData = this.mObject.mData;
this.mI = 0;
this.mS = this.mObject.capacity;
this.scan();
return this;
},
hasNext: function () {
return this.mI < this.mS;
},
next: function () {
var a = this.mData[3 * this.mI++];
this.scan();
return a;
},
remove: function () {
throw M.thrown('unsupported operation');
},
scan: function () {
for (; this.mI < this.mS && -2147483648 == this.mData[3 * this.mI + 1]; ) this.mI++;
},
__class__: wn
};
var ni = function (a, b) {
null == a && (a = 16);
this.mIterator = null;
this.mSize = 0;
this.reuseIterator = !1;
this.growthRate = -2;
this.key = sg.next();
this.capacity = this.mInitialCapacity = 1 > a ? 1 : a;
null != b && (this.capacity = b.length);
this.mData = Array(this.capacity);
if (null != b)
for (a = 0; a < b.length; ) {
var c = b[a];
++a;
this.set(c);
}
};
h['polygonal.ds.ListSet'] = ni;
ni.__name__ = 'polygonal.ds.ListSet';
ni.__interfaces__ = [jj];
ni.prototype = {
key: null,
capacity: null,
growthRate: null,
reuseIterator: null,
mData: null,
mInitialCapacity: null,
mSize: null,
mIterator: null,
reserve: function (a) {
a > this.capacity && ((this.capacity = a), this.resizeContainer(a));
return this;
},
pack: function () {
if (this.capacity > this.mInitialCapacity) {
var a = this.mInitialCapacity,
b = this.mSize;
this.capacity = a > b ? a : b;
this.resizeContainer(this.capacity);
} else {
a = this.mData;
b = this.mSize;
for (var c = this.capacity; b < c; ) {
var d = b++;
a[d] = null;
}
}
return this;
},
iter: function (a) {
Ea._assert(null != a, 'f != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/ListSet.hx',
lineNumber: 136,
className: 'polygonal.ds.ListSet',
methodName: 'iter'
});
for (var b = this.mData, c = 0, d = this.mSize; c < d; ) {
var f = c++;
a(b[f]);
}
return this;
},
toString: function () {
var a = '' + B.string('[ ListSet size=' + this.mSize);
if (this.isEmpty()) return a + ' ]';
a += '\n';
for (var b = 0, c = this.mSize; b < c; ) {
var d = b++;
a += ' ';
a += B.string(B.string(this.mData[d]));
a += '\n';
}
return a + ']';
},
has: function (a) {
if (this.isEmpty()) return !1;
for (var b = this.mData, c = 0, d = this.mSize; c < d; ) {
var f = c++;
if (b[f] == a) return !0;
}
return !1;
},
set: function (a) {
for (var b = this.mData, c = 0, d = this.mSize; c < d; ) {
var f = c++;
if (b[f] == a) return !1;
}
this.mSize == this.capacity && (this.grow(), (b = this.mData));
b[this.mSize++] = a;
return !0;
},
unset: function (a) {
return this.remove(a);
},
merge: function (a, b, c) {
if (b) for (a = a.iterator(); a.hasNext(); ) (b = a.next()), this.set(b);
else if (null != c) for (a = a.iterator(); a.hasNext(); ) (b = a.next()), this.set(c(b));
else
for (a = a.iterator(); a.hasNext(); )
(b = a.next()),
Ea._assert(
x.__implements(b, rg),
'element is not of type Cloneable(Std.isOfType(val, Cloneable))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/ListSet.hx',
lineNumber: 230,
className: 'polygonal.ds.ListSet',
methodName: 'merge'
}
),
this.set(x.__cast(b, rg).clone());
},
get_size: function () {
return this.mSize;
},
free: function () {
Kb.nullify(this.mData);
this.mData = null;
null != this.mIterator && (this.mIterator.free(), (this.mIterator = null));
},
contains: function (a) {
return this.has(a);
},
remove: function (a) {
for (var b = this.mData, c = 0, d = this.mSize; c < d; ) {
var f = c++;
if (b[f] == a) return (b[f] = this.mData[--this.mSize]), !0;
}
return !1;
},
clear: function (a) {
null == a && (a = !1);
a && Kb.nullify(this.mData);
this.mSize = 0;
},
iterator: function () {
if (this.reuseIterator) {
if (null == this.mIterator) this.mIterator = new ok(this);
else {
var a = this.mIterator;
a.mData = a.mObject.mData;
a.mS = a.mObject.mSize;
a.mI = 0;
}
return this.mIterator;
}
return new ok(this);
},
isEmpty: function () {
return 0 == this.mSize;
},
toArray: function () {
return Kb.toArray(this.mData, 0, this.mSize, []);
},
clone: function (a, b) {
null == a && (a = !0);
var c = new ni();
c.capacity = this.mSize;
c.mSize = this.mSize;
c.mData = Array(this.mSize);
var d = this.mData,
f = c.mData;
if (a) Kb.blit(d, 0, f, 0, this.mSize);
else if (null == b) {
a = 0;
for (var g = this.mSize; a < g; ) {
var k = a++;
Ea._assert(
x.__implements(d[k], rg),
'element is not of type Cloneable(Std.isOfType(src.get(i), Cloneable))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/ListSet.hx',
lineNumber: 359,
className: 'polygonal.ds.ListSet',
methodName: 'clone'
}
);
f[k] = x.__cast(d[k], rg).clone();
}
} else for (a = 0, g = this.mSize; a < g; ) (k = a++), (f[k] = b(d[k]));
return c;
},
grow: function () {
this.capacity = Hg.compute(this.growthRate, this.capacity);
this.resizeContainer(this.capacity);
},
resizeContainer: function (a) {
a = Array(a);
Kb.blit(this.mData, 0, a, 0, this.mSize);
this.mData = a;
},
__class__: ni,
__properties__: { get_size: 'get_size' }
};
var ok = function (a) {
this.mObject = a;
this.mData = this.mObject.mData;
this.mS = this.mObject.mSize;
this.mI = 0;
};
h['polygonal.ds.ListSetIterator'] = ok;
ok.__name__ = 'polygonal.ds.ListSetIterator';
ok.__interfaces__ = [Ig];
ok.prototype = {
mObject: null,
mData: null,
mI: null,
mS: null,
free: function () {
this.mData = this.mObject = null;
},
reset: function () {
this.mData = this.mObject.mData;
this.mS = this.mObject.mSize;
this.mI = 0;
return this;
},
hasNext: function () {
return this.mI < this.mS;
},
next: function () {
return this.mData[this.mI++];
},
remove: function () {
Ea._assert(0 < this.mI, 'call next() before removing an element(mI > 0)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/ListSet.hx',
lineNumber: 430,
className: 'polygonal.ds.ListSetIterator',
methodName: 'remove'
});
this.mData[this.mI] = this.mData[--this.mS];
},
__class__: ok
};
var fb = function () {};
h['polygonal.ds.Printf'] = fb;
fb.__name__ = 'polygonal.ds.Printf';
fb.init = function () {
var a = Array(40);
fb._padChars = a;
fb._padChars[0] = U.rpad('', '0', 0);
fb._padChars[1] = U.rpad('', '0', 1);
fb._padChars[2] = U.rpad('', '0', 2);
fb._padChars[3] = U.rpad('', '0', 3);
fb._padChars[4] = U.rpad('', '0', 4);
fb._padChars[5] = U.rpad('', '0', 5);
fb._padChars[6] = U.rpad('', '0', 6);
fb._padChars[7] = U.rpad('', '0', 7);
fb._padChars[8] = U.rpad('', '0', 8);
fb._padChars[9] = U.rpad('', '0', 9);
fb._padChars[10] = U.rpad('', '0', 10);
fb._padChars[11] = U.rpad('', '0', 11);
fb._padChars[12] = U.rpad('', '0', 12);
fb._padChars[13] = U.rpad('', '0', 13);
fb._padChars[14] = U.rpad('', '0', 14);
fb._padChars[15] = U.rpad('', '0', 15);
fb._padChars[16] = U.rpad('', '0', 16);
fb._padChars[17] = U.rpad('', '0', 17);
fb._padChars[18] = U.rpad('', '0', 18);
fb._padChars[19] = U.rpad('', '0', 19);
for (a = 0; 20 > a; ) {
var b = a++;
fb._padChars[b + 20] = U.rpad('', ' ', b);
}
a = Array(64);
fb._tmp = a;
};
fb.format = function (a, b) {
fb._initialized || ((fb._initialized = !0), fb.init());
var c = new Sa(),
d = 0,
f = [],
g = 0;
for (a = fb.tokenize(a, f); g < a; ) {
var k = g++,
l = f[k];
switch (l._hx_index) {
case 0:
k = l.string;
c.b += null == k ? 'null' : '' + k;
break;
case 1:
k = l.type;
l = l.args;
if (null == l.width) {
if (!x.__instanceof(b[d], Ab)) throw M.thrown(new hh("invalid 'width' argument"));
l.width = b[d++];
}
if (null == l.precision) {
if (!x.__instanceof(b[d], Ab))
throw M.thrown(new hh("invalid 'precision' argument"));
l.precision = b[d++];
}
if (-1 < l.pos) {
if (l.pos > b.length - 1) throw M.thrown(new hh('argument index out of range'));
var h = b[l.pos];
} else h = b[d++];
null == h && (h = 'null');
switch (k._hx_index) {
case 0:
switch (k.type._hx_index) {
case 0:
fb.formatCharacter(h, l, c);
break;
case 1:
fb.formatSignedDecimal(h, l, c);
break;
case 2:
fb.formatUnsignedDecimal(h, l, c);
break;
case 3:
fb.formatOctal(h, l, c);
break;
case 4:
fb.formatHexadecimal(h, l, c);
break;
case 5:
fb.formatBinary(h, l, c);
}
break;
case 1:
switch (k.floatType._hx_index) {
case 0:
fb.formatFloat(h, l, c);
break;
case 1:
fb.formatScientific(h, l, c);
break;
case 2:
fb.formatNaturalFloat(h, l, c);
}
break;
case 2:
fb.formatString(h, l, c);
break;
case 3:
throw M.thrown(new hh("specifier 'p' is not supported"));
case 4:
throw M.thrown(new hh("specifier 'n' is not supported"));
}
break;
case 2:
k = l.name;
if (!Object.prototype.hasOwnProperty.call(b[0], k))
throw M.thrown(new hh('no field named "' + k + '" found'));
c.b += B.string(B.string(Z.field(b[0], k)));
++d;
break;
case 3:
throw M.thrown(new hh('Invalid format specifier.'));
}
}
return c.b;
};
fb.tokenize = function (a, b) {
for (var c = 0, d, f = 0, g = new Sa(), k = a.length; c < k; )
if (((d = a.charCodeAt(c++)), 37 == d))
if (((d = a.charCodeAt(c++)), 37 == d)) g.b += String.fromCodePoint(d);
else {
0 < g.b.length && ((b[f++] = Kg.Raw(g.b)), (g = new Sa()));
if (40 == d)
if (((d = a.indexOf(')', c)), -1 == d)) d = Kg.Unknown('named parameter', c);
else {
var l = A.substr(a, c, d - c);
c = d + 1;
d = Kg.Property(l);
}
else {
l = 0;
null == l && (l = 0);
l = new lp(l, -1, -1, -1);
a: for (; 32 <= d && 48 >= d; )
switch (d) {
case 32:
d = a.charCodeAt(c++);
l.flags |= 1 << Va.Space._hx_index;
break;
case 35:
d = a.charCodeAt(c++);
l.flags |= 1 << Va.Sharp._hx_index;
break;
case 43:
d = a.charCodeAt(c++);
l.flags |= 1 << Va.Plus._hx_index;
break;
case 45:
d = a.charCodeAt(c++);
l.flags |= 1 << Va.Minus._hx_index;
break;
case 48:
d = a.charCodeAt(c++);
l.flags |= 1 << Va.Zero._hx_index;
break;
default:
break a;
}
0 != (l.flags & (1 << Va.Minus._hx_index)) &&
0 != (l.flags & (1 << Va.Zero._hx_index)) &&
(l.flags &= -1 - (1 << Va.Zero._hx_index));
0 != (l.flags & (1 << Va.Space._hx_index)) &&
0 != (l.flags & (1 << Va.Plus._hx_index)) &&
(l.flags &= -1 - (1 << Va.Space._hx_index));
if (42 == d) (l.width = null), (d = a.charCodeAt(c++));
else if (48 <= d && 57 >= d) {
for (var h = 0; 48 <= d && 57 >= d; )
(h = d - 48 + 10 * h), (d = a.charCodeAt(c++));
l.width = h;
if (36 == d)
if (((l.pos = h - 1), (l.width = -1), (d = a.charCodeAt(c++)), 42 == d))
(l.width = null), (d = a.charCodeAt(c++));
else if (48 <= d && 57 >= d) {
for (h = 0; 48 <= d && 57 >= d; )
(h = d - 48 + 10 * h), (d = a.charCodeAt(c++));
l.width = h;
}
}
if (46 == d)
if (((d = a.charCodeAt(c++)), 42 == d))
(l.precision = null), (d = a.charCodeAt(c++));
else {
h = 0;
if (48 <= d && 57 >= d)
for (; 48 <= d && 57 >= d; ) (h = d - 48 + 10 * h), (d = a.charCodeAt(c++));
l.precision = h;
}
a: for (; 76 <= d && 108 >= d; )
switch (d) {
case 76:
d = a.charCodeAt(c++);
l.flags |= 1 << Va.LengthUpperCaseL._hx_index;
break;
case 104:
d = a.charCodeAt(c++);
l.flags |= 1 << Va.LengthH._hx_index;
break;
case 108:
d = a.charCodeAt(c++);
l.flags |= 1 << Va.LengthLowerCaseL._hx_index;
break;
default:
break a;
}
if (69 <= d && 120 >= d) {
switch (d) {
case 69:
l.flags |= 1 << Va.UpperCase._hx_index;
h = re.FmtFloat(oi.FScientific);
break;
case 71:
l.flags |= 1 << Va.UpperCase._hx_index;
h = re.FmtFloat(oi.FNatural);
break;
case 88:
l.flags |= 1 << Va.UpperCase._hx_index;
h = re.FmtInt(Af.IHex);
break;
case 98:
h = re.FmtInt(Af.IBin);
break;
case 99:
h = re.FmtInt(Af.ICharacter);
break;
case 100:
h = re.FmtInt(Af.ISignedDecimal);
break;
case 101:
h = re.FmtFloat(oi.FScientific);
break;
case 102:
h = re.FmtFloat(oi.FNormal);
break;
case 103:
h = re.FmtFloat(oi.FNatural);
break;
case 105:
h = re.FmtInt(Af.ISignedDecimal);
break;
case 110:
h = re.FmtNothing;
break;
case 111:
h = re.FmtInt(Af.IOctal);
break;
case 112:
h = re.FmtPointer;
break;
case 115:
h = re.FmtString;
break;
case 117:
h = re.FmtInt(Af.IUnsignedDecimal);
break;
case 120:
h = re.FmtInt(Af.IHex);
break;
default:
h = null;
}
d = null == h ? Kg.Unknown(String.fromCodePoint(d), c) : Kg.Tag(h, l);
} else d = Kg.Unknown(String.fromCodePoint(d), c);
}
b[f++] = d;
}
else g.b += String.fromCodePoint(d);
0 < g.b.length && (b[f++] = Kg.Raw(g.b));
return f;
};
fb.formatBinary = function (a, b, c) {
var d = b.flags,
f = b.precision;
b = b.width;
0 != (d & (1 << Va.LengthH._hx_index)) && (a &= 65535);
if (0 == a) {
if (0 == f) return;
d &= -1 - (1 << Va.Sharp._hx_index);
}
-1 == f && (f = 1);
for (var g = fb._tmp, k = 0; (g[k++] = a & 1), (a >>>= 1), 0 < a; );
a = k;
if (0 != (d & (1 << Va.Minus._hx_index))) {
0 != (d & (1 << Va.Sharp._hx_index)) && (c.b += '0b');
if (f > k) for (var l = 0, h = f - k; l < h; ) l++, (c.b += '0');
for (; -1 < --a; ) c.b += String.fromCodePoint(48 + g[a]);
0 != (d & (1 << Va.Sharp._hx_index)) && (b -= 2);
f > k && (k = f);
if (b > k) for (l = 0, h = b - k; l < h; ) l++, (c.b += ' ');
} else {
h = k;
f > h && (h = f);
0 != (d & (1 << Va.Sharp._hx_index)) && (b -= 2);
if (b > h)
if (0 != (d & (1 << Va.Zero._hx_index)) && 1 == f)
for (l = 0, h = b - h; l < h; ) l++, (c.b += '0');
else for (l = 0, h = b - h; l < h; ) l++, (c.b += ' ');
0 != (d & (1 << Va.Sharp._hx_index)) && (c.b += '0b');
if (f > k) for (l = 0, h = f - k; l < h; ) l++, (c.b += '0');
for (; -1 < --a; ) c.b += String.fromCodePoint(48 + g[a]);
}
};
fb.formatOctal = function (a, b, c) {
var d = b.flags,
f = b.precision;
b = b.width;
0 != (d & (1 << Va.LengthH._hx_index)) && (a &= 65535);
if (0 == a) {
if (0 == f) {
c.b += B.string(0 != (d & (1 << Va.Sharp._hx_index)) ? '0' : '');
return;
}
d &= -1 - (1 << Va.Sharp._hx_index);
}
for (var g = fb._tmp, k = 0; (g[k++] = a & 7), (a >>>= 3), 0 < a; );
a = k;
-1 != f
? 0 != (d & (1 << Va.Zero._hx_index)) &&
((d &= -1 - (1 << Va.Zero._hx_index)), (d |= 1 << Va.Space._hx_index))
: (f = 1);
if (0 != (d & (1 << Va.Minus._hx_index))) {
0 != (d & (1 << Va.Sharp._hx_index)) && ((c.b += '0'), ++k);
if (f > k) for (var l = 0, h = f - k; l < h; ) l++, (c.b += '0');
for (; -1 < --a; ) (d = String.fromCodePoint(48 + g[a])), (c.b += B.string(d));
f > k && (k = f);
if (b > k) for (l = 0, h = b - k; l < h; ) l++, (c.b += ' ');
} else {
0 != (d & (1 << Va.Sharp._hx_index)) && ++k;
h = k;
f > h && (h = f);
if (b > h)
if (0 != (d & (1 << Va.Zero._hx_index)))
for (l = 0, h = b - h; l < h; ) l++, (c.b += '0');
else for (l = 0, h = b - h; l < h; ) l++, (c.b += ' ');
0 != (d & (1 << Va.Sharp._hx_index)) && (c.b += '0');
if (f > k) for (l = 0, h = f - k; l < h; ) l++, (c.b += '0');
for (; -1 < --a; ) (d = String.fromCodePoint(48 + g[a])), (c.b += B.string(d));
}
};
fb.formatHexadecimal = function (a, b, c) {
var d = b.flags,
f = b.precision;
b = b.width;
0 != (d & (1 << Va.LengthH._hx_index)) && (a &= 65535);
if (0 == a) {
if (0 == f) return;
d &= -1 - (1 << Va.Sharp._hx_index);
}
-1 == f && (f = 1);
for (var g = fb._tmp, k = 0; (g[k++] = a & 15), (a >>>= 4), 0 < a; );
a = k;
if (0 != (d & (1 << Va.Minus._hx_index))) {
0 != (d & (1 << Va.Sharp._hx_index)) &&
(c.b = 0 != (d & (1 << Va.UpperCase._hx_index)) ? c.b + '0X' : c.b + '0x');
if (f > k) for (var l = 0, h = f - k; l < h; ) l++, (c.b += '0');
for (l = 0 != (d & (1 << Va.UpperCase._hx_index)) ? 65 : 97; -1 < --a; )
(h = g[a]),
10 > h
? ((h = String.fromCodePoint(48 + h)), (c.b += B.string(h)))
: ((h = String.fromCodePoint(l + (h - 10))), (c.b += B.string(h)));
0 != (d & (1 << Va.Sharp._hx_index)) && (b -= 2);
f > k && (k = f);
if (b > k) for (l = 0, h = b - k; l < h; ) l++, (c.b += ' ');
} else {
h = k;
f > h && (h = f);
0 != (d & (1 << Va.Sharp._hx_index)) && (b -= 2);
if (b > h)
if (0 != (d & (1 << Va.Zero._hx_index)) && 1 == f)
for (l = 0, h = b - h; l < h; ) l++, (c.b += '0');
else for (l = 0, h = b - h; l < h; ) l++, (c.b += ' ');
0 != (d & (1 << Va.Sharp._hx_index)) &&
(c.b = 0 != (d & (1 << Va.UpperCase._hx_index)) ? c.b + '0X' : c.b + '0x');
if (f > k) for (l = 0, h = f - k; l < h; ) l++, (c.b += '0');
for (l = 0 != (d & (1 << Va.UpperCase._hx_index)) ? 65 : 97; -1 < --a; )
(h = g[a]),
10 > h
? ((h = String.fromCodePoint(48 + h)), (c.b += B.string(h)))
: ((h = String.fromCodePoint(l + (h - 10))), (c.b += B.string(h)));
}
};
fb.formatSignedDecimal = function (a, b, c) {
var d = b.flags,
f = b.precision;
b = b.width;
if (0 != f || 0 != a) {
0 != (d & (1 << Va.LengthH._hx_index)) && (a &= 65535);
var g = B.string(0 > a ? -a : a),
k = g.length;
a =
0 > a
? '-'
: 0 != (d & (1 << Va.Plus._hx_index))
? '+'
: 0 != (d & (1 << Va.Space._hx_index))
? ' '
: null;
var l = null != a;
if (0 != (d & (1 << Va.Minus._hx_index))) {
l && (c.b += null == a ? 'null' : '' + a);
if (f > k) for (var h = 0, n = f - k; h < n; ) h++, (c.b += '0');
c.b += B.string(g);
f > k && (k = f);
k += l ? 1 : 0;
if (b > k) for (h = 0, n = b - k; h < n; ) h++, (c.b += ' ');
} else {
n = k + (l ? 1 : 0);
f > n && (n = f);
if (b > n)
if (0 != (d & (1 << Va.Zero._hx_index)))
for (l && (c.b += null == a ? 'null' : '' + a), h = 0, n = b - n; h < n; )
h++, (c.b += '0');
else for (h = 0, n = b - n; h < n; ) h++, (c.b += ' ');
l && 0 == (d & (1 << Va.Zero._hx_index)) && (c.b += null == a ? 'null' : '' + a);
if (f > k) for (h = 0, n = f - k; h < n; ) h++, (c.b += '0');
c.b += B.string(g);
}
}
};
fb.formatUnsignedDecimal = function (a, b, c) {
if (0 <= a) fb.formatSignedDecimal(a, b, c);
else {
a = new cb(0, a);
a = ax.toString(a);
var d = a.length,
f = b.flags,
g = b.precision;
b = b.width;
if (0 != (f & (1 << Va.Minus._hx_index))) {
if (g > d) {
f = 0;
for (var k = g - d; f < k; ) f++, (c.b += '0');
}
c.b += null == a ? 'null' : '' + a;
g > d && (d = g);
if (b > d) for (f = 0, k = b - d; f < k; ) f++, (c.b += ' ');
} else {
k = d;
g > k && (k = g);
if (b > k)
if (0 != (f & (1 << Va.Zero._hx_index)))
for (f = 0, k = b - k; f < k; ) f++, (c.b += '0');
else for (f = 0, k = b - k; f < k; ) f++, (c.b += ' ');
if (g > d) for (f = 0, k = g - d; f < k; ) f++, (c.b += '0');
c.b += null == a ? 'null' : '' + a;
}
}
};
fb.formatNaturalFloat = function (a, b, c) {
var d = new Sa();
fb.formatFloat(a, b, d);
var f = d.b;
d = new Sa();
fb.formatScientific(a, b, d);
a = d.b;
f = f.length <= a.length ? f : a;
c.b += null == f ? 'null' : '' + f;
};
fb.formatScientific = function (a, b, c) {
var d = b.flags,
f = b.precision;
-1 == f && (f = fb.DEFAULT_PRECISION);
var g,
k = '';
if (0 == a) {
var l = (g = 0);
k += '0';
if (0 < f) {
k += '.';
for (var h = 0, n = f; h < n; ) h++, (k += '0');
}
} else
(h = Math),
(g = 0 < a ? 1 : 0 > a ? -1 : 0),
(a = h.abs(a)),
(l = h.floor(Math.log(a) / 2.302585092994046)),
(a /= h.pow(10, l)),
(h = h.pow(0.1, f)),
(a = Math.round(a / h) * h);
0 != a && (k += A.substr(null == a ? 'null' : '' + a, 0, f + 2));
k += 0 != (d & (1 << Va.UpperCase._hx_index)) ? 'E' : 'e';
k += 0 <= l ? '+' : '-';
a = B.string(0 > l ? -l : l);
n = fb.DEFAULT_NUM_EXP_DIGITS - a.length;
if (1 > n) h = a;
else {
if (30 < n) for (f = l = '0', h = 0, --n; h < n; ) h++, (f += l);
else f = fb._padChars[n];
h = f + a;
}
k += h;
(a =
-1 == g || 0 != (d & (1 << Va.Plus._hx_index)) || 0 != (d & (1 << Va.Space._hx_index))) &&
0 == (d & (1 << Va.Zero._hx_index)) &&
(k = (-1 == g ? '-' : 0 != (d & (1 << Va.Plus._hx_index)) ? '+' : ' ') + k);
if (
0 < b.width &&
((h = b.width),
a && 0 != (d & (1 << Va.Zero._hx_index)) && --h,
(b = 0 != (d & (1 << Va.Zero._hx_index)) ? 0 : 20),
(n = h - k.length),
1 <= n)
) {
if (30 < n) for (f = l = 0 == b ? '0' : ' ', h = 0, --n; h < n; ) h++, (f += l);
else f = fb._padChars[b + n];
k = f + k;
}
a &&
0 != (d & (1 << Va.Zero._hx_index)) &&
(k = (-1 == g ? '-' : 0 != (d & (1 << Va.Plus._hx_index)) ? '+' : ' ') + k);
c.b += null == k ? 'null' : '' + k;
};
fb.formatFloat = function (a, b, c) {
var d = b.flags,
f = b.precision;
-1 == f && (f = fb.DEFAULT_PRECISION);
b = b.width;
var g = 0 > a;
0 == f
? ((a = B.string(Math.round(a))), 0 != (d & (1 << Va.Sharp._hx_index)) && (a += '.'))
: (a = a.toFixed(f));
var k = a.length;
g && -1 < a.indexOf('-') && (a = A.substr(a, 1, null));
f = null;
0 == (d & (1 << Va.Plus._hx_index)) || g
? 0 != (d & (1 << Va.Space._hx_index))
? ((f = ' '), ++k)
: g && (f = '-')
: ((f = '+'), ++k);
g = null != f;
if (0 != (d & (1 << Va.Minus._hx_index))) {
if (
(g && (c.b += null == f ? 'null' : '' + f), (c.b += null == a ? 'null' : '' + a), b > k)
)
for (d = 0, b -= k; d < b; ) d++, (c.b += ' ');
} else {
if (b > k)
if (0 != (d & (1 << Va.Zero._hx_index)))
for (g && ((c.b += null == f ? 'null' : '' + f), (g = !1)), d = 0, b -= k; d < b; )
d++, (c.b += '0');
else for (d = 0, b -= k; d < b; ) d++, (c.b += ' ');
g && (c.b += null == f ? 'null' : '' + f);
c.b += null == a ? 'null' : '' + a;
}
};
fb.formatCharacter = function (a, b, c) {
if (0 != (b.flags & (1 << Va.Minus._hx_index))) {
a = String.fromCodePoint(a);
c.b += B.string(a);
var d = 0;
for (b = b.width - 1; d < b; ) d++, (c.b += ' ');
} else {
d = 0;
for (b = b.width - 1; d < b; ) d++, (c.b += ' ');
a = String.fromCodePoint(a);
c.b += B.string(a);
}
};
fb.formatString = function (a, b, c) {
var d = a.length,
f = b.precision;
if (0 != (b.flags & (1 << Va.Minus._hx_index))) {
-1 != f
? ((c.b += null == f ? A.substr(a, 0, null) : A.substr(a, 0, f)), (d = f))
: (c.b += null == a ? 'null' : '' + a);
var g = 0;
for (b = b.width - d; g < b; ) g++, (c.b += ' ');
} else {
-1 != f && (d = f);
g = 0;
for (b = b.width - d; g < b; ) g++, (c.b += ' ');
c.b =
-1 != f
? c.b + (null == f ? A.substr(a, 0, null) : A.substr(a, 0, f))
: c.b + (null == a ? 'null' : '' + a);
}
};
fb.pad = function (a, b, c, d) {
b -= a.length;
if (1 > b) return a;
if (30 < b) {
var e = 0 == c ? '0' : ' ';
c = e;
var g = 0;
for (--b; g < b; ) g++, (c += e);
} else c = fb._padChars[c + b];
return 0 < d ? a + c : c + a;
};
var hh = function (a) {
this.message = a;
};
h['polygonal.ds.PrintfError'] = hh;
hh.__name__ = 'polygonal.ds.PrintfError';
hh.prototype = {
message: null,
toString: function () {
return this.message;
},
__class__: hh
};
var lp = function (a, b, c, d) {
this.flags = a;
this.pos = b;
this.width = c;
this.precision = d;
};
h['polygonal.ds._Printf.FormatArgs'] = lp;
lp.__name__ = 'polygonal.ds._Printf.FormatArgs';
lp.prototype = {
flags: null,
pos: null,
width: null,
precision: null,
__class__: lp
};
var Va = (E['polygonal.ds._Printf.FormatFlag'] = {
__ename__: 'polygonal.ds._Printf.FormatFlag',
__constructs__: null,
Minus: {
_hx_name: 'Minus',
_hx_index: 0,
__enum__: 'polygonal.ds._Printf.FormatFlag',
toString: w
},
Plus: {
_hx_name: 'Plus',
_hx_index: 1,
__enum__: 'polygonal.ds._Printf.FormatFlag',
toString: w
},
Space: {
_hx_name: 'Space',
_hx_index: 2,
__enum__: 'polygonal.ds._Printf.FormatFlag',
toString: w
},
Sharp: {
_hx_name: 'Sharp',
_hx_index: 3,
__enum__: 'polygonal.ds._Printf.FormatFlag',
toString: w
},
Zero: {
_hx_name: 'Zero',
_hx_index: 4,
__enum__: 'polygonal.ds._Printf.FormatFlag',
toString: w
},
LengthH: {
_hx_name: 'LengthH',
_hx_index: 5,
__enum__: 'polygonal.ds._Printf.FormatFlag',
toString: w
},
LengthUpperCaseL: {
_hx_name: 'LengthUpperCaseL',
_hx_index: 6,
__enum__: 'polygonal.ds._Printf.FormatFlag',
toString: w
},
LengthLowerCaseL: {
_hx_name: 'LengthLowerCaseL',
_hx_index: 7,
__enum__: 'polygonal.ds._Printf.FormatFlag',
toString: w
},
UpperCase: {
_hx_name: 'UpperCase',
_hx_index: 8,
__enum__: 'polygonal.ds._Printf.FormatFlag',
toString: w
}
});
Va.__constructs__ = [
Va.Minus,
Va.Plus,
Va.Space,
Va.Sharp,
Va.Zero,
Va.LengthH,
Va.LengthUpperCaseL,
Va.LengthLowerCaseL,
Va.UpperCase
];
var Kg = (E['polygonal.ds._Printf.FormatToken'] = {
__ename__: 'polygonal.ds._Printf.FormatToken',
__constructs__: null,
Raw:
((I = function (a) {
return {
_hx_index: 0,
string: a,
__enum__: 'polygonal.ds._Printf.FormatToken',
toString: w
};
}),
(I._hx_name = 'Raw'),
(I.__params__ = ['string']),
I),
Tag:
((I = function (a, b) {
return {
_hx_index: 1,
type: a,
args: b,
__enum__: 'polygonal.ds._Printf.FormatToken',
toString: w
};
}),
(I._hx_name = 'Tag'),
(I.__params__ = ['type', 'args']),
I),
Property:
((I = function (a) {
return {
_hx_index: 2,
name: a,
__enum__: 'polygonal.ds._Printf.FormatToken',
toString: w
};
}),
(I._hx_name = 'Property'),
(I.__params__ = ['name']),
I),
Unknown:
((I = function (a, b) {
return {
_hx_index: 3,
string: a,
pos: b,
__enum__: 'polygonal.ds._Printf.FormatToken',
toString: w
};
}),
(I._hx_name = 'Unknown'),
(I.__params__ = ['string', 'pos']),
I)
});
Kg.__constructs__ = [Kg.Raw, Kg.Tag, Kg.Property, Kg.Unknown];
var re = (E['polygonal.ds._Printf.FormatDataType'] = {
__ename__: 'polygonal.ds._Printf.FormatDataType',
__constructs__: null,
FmtInt:
((I = function (a) {
return {
_hx_index: 0,
type: a,
__enum__: 'polygonal.ds._Printf.FormatDataType',
toString: w
};
}),
(I._hx_name = 'FmtInt'),
(I.__params__ = ['type']),
I),
FmtFloat:
((I = function (a) {
return {
_hx_index: 1,
floatType: a,
__enum__: 'polygonal.ds._Printf.FormatDataType',
toString: w
};
}),
(I._hx_name = 'FmtFloat'),
(I.__params__ = ['floatType']),
I),
FmtString: {
_hx_name: 'FmtString',
_hx_index: 2,
__enum__: 'polygonal.ds._Printf.FormatDataType',
toString: w
},
FmtPointer: {
_hx_name: 'FmtPointer',
_hx_index: 3,
__enum__: 'polygonal.ds._Printf.FormatDataType',
toString: w
},
FmtNothing: {
_hx_name: 'FmtNothing',
_hx_index: 4,
__enum__: 'polygonal.ds._Printf.FormatDataType',
toString: w
}
});
re.__constructs__ = [re.FmtInt, re.FmtFloat, re.FmtString, re.FmtPointer, re.FmtNothing];
var Af = (E['polygonal.ds._Printf.IntType'] = {
__ename__: 'polygonal.ds._Printf.IntType',
__constructs__: null,
ICharacter: {
_hx_name: 'ICharacter',
_hx_index: 0,
__enum__: 'polygonal.ds._Printf.IntType',
toString: w
},
ISignedDecimal: {
_hx_name: 'ISignedDecimal',
_hx_index: 1,
__enum__: 'polygonal.ds._Printf.IntType',
toString: w
},
IUnsignedDecimal: {
_hx_name: 'IUnsignedDecimal',
_hx_index: 2,
__enum__: 'polygonal.ds._Printf.IntType',
toString: w
},
IOctal: {
_hx_name: 'IOctal',
_hx_index: 3,
__enum__: 'polygonal.ds._Printf.IntType',
toString: w
},
IHex: {
_hx_name: 'IHex',
_hx_index: 4,
__enum__: 'polygonal.ds._Printf.IntType',
toString: w
},
IBin: {
_hx_name: 'IBin',
_hx_index: 5,
__enum__: 'polygonal.ds._Printf.IntType',
toString: w
}
});
Af.__constructs__ = [
Af.ICharacter,
Af.ISignedDecimal,
Af.IUnsignedDecimal,
Af.IOctal,
Af.IHex,
Af.IBin
];
var oi = (E['polygonal.ds._Printf.FloatType'] = {
__ename__: 'polygonal.ds._Printf.FloatType',
__constructs__: null,
FNormal: {
_hx_name: 'FNormal',
_hx_index: 0,
__enum__: 'polygonal.ds._Printf.FloatType',
toString: w
},
FScientific: {
_hx_name: 'FScientific',
_hx_index: 1,
__enum__: 'polygonal.ds._Printf.FloatType',
toString: w
},
FNatural: {
_hx_name: 'FNatural',
_hx_index: 2,
__enum__: 'polygonal.ds._Printf.FloatType',
toString: w
}
});
oi.__constructs__ = [oi.FNormal, oi.FScientific, oi.FNatural];
var Ud = function () {};
h['polygonal.ds.tools.ArrayTools'] = Ud;
Ud.__name__ = 'polygonal.ds.tools.ArrayTools';
Ud.alloc = function (a) {
Ea._assert(0 <= a, 'len >= 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 37,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'alloc'
});
return Array(a);
};
Ud.trim = function (a, b) {
a.length > b && (a.length = b);
return a;
};
Ud.swap = function (a, b, c) {
Ea._assert(null != a, 'array != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 94,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'swap'
});
Ea._assert(0 <= b && b < a.length, '0 <= a && a < array.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 95,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'swap'
});
Ea._assert(0 <= c && c < a.length, '0 <= b && b < array.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 96,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'swap'
});
if (b != c) {
var d = a[b];
a[b] = a[c];
a[c] = d;
}
};
Ud.getFront = function (a, b) {
Ea._assert(null != a, 'array != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 113,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'getFront'
});
Ea._assert(0 <= b && b < a.length, '0 <= index && index < array.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 114,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'getFront'
});
Ea._assert(null != a, 'array != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 94,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'swap'
});
Ea._assert(0 <= b && b < a.length, '0 <= a && a < array.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 95,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'swap'
});
Ea._assert(0 < a.length, '0 <= b && b < array.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 96,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'swap'
});
if (0 != b) {
var c = a[b];
a[b] = a[0];
a[0] = c;
}
return a[0];
};
Ud.init = function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
d = 0 >= d ? a.length : c + d;
Ea._assert(0 <= c && c < a.length, 'min >= 0 && min < a.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 129,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'init'
});
for (
Ea._assert(d <= a.length, 'max <= a.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 130,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'init'
});
c < d;
)
a[c++] = b;
return a;
};
Ud.blit = function (a, b, c, d, f) {
if (0 < f)
if (
(Ea._assert(b < a.length, 'srcPos out of range(srcPos < src.length)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 145,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'blit'
}),
Ea._assert(d < c.length, 'dstPos out of range(dstPos < dst.length)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 146,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'blit'
}),
Ea._assert(
b + f <= a.length && d + f <= c.length,
'n out of range(srcPos + n <= src.length && dstPos + n <= dst.length)',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 147,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'blit'
}
),
a == c)
)
if (b < d) {
var e = b + f;
b = d + f;
for (var k = 0; k < f; ) k++, --e, --b, (a[b] = a[e]);
} else {
if (b > d) for (e = b, b = d, k = 0; k < f; ) k++, (a[b] = a[e]), ++e, ++b;
}
else if (0 == b && 0 == d) for (k = 0; k < f; ) (e = k++), (c[e] = a[e]);
else if (0 == b) for (k = 0; k < f; ) (e = k++), (c[d + e] = a[e]);
else if (0 == d) for (k = 0; k < f; ) (e = k++), (c[e] = a[b + e]);
else for (k = 0; k < f; ) (e = k++), (c[d + e] = a[b + e]);
};
Ud.iter = function (a, b, c) {
null == c && (c = 0);
0 == c && (c = a.length);
for (var d = 0; d < c; ) {
var f = d++;
b(a[f]);
}
};
Ud.forEach = function (a, b) {
for (var c = 0, d = a.length; c < d; ) {
var f = c++;
a[f] = b(a[f], f);
}
};
Ud.binarySearchCmp = function (a, b, c, d, f) {
Ea._assert(null != a, 'a != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 236,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'binarySearchCmp'
});
Ea._assert(null != f, 'comparator != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 237,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'binarySearchCmp'
});
Ea._assert(0 <= c && c < a.length, 'min >= 0 && min < a.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 238,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'binarySearchCmp'
});
Ea._assert(d < a.length, 'max < a.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 239,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'binarySearchCmp'
});
for (var e, k = d + 1; c < k; )
(e = c + ((k - c) >> 1)), 0 > f(a[e], b) ? (c = e + 1) : (k = e);
return c <= d && 0 == f(a[c], b) ? c : ~c;
};
Ud.binarySearchf = function (a, b, c, d) {
Ea._assert(null != a, 'a != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 265,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'binarySearchf'
});
Ea._assert(0 <= c && c < a.length, 'min >= 0 && min < a.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 266,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'binarySearchf'
});
Ea._assert(d < a.length, 'max < a.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 267,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'binarySearchf'
});
for (var e, g = d + 1; c < g; ) (e = c + ((g - c) >> 1)), a[e] < b ? (c = e + 1) : (g = e);
return c <= d && a[c] == b ? c : ~c;
};
Ud.binarySearchi = function (a, b, c, d) {
Ea._assert(null != a, 'a != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 293,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'binarySearchi'
});
Ea._assert(0 <= c && c < a.length, 'min >= 0 && min < a.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 294,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'binarySearchi'
});
Ea._assert(d < a.length, 'max < a.length', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 295,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'binarySearchi'
});
for (var e, g = d + 1; c < g; ) (e = c + ((g - c) >> 1)), a[e] < b ? (c = e + 1) : (g = e);
return c <= d && a[c] == b ? c : ~c;
};
Ud.shuffle = function (a, b) {
Ea._assert(null != a, 'a != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 320,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'shuffle'
});
var c = a.length;
if (null == b)
for (; 1 < --c; ) {
var d = (pi.f() * c) | 0,
f = a[c];
a[c] = a[d];
a[d] = f;
}
else {
Ea._assert(b.length >= a.length, 'insufficient random values(rvals.length >= a.length)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 335,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'shuffle'
});
for (var g = 0; 1 < --c; ) (d = (b[g++] * c) | 0), (f = a[c]), (a[c] = a[d]), (a[d] = f);
}
};
Ud.random = function (a) {
var b = a.length;
return 2 > b ? a[0] : a[(pi.f() * b) | 0];
};
Ud.sortRange = function (a, b, c, d, f) {
var e = a.length;
if (1 < e)
if (
(Ea._assert(
0 <= d && d <= e - 1 && d + f <= e,
'first out of range(first >= 0 && first <= k - 1 && first + n <= k)',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 370,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'sortRange'
}
),
Ea._assert(0 <= f && f <= e, 'n out of range(n >= 0 && n <= k)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 371,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'sortRange'
}),
c)
)
for (c = d + 1, f = d + f; c < f; ) {
var k = c++;
for (e = a[k]; k > d; ) {
var l = a[k - 1];
if (0 < b(l, e)) (a[k] = l), --k;
else break;
}
a[k] = e;
}
else Ud._quickSort(a, d, f, b);
};
Ud.quickPerm = function (a) {
for (var b = [], c = [], d = [], f, g, k = 0; k < a; ) (c[k] = k + 1), (d[k] = 0), ++k;
b.push(c.slice());
for (k = 1; k < a; )
d[k] < k
? ((f = (k % 2) * d[k]),
(g = c[f]),
(c[f] = c[k]),
(c[k] = g),
b.push(c.slice()),
d[k]++,
(k = 1))
: ((d[k] = 0), ++k);
return b;
};
Ud.equals = function (a, b, c) {
if (a.length != b.length) return !1;
for (var d = 0, f = a.length; d < f; ) {
if (!c(a[d], b[d])) return !1;
++d;
}
return !0;
};
Ud.split = function (a, b, c) {
Ea._assert(0 == b % c, 'n is not a multiple of k(n % k == 0)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 464,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'split'
});
for (var d = [], f = null, g = 0; g < b; ) {
var k = g++;
0 == k % c && ((f = []), (d[(k / c) | 0] = f));
f.push(a[k]);
}
return d;
};
Ud.pairwise = function (a, b, c) {
var d = 0;
for (
Ea._assert(0 == (c & 1), 'max & 1 == 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 489,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'pairwise'
});
d < c;
)
b(d, a[d], a[d + 1]), (d += 2);
};
Ud.bruteforce = function (a, b) {
for (var c = 0, d, f = a.length, g = f - 1, k; c < g; ) {
k = a[c];
for (d = c + 1; d < f; ) b(k, a[d]), ++d;
++c;
}
};
Ud._quickSort = function (a, b, c, d) {
var e = b + c - 1,
g = b,
k = e;
if (1 < c) {
var l = b + (c >> 1);
c = b + c - 1;
var h = a[b],
n = a[l],
t = a[c],
m = d(h, t);
l =
0 > m && 0 > d(h, n)
? 0 > d(n, t)
? l
: c
: 0 > d(n, h) && 0 > d(n, t)
? 0 > m
? b
: c
: 0 > d(t, h)
? l
: b;
c = a[l];
for (a[l] = a[b]; g < k; ) {
for (; 0 > d(c, a[k]) && g < k; ) --k;
k != g && ((a[g] = a[k]), ++g);
for (; 0 < d(c, a[g]) && g < k; ) ++g;
k != g && ((a[k] = a[g]), --k);
}
a[g] = c;
Ud._quickSort(a, b, g - b, d);
Ud._quickSort(a, g + 1, e - g, d);
}
};
var Ea = function () {};
h['polygonal.ds.tools.Assert'] = Ea;
Ea.__name__ = 'polygonal.ds.tools.Assert';
Ea._assert = function (a, b, c) {
if (!a)
throw (
((a = 'in file ' + c.fileName + ', line ' + c.lineNumber),
Error(
'Assertion failed' +
(null != b ? ': ' : ' ') +
(null == b ? a : '' + b + ' (' + a + ')')
))
);
};
var Hg = function () {};
h['polygonal.ds.tools.GrowthRate'] = Hg;
Hg.__name__ = 'polygonal.ds.tools.GrowthRate';
Hg.compute = function (a, b) {
Ea._assert(-3 <= a, 'invalid growth rate(rate >= -3)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/GrowthRate.hx',
lineNumber: 52,
className: 'polygonal.ds.tools.GrowthRate',
methodName: 'compute'
});
if (0 < a) b += a;
else
switch (a) {
case -3:
b <<= 1;
break;
case -2:
b = ((3 * b) >> 1) + 1;
break;
case -1:
a = b + 1;
b = (a >> 3) + (9 > a ? 3 : 6) + a;
break;
case 0:
throw M.thrown('out of space');
}
return b;
};
var Kb = function () {};
h['polygonal.ds.tools.NativeArrayTools'] = Kb;
Kb.__name__ = 'polygonal.ds.tools.NativeArrayTools';
Kb.alloc = function (a) {
return Array(a);
};
Kb.get = function (a, b) {
return a[b];
};
Kb.set = function (a, b, c) {
a[b] = c;
};
Kb.size = function (a) {
return a.length;
};
Kb.toArray = function (a, b, c, d) {
Ea._assert(
0 <= b && b < a.length,
'first index out of range(first >= 0 && first < size(src))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 140,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'toArray'
}
);
Ea._assert(
0 <= c && b + c <= a.length,
'len out of range(len >= 0 && first + len <= size(src))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 141,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'toArray'
}
);
if (0 == c) return [];
Ea._assert(0 <= c, 'len >= 0', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx',
lineNumber: 37,
className: 'polygonal.ds.tools.ArrayTools',
methodName: 'alloc'
});
d = Array(c);
if (0 == b)
for (var e = 0; e < c; ) {
var g = e++;
d[g] = a[g];
}
else for (e = b, c = b + c; e < c; ) (g = e++), (d[g - b] = a[g]);
return d;
};
Kb.ofArray = function (a) {
return a.slice(0, a.length);
};
Kb.blit = function (a, b, c, d, f) {
if (0 < f)
if (
(Ea._assert(b < a.length, 'srcPos out of range(srcPos < size(src))', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 197,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'blit'
}),
Ea._assert(d < c.length, 'dstPos out of range(dstPos < size(dst))', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 198,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'blit'
}),
Ea._assert(
b + f <= a.length && d + f <= c.length,
'n out of range(srcPos + n <= size(src) && dstPos + n <= size(dst))',
{
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 199,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'blit'
}
),
a == c)
)
if (b < d) {
var e = b + f;
b = d + f;
for (var k = 0; k < f; ) k++, --e, --b, (a[b] = a[e]);
} else {
if (b > d) for (e = b, b = d, k = 0; k < f; ) k++, (a[b] = a[e]), ++e, ++b;
}
else if (0 == b && 0 == d) for (k = 0; k < f; ) (e = k++), (c[e] = a[e]);
else if (0 == b) for (k = 0; k < f; ) (e = k++), (c[d + e] = a[e]);
else if (0 == d) for (k = 0; k < f; ) (e = k++), (c[e] = a[b + e]);
else for (k = 0; k < f; ) (e = k++), (c[d + e] = a[b + e]);
};
Kb.copy = function (a) {
return a.slice(0);
};
Kb.zero = function (a, b, c) {
null == c && (c = 0);
null == b && (b = 0);
c = 0 >= c ? a.length : b + c;
Ea._assert(0 <= b && b < a.length, 'min >= 0 && min < size(dst)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 293,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'zero'
});
for (
Ea._assert(c <= a.length, 'max <= size(dst)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 294,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'zero'
});
b < c;
)
a[b++] = 0;
return a;
};
Kb.init = function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
d = 0 >= d ? a.length : c + d;
Ea._assert(0 <= c && c < a.length, 'min >= 0 && min < size(a)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 315,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'init'
});
for (
Ea._assert(d <= a.length, 'max <= size(a)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 316,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'init'
});
c < d;
)
a[c++] = b;
return a;
};
Kb.nullify = function (a, b, c) {
null == c && (c = 0);
null == b && (b = 0);
c = 0 >= c ? a.length : b + c;
Ea._assert(0 <= b && b < a.length, 'min >= 0 && min < size(a)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 331,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'nullify'
});
for (
Ea._assert(c <= a.length, 'max <= size(a)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 332,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'nullify'
});
b < c;
)
a[b++] = null;
return a;
};
Kb.binarySearchCmp = function (a, b, c, d, f) {
Ea._assert(null != a, 'a != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 351,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'binarySearchCmp'
});
Ea._assert(null != f, 'cmp != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 352,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'binarySearchCmp'
});
Ea._assert(0 <= c && c < a.length, 'min >= 0 && min < size(a)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 353,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'binarySearchCmp'
});
Ea._assert(d < a.length, 'max < size(a)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 354,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'binarySearchCmp'
});
for (var e, k = d + 1; c < k; )
(e = c + ((k - c) >> 1)), 0 > f(a[e], b) ? (c = e + 1) : (k = e);
return c <= d && 0 == f(a[c], b) ? c : ~c;
};
Kb.binarySearchf = function (a, b, c, d) {
Ea._assert(null != a, 'a != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 379,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'binarySearchf'
});
Ea._assert(0 <= c && c < a.length, 'min >= 0 && min < size(a)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 380,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'binarySearchf'
});
Ea._assert(d < a.length, 'max < size(a)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 381,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'binarySearchf'
});
for (var e, g = d + 1; c < g; ) (e = c + ((g - c) >> 1)), a[e] < b ? (c = e + 1) : (g = e);
return c <= d && a[c] == b ? c : ~c;
};
Kb.binarySearchi = function (a, b, c, d) {
Ea._assert(null != a, 'a != null', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 406,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'binarySearchi'
});
Ea._assert(0 <= c && c < a.length, 'min >= 0 && min < size(a)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 407,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'binarySearchi'
});
Ea._assert(d < a.length, 'max < size(a)', {
fileName:
'/Users/tomyoung/Library/Application Support/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx',
lineNumber: 408,
className: 'polygonal.ds.tools.NativeArrayTools',
methodName: 'binarySearchi'
});
for (var e, g = d + 1; c < g; ) (e = c + ((g - c) >> 1)), a[e] < b ? (c = e + 1) : (g = e);
return c <= d && a[c] == b ? c : ~c;
};
var pi = function () {};
h['polygonal.ds.tools.Shuffle'] = pi;
pi.__name__ = 'polygonal.ds.tools.Shuffle';
pi.f = function () {
return Math.random();
};
pi.setRandom = function (a) {
pi.f = a;
};
pi.frand = function () {
return pi.f();
};
var mp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_10'] = mp;
mp.__name__ = 'scripts.ActorEvents_10';
mp.__super__ = u;
mp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: mp
});
var np = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_100'] = np;
np.__name__ = 'scripts.ActorEvents_100';
np.__super__ = u;
np.prototype = r(u.prototype, {
_event_EveryNsecs: function (a) {
this.wrapper.enabled && 8 == this.actor.getCurrentFrame() && d.recycleActor(this.actor);
},
init: function () {
d.runPeriodically(100, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: np
});
var op = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_103'] = op;
op.__name__ = 'scripts.ActorEvents_103';
op.__super__ = u;
op.prototype = r(u.prototype, {
init: function () {
var a = this;
this.actor.disableActorDrawing();
this.actor.makeAlwaysSimulate();
d.engine.pause();
d.setValueForScene('Stage Logic', '_RumbleName', 'Dead');
d.sayToScene('Stage Logic', '_customEvent_rumble');
d.runLater(
50,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() - 8,
a.actor.getY() - 8,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() - 8,
a.actor.getY() - 8,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() - 8,
a.actor.getY() - 8,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() - 8,
a.actor.getY() - 8,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 0, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() - 8,
a.actor.getY() - 8,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 0, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() - 8,
a.actor.getY() - 8,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() - 8,
a.actor.getY() - 8,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() - 8,
a.actor.getY() - 8,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, 32, 0.3, J.backOut);
},
this.actor
);
d.runLater(
500,
function (b) {
d.engine.unpause();
b = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); b < c.length; ) {
var e = c[b];
++b;
null == e || e.dead || e.recycled || e.say('Dude Logic', '_customEvent_Die2');
}
d.startShakingScreen(0.01, 0.1);
d.recycleActor(a.actor);
},
this.actor
);
},
forwardMessage: function (a) {},
__class__: op
});
var pp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_12'] = pp;
pp.__name__ = 'scripts.ActorEvents_12';
pp.__super__ = u;
pp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: pp
});
var qp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_121'] = qp;
qp.__name__ = 'scripts.ActorEvents_121';
qp.__super__ = u;
qp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: qp
});
var rp = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
};
h['scripts.ActorEvents_125'] = rp;
rp.__name__ = 'scripts.ActorEvents_125';
rp.__super__ = u;
rp.prototype = r(u.prototype, {
_GravitySpeed: null,
_event_Leavesscene: function (a, b, c, e) {
this.wrapper.enabled && e && d.recycleActor(this.actor);
},
_event_Updating: function (a) {
this.wrapper.enabled &&
(this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed)),
0 < this.actor.getXVelocity()
? this.actor.setXVelocity(Math.max(this.actor.getXVelocity() - 0.3, 0))
: 0 > this.actor.getXVelocity() &&
this.actor.setXVelocity(Math.min(this.actor.getXVelocity() + 0.3, 0)));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_Leavesscene));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: rp
});
var sp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_127'] = sp;
sp.__name__ = 'scripts.ActorEvents_127';
sp.__super__ = u;
sp.prototype = r(u.prototype, {
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
this.actor.moveBy(0, -24, 2, J.backOut);
d.runLater(
900,
function (b) {
d.recycleActor(a.actor);
},
this.actor
);
},
forwardMessage: function (a) {},
__class__: sp
});
var tp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_131'] = tp;
tp.__name__ = 'scripts.ActorEvents_131';
tp.__super__ = u;
tp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: tp
});
var up = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_136'] = up;
up.__name__ = 'scripts.ActorEvents_136';
up.__super__ = u;
up.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: up
});
var vp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_138'] = vp;
vp.__name__ = 'scripts.ActorEvents_138';
vp.__super__ = u;
vp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: vp
});
var wp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_14'] = wp;
wp.__name__ = 'scripts.ActorEvents_14';
wp.__super__ = u;
wp.prototype = r(u.prototype, {
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
this.actor.anchorToScreen();
this.actor.setX(-5);
this.actor.setY(-5);
ba.setScale('width', d.getScreenWidth() + 10, this.actor);
ba.setScale('height', d.getScreenHeight() + 10, this.actor);
this.actor.fadeTo(0, 0.4, J.quadInOut);
d.runLater(
300,
function (b) {
d.recycleActor(a.actor);
},
this.actor
);
},
forwardMessage: function (a) {},
__class__: wp
});
var xp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_140'] = xp;
xp.__name__ = 'scripts.ActorEvents_140';
xp.__super__ = u;
xp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: xp
});
var yp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_142'] = yp;
yp.__name__ = 'scripts.ActorEvents_142';
yp.__super__ = u;
yp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: yp
});
var zp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_150'] = zp;
zp.__name__ = 'scripts.ActorEvents_150';
zp.__super__ = u;
zp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: zp
});
var Ap = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Speed Multiplier'] = '_SpeedMultiplier';
this._SpeedMultiplier = 0;
};
h['scripts.ActorEvents_155'] = Ap;
Ap.__name__ = 'scripts.ActorEvents_155';
Ap.__super__ = u;
Ap.prototype = r(u.prototype, {
_SpeedMultiplier: null,
_event_Leavesscene: function (a, b, c, e) {
this.wrapper.enabled && e && d.recycleActor(this.actor);
},
_event_EveryNsecs: function (a) {
if (
this.wrapper.enabled &&
'World 3 Select' != d.getCurrentSceneName() &&
'Snow Map' != d.getCurrentSceneName()
) {
a = this.actor;
var b = d.getValueForScene('Stage Logic', '_SnowSpeed');
a.setXVelocity(
(null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b))) * this._SpeedMultiplier
);
}
},
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.setYVelocity(3.2);
this._SpeedMultiplier = (d.randomInt(8, 10) / 10) * 0.4;
this.actor.setAnimation('' + d.randomInt(1, 2));
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_Leavesscene));
d.runPeriodically(1e3, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Ap
});
var Bp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_159'] = Bp;
Bp.__name__ = 'scripts.ActorEvents_159';
Bp.__super__ = u;
Bp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Bp
});
var Cp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_16'] = Cp;
Cp.__name__ = 'scripts.ActorEvents_16';
Cp.__super__ = u;
Cp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Cp
});
var Dp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_161'] = Dp;
Dp.__name__ = 'scripts.ActorEvents_161';
Dp.__super__ = u;
Dp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Dp
});
var Ep = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_166'] = Ep;
Ep.__name__ = 'scripts.ActorEvents_166';
Ep.__super__ = u;
Ep.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Ep
});
var Fp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_169'] = Fp;
Fp.__name__ = 'scripts.ActorEvents_169';
Fp.__super__ = u;
Fp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Fp
});
var Gp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_18'] = Gp;
Gp.__name__ = 'scripts.ActorEvents_18';
Gp.__super__ = u;
Gp.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.disableActorDrawing();
},
forwardMessage: function (a) {},
__class__: Gp
});
var Hp = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Spikes = '_Spikes';
this.nameMap.h['Ground Check Left'] = '_GroundCheckLeft';
this._GroundCheckLeft = !1;
this.nameMap.h['Ground Check Right'] = '_GroundCheckRight';
this._GroundCheckRight = !1;
this.nameMap.h['Ground Check Top'] = '_GroundCheckTop';
this._GroundCheckTop = !1;
this.nameMap.h['Ground Check Bottom'] = '_GroundCheckBottom';
this._GroundCheckBottom = !1;
this.nameMap.h['On Ground Left'] = '_OnGroundLeft';
this._OnGroundLeft = !1;
this.nameMap.h['On Ground Top'] = '_OnGroundTop';
this._OnGroundTop = !1;
this.nameMap.h['On Ground Bottom'] = '_OnGroundBottom';
this._OnGroundBottom = !1;
this.nameMap.h['On Ground Right'] = '_OnGroundRight';
this._OnGroundRight = !1;
};
h['scripts.ActorEvents_197'] = Hp;
Hp.__name__ = 'scripts.ActorEvents_197';
Hp.__super__ = u;
Hp.prototype = r(u.prototype, {
_Spikes: null,
_GroundCheckLeft: null,
_GroundCheckRight: null,
_GroundCheckTop: null,
_GroundCheckBottom: null,
_OnGroundLeft: null,
_OnGroundTop: null,
_OnGroundBottom: null,
_OnGroundRight: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
((a = this._Spikes),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
(this._Spikes.setX(this.actor.getXCenter() - 44),
this._Spikes.setY(this.actor.getYCenter() - 44));
},
init: function () {
this.actor.makeAlwaysSimulate();
d.createRecycledActorOnLayer(
d.getActorType(199),
this.actor.getXCenter() - 44,
this.actor.getYCenter() - 44,
d.engine.getLayerById(this.actor.getLayerID())
);
this._Spikes = d.getLastCreatedActor();
this._Spikes.makeAlwaysSimulate();
this.actor.moveToTop();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Hp
});
var Ip = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Ground Check Top'] = '_GroundCheckTop';
this._GroundCheckTop = !1;
this.nameMap.h['Ground Check Bottom'] = '_GroundCheckBottom';
this._GroundCheckBottom = !1;
this.nameMap.h['Ground Check Left'] = '_GroundCheckLeft';
this._GroundCheckLeft = !1;
this.nameMap.h['Ground Check Right'] = '_GroundCheckRight';
this._GroundCheckRight = !1;
this.nameMap.h['On Ground Top'] = '_OnGroundTop';
this._OnGroundTop = !1;
this.nameMap.h['On Ground Bottom'] = '_OnGroundBottom';
this._OnGroundBottom = !1;
this.nameMap.h['On Ground Left'] = '_OnGroundLeft';
this._OnGroundLeft = !1;
this.nameMap.h['On Ground Right'] = '_OnGroundRight';
this._OnGroundRight = !1;
};
h['scripts.ActorEvents_199'] = Ip;
Ip.__name__ = 'scripts.ActorEvents_199';
Ip.__super__ = u;
Ip.prototype = r(u.prototype, {
_GroundCheckTop: null,
_GroundCheckBottom: null,
_GroundCheckLeft: null,
_GroundCheckRight: null,
_OnGroundTop: null,
_OnGroundBottom: null,
_OnGroundLeft: null,
_OnGroundRight: null,
init: function () {},
forwardMessage: function (a) {},
__class__: Ip
});
var Jp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_2'] = Jp;
Jp.__name__ = 'scripts.ActorEvents_2';
Jp.__super__ = u;
Jp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Jp
});
var Kp = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Spin = '_Spin';
this._Spin = !1;
};
h['scripts.ActorEvents_20'] = Kp;
Kp.__name__ = 'scripts.ActorEvents_20';
Kp.__super__ = u;
Kp.prototype = r(u.prototype, {
_Spin: null,
_event_ActorType: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(431);
var e = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == e || c == a;
} else c = !1;
c &&
(this._Spin ||
d.runLater(
100,
function (a) {
b.actor.setAnimation('Spin');
b._Spin = !0;
},
this.actor
));
},
init: function () {
this.addListener(this.actor.whenCollided, q(this, this._event_ActorType));
},
forwardMessage: function (a) {},
__class__: Kp
});
var Lp = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Spikes = '_Spikes';
this.nameMap.h['Ground Check Left'] = '_GroundCheckLeft';
this._GroundCheckLeft = !1;
this.nameMap.h['Ground Check Right'] = '_GroundCheckRight';
this._GroundCheckRight = !1;
this.nameMap.h['Ground Check Top'] = '_GroundCheckTop';
this._GroundCheckTop = !1;
this.nameMap.h['Ground Check Bottom'] = '_GroundCheckBottom';
this._GroundCheckBottom = !1;
this.nameMap.h['On Ground Left'] = '_OnGroundLeft';
this._OnGroundLeft = !1;
this.nameMap.h['On Ground Top'] = '_OnGroundTop';
this._OnGroundTop = !1;
this.nameMap.h['On Ground Bottom'] = '_OnGroundBottom';
this._OnGroundBottom = !1;
this.nameMap.h['On Ground Right'] = '_OnGroundRight';
this._OnGroundRight = !1;
};
h['scripts.ActorEvents_201'] = Lp;
Lp.__name__ = 'scripts.ActorEvents_201';
Lp.__super__ = u;
Lp.prototype = r(u.prototype, {
_Spikes: null,
_GroundCheckLeft: null,
_GroundCheckRight: null,
_GroundCheckTop: null,
_GroundCheckBottom: null,
_OnGroundLeft: null,
_OnGroundTop: null,
_OnGroundBottom: null,
_OnGroundRight: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
((a = this._Spikes),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
(this._Spikes.setX(this.actor.getXCenter() - 92),
this._Spikes.setY(this.actor.getYCenter() - 44));
},
init: function () {
this.actor.makeAlwaysSimulate();
d.createRecycledActorOnLayer(
d.getActorType(203),
this.actor.getXCenter() - 44,
this.actor.getYCenter() - 44,
d.engine.getLayerById(this.actor.getLayerID())
);
this._Spikes = d.getLastCreatedActor();
this._Spikes.makeAlwaysSimulate();
this.actor.moveToTop();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Lp
});
var Mp = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Ground Check Top'] = '_GroundCheckTop';
this._GroundCheckTop = !1;
this.nameMap.h['Ground Check Bottom'] = '_GroundCheckBottom';
this._GroundCheckBottom = !1;
this.nameMap.h['Ground Check Left'] = '_GroundCheckLeft';
this._GroundCheckLeft = !1;
this.nameMap.h['Ground Check Right'] = '_GroundCheckRight';
this._GroundCheckRight = !1;
this.nameMap.h['On Ground Top'] = '_OnGroundTop';
this._OnGroundTop = !1;
this.nameMap.h['On Ground Bottom'] = '_OnGroundBottom';
this._OnGroundBottom = !1;
this.nameMap.h['On Ground Left'] = '_OnGroundLeft';
this._OnGroundLeft = !1;
this.nameMap.h['On Ground Right'] = '_OnGroundRight';
this._OnGroundRight = !1;
};
h['scripts.ActorEvents_203'] = Mp;
Mp.__name__ = 'scripts.ActorEvents_203';
Mp.__super__ = u;
Mp.prototype = r(u.prototype, {
_GroundCheckTop: null,
_GroundCheckBottom: null,
_GroundCheckLeft: null,
_GroundCheckRight: null,
_OnGroundTop: null,
_OnGroundBottom: null,
_OnGroundLeft: null,
_OnGroundRight: null,
init: function () {
'Level 39' == d.getCurrentSceneName() && this.actor.setAnimation('Top Only');
},
forwardMessage: function (a) {},
__class__: Mp
});
var Np = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_205'] = Np;
Np.__name__ = 'scripts.ActorEvents_205';
Np.__super__ = u;
Np.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Np
});
var Op = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_208'] = Op;
Op.__name__ = 'scripts.ActorEvents_208';
Op.__super__ = u;
Op.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Op
});
var Pp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_211'] = Pp;
Pp.__name__ = 'scripts.ActorEvents_211';
Pp.__super__ = u;
Pp.prototype = r(u.prototype, {
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
(d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('Smoke'),
d.getLastCreatedActor().moveToBottom());
},
_event_HitsGround: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b &&
a.otherActor.getType() != d.getActorType(208) &&
a.otherActor.getType() != d.getActorType(213) &&
this.actor.shout('_customEvent_Destroy');
},
_event_HitsPlatform: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(5);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b &&
a.otherActor.getType() != d.getActorType(208) &&
a.otherActor.getType() != d.getActorType(213) &&
this.actor.shout('_customEvent_Destroy');
},
_customEvent_Destroy: function () {
!k.engine.getGameAttribute('Sound Disabled') &&
this.actor.isOnScreen() &&
d.playSound(d.getSound(215));
'Left' == this.actor.getAnimation()
? (d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX(),
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Fire'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX(),
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, 16, 0.3, J.backOut))
: (d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 16,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Fire'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 16,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, 16, 0.3, J.backOut));
d.getLastCreatedActor().setAnimation('Fire');
d.recycleActor(this.actor);
},
init: function () {
this.actor.makeAlwaysSimulate();
d.runPeriodically(200, q(this, this._event_EveryNsecs), this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsPlatform));
},
forwardMessage: function (a) {},
__class__: Pp
});
var Qp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_213'] = Qp;
Qp.__name__ = 'scripts.ActorEvents_213';
Qp.__super__ = u;
Qp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Qp
});
var Rp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_216'] = Rp;
Rp.__name__ = 'scripts.ActorEvents_216';
Rp.__super__ = u;
Rp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Rp
});
var Sp = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
};
h['scripts.ActorEvents_218'] = Sp;
Sp.__name__ = 'scripts.ActorEvents_218';
Sp.__super__ = u;
Sp.prototype = r(u.prototype, {
_GravitySpeed: null,
_event_HitsGround: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
if (b)
if (a.thisFromBottom) {
k.engine.getGameAttribute('Sound Disabled') ||
(0 <= this.actor.getYVelocity() &&
this.actor.isOnScreen() &&
d.playSound(d.getSound(220)));
if (this.actor.isOnScreen() && 0 <= this.actor.getYVelocity())
for (a = 0, b = d.getActorsOfType(d.getActorType(2)); a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
(this.actor.getXCenter() > c.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
this.actor.setYVelocity(-60);
} else
k.engine.getGameAttribute('Sound Disabled') ||
(this.actor.isOnScreen() && d.playSound(d.getSound(221))),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, 16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, 16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.recycleActor(this.actor);
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
(this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed)),
'Left' == this.actor.getAnimation()
? this.actor.setXVelocity(-16)
: 'Right' == this.actor.getAnimation() && this.actor.setXVelocity(16));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Sp
});
var Tp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_22'] = Tp;
Tp.__name__ = 'scripts.ActorEvents_22';
Tp.__super__ = u;
Tp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Tp
});
var Up = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Direction RN'] = '_DirectionRN';
this._DirectionRN = 0;
};
h['scripts.ActorEvents_223'] = Up;
Up.__name__ = 'scripts.ActorEvents_223';
Up.__super__ = u;
Up.prototype = r(u.prototype, {
_DirectionRN: null,
_event_AfterNsecs: function (a) {
var b = this;
this.wrapper.enabled &&
(this.actor.setAnimation('Fade'),
d.runLater(
700,
function (a) {
d.recycleActor(b.actor);
},
this.actor
));
},
init: function () {
this.actor.anchorToScreen();
d.runLater(700, q(this, this._event_AfterNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Up
});
var Vp = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Hover Distance'] = '_HoverDistance';
this._HoverDistance = 0;
this.nameMap.h.Up = '_Up';
this._Up = !1;
};
h['scripts.ActorEvents_226'] = Vp;
Vp.__name__ = 'scripts.ActorEvents_226';
Vp.__super__ = u;
Vp.prototype = r(u.prototype, {
_HoverDistance: null,
_Up: null,
_customEvent_Move: function () {
var a = this;
this._HoverDistance = 4;
this._Up
? (this.actor.moveBy(0, -this._HoverDistance, 0.4, J.quadInOut),
(this._Up = !1),
d.runLater(
500,
function (b) {
a.actor.shout('_customEvent_Move');
},
this.actor
))
: (this.actor.moveBy(0, this._HoverDistance, 0.4, J.quadInOut),
(this._Up = !0),
d.runLater(
500,
function (b) {
a.actor.shout('_customEvent_Move');
},
this.actor
));
},
init: function () {},
forwardMessage: function (a) {},
__class__: Vp
});
var Wp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_232'] = Wp;
Wp.__name__ = 'scripts.ActorEvents_232';
Wp.__super__ = u;
Wp.prototype = r(u.prototype, {
init: function () {
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8 - 32,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().moveBy(-64, -64, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Big Dirt');
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8 + 32,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().moveBy(64, -64, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Big Dirt');
},
forwardMessage: function (a) {},
__class__: Wp
});
var Xp = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Pressed = '_Pressed';
this._Pressed = !1;
this.nameMap.h.Hide = '_Hide';
this._Hide = !1;
this.nameMap.h['Button Input'] = '_ButtonInput';
this._ButtonInput = '';
};
h['scripts.ActorEvents_234'] = Xp;
Xp.__name__ = 'scripts.ActorEvents_234';
Xp.__super__ = u;
Xp.prototype = r(u.prototype, {
_Pressed: null,
_Hide: null,
_ButtonInput: null,
_event_AnyButton: function (a) {
var b = this;
this.wrapper.enabled &&
((this._ButtonInput = a),
('7' != this._ButtonInput && '15' != this._ButtonInput) ||
this._Pressed ||
d.engine.isPaused() ||
k.engine.getGameAttribute('Dead') ||
((this._Pressed = !0),
d.createRecycledActor(d.getActorType(236), 0, 0, 0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
400,
function (a) {
b._Pressed = !1;
},
this.actor
)));
},
_event_Keyboard: function (a, b) {
var c = this;
!this.wrapper.enabled ||
!a ||
this._Pressed ||
d.engine.isPaused() ||
k.engine.getGameAttribute('Dead') ||
((this._Pressed = !0),
d.createRecycledActor(d.getActorType(236), 0, 0, 0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
400,
function (a) {
c._Pressed = !1;
},
this.actor
));
},
_event_OnActor: function (a) {
var b = this;
!this.wrapper.enabled ||
3 != a ||
!k.engine.getGameAttribute('MOBILE MODE') ||
this._Pressed ||
d.engine.isPaused() ||
k.engine.getGameAttribute('Dead') ||
((this._Pressed = !0),
this.actor.setAnimation('Down'),
d.createRecycledActor(d.getActorType(236), 0, 0, 0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
200,
function (a) {
b.actor.setAnimation('Normal');
},
this.actor
),
d.runLater(
400,
function (a) {
b._Pressed = !1;
},
this.actor
));
},
_event_Updating: function (a) {
this.wrapper.enabled &&
k.engine.getGameAttribute('MOBILE MODE') &&
(d.engine.isPaused() && !this._Hide
? ((this._Hide = !0), this.actor.disableActorDrawing())
: !d.engine.isPaused() &&
this._Hide &&
((this._Hide = !1), this.actor.enableActorDrawing()));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.anchorToScreen();
k.engine.getGameAttribute('MOBILE MODE') || this.actor.disableActorDrawing();
this.addListener(d.engine.whenAnyGamepadPressed, q(this, this._event_AnyButton));
this.addListener(
d.engine.whenKeyPressedEvents.getOrCreateEvent('Escape'),
q(this, this._event_Keyboard)
);
this.addListener(this.actor.whenMousedOver, q(this, this._event_OnActor));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Xp
});
var Yp = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Inner = '_Inner';
};
h['scripts.ActorEvents_236'] = Yp;
Yp.__name__ = 'scripts.ActorEvents_236';
Yp.__super__ = u;
Yp.prototype = r(u.prototype, {
_Inner: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.set_alpha(0);
this.actor.setX(d.getScreenX() - 5);
this.actor.setY(d.getScreenY() - 5);
ba.setScale('width', 970, this.actor);
ba.setScale('height', 550, this.actor);
this.actor.fadeTo(0.86, 0.4, J.quadInOut);
for (var a = 0, b = d.getActorsOfType(d.getActorType(2)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.shout('_customEvent_clearTouches');
}
d.createRecycledActor(
d.getActorType(250),
this.actor.getX() + (d.getScreenWidth() / 2 - 106),
d.getScreenY() - 126,
0
);
this._Inner = d.getLastCreatedActor();
this._Inner.moveTo(
this._Inner.getX(),
d.getScreenY() + (d.getScreenHeight() / 2 - 56),
0.7,
J.elasticOut
);
d.engine.pause();
},
forwardMessage: function (a) {},
__class__: Yp
});
var Zp = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_238'] = Zp;
Zp.__name__ = 'scripts.ActorEvents_238';
Zp.__super__ = u;
Zp.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Zp
});
var $p = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_24'] = $p;
$p.__name__ = 'scripts.ActorEvents_24';
$p.__super__ = u;
$p.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: $p
});
var aq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_240'] = aq;
aq.__name__ = 'scripts.ActorEvents_240';
aq.__super__ = u;
aq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: aq
});
var bq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_242'] = bq;
bq.__name__ = 'scripts.ActorEvents_242';
bq.__super__ = u;
bq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: bq
});
var cq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_244'] = cq;
cq.__name__ = 'scripts.ActorEvents_244';
cq.__super__ = u;
cq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: cq
});
var dq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_246'] = dq;
dq.__name__ = 'scripts.ActorEvents_246';
dq.__super__ = u;
dq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: dq
});
var eq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_248'] = eq;
eq.__name__ = 'scripts.ActorEvents_248';
eq.__super__ = u;
eq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: eq
});
var fq = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Home Button'] = '_HomeButton';
this.nameMap.h['Restart Button'] = '_RestartButton';
this.nameMap.h['Resume Button'] = '_ResumeButton';
this.nameMap.h['Ads Button'] = '_AdsButton';
this.nameMap.h['Sound Button'] = '_SoundButton';
this.nameMap.h['Music Button'] = '_MusicButton';
this.nameMap.h['Button Pressed'] = '_ButtonPressed';
this._ButtonPressed = !1;
this.nameMap.h['In Position'] = '_InPosition';
this._InPosition = !1;
this.nameMap.h['Controls Button'] = '_ControlsButton';
this.nameMap.h.Cursor = '_Cursor';
this.nameMap.h['Possum Button'] = '_PossumButton';
this.nameMap.h['Go Button'] = '_GoButton';
this.nameMap.h['Button Input'] = '_ButtonInput';
this._ButtonInput = '';
this.nameMap.h['List Selected'] = '_ListSelected';
this._ListSelected = 0;
this.nameMap.h['List Buttons'] = '_ListButtons';
this.nameMap.h['Button Is Down'] = '_ButtonIsDown';
this._ButtonIsDown = !1;
this.nameMap.h['Down Button ID'] = '_DownButtonID';
this._DownButtonID = '';
this.nameMap.h['Press Timer'] = '_PressTimer';
this._PressTimer = 0;
this.nameMap.h['Button Input Use'] = '_ButtonInputUse';
this._ButtonInputUse = '';
this.nameMap.h['Left Is Down'] = '_LeftIsDown';
this._LeftIsDown = !1;
this.nameMap.h['Right Is Down'] = '_RightIsDown';
this._RightIsDown = !1;
this.nameMap.h['Up Is Down'] = '_UpIsDown';
this._UpIsDown = !1;
this.nameMap.h['Down is Down'] = '_DownisDown';
this._DownisDown = !1;
this.nameMap.h['Can Move Left'] = '_CanMoveLeft';
this._CanMoveLeft = !1;
this.nameMap.h['Can Move Right'] = '_CanMoveRight';
this._CanMoveRight = !1;
this.nameMap.h['Can Move Up'] = '_CanMoveUp';
this._CanMoveUp = !1;
this.nameMap.h['Can Move Down'] = '_CanMoveDown';
this._CanMoveDown = !1;
this.nameMap.h.Moving = '_Moving';
this._Moving = !1;
this.nameMap.h['Vibe Button'] = '_VibeButton';
this.nameMap.h['Moving 2'] = '_Moving2';
this._Moving2 = !1;
this.nameMap.h['Can Press Buttons'] = '_CanPressButtons';
this._CanPressButtons = !1;
};
h['scripts.ActorEvents_250'] = fq;
fq.__name__ = 'scripts.ActorEvents_250';
fq.__super__ = u;
fq.prototype = r(u.prototype, {
_HomeButton: null,
_RestartButton: null,
_ResumeButton: null,
_AdsButton: null,
_SoundButton: null,
_MusicButton: null,
_ButtonPressed: null,
_InPosition: null,
_ControlsButton: null,
_Cursor: null,
_PossumButton: null,
_GoButton: null,
_ButtonInput: null,
_ListSelected: null,
_ListButtons: null,
_ButtonIsDown: null,
_DownButtonID: null,
_PressTimer: null,
_ButtonInputUse: null,
_LeftIsDown: null,
_RightIsDown: null,
_UpIsDown: null,
_DownisDown: null,
_CanMoveLeft: null,
_CanMoveRight: null,
_CanMoveUp: null,
_CanMoveDown: null,
_Moving: null,
_VibeButton: null,
_Moving2: null,
_CanPressButtons: null,
_event_Updating: function (a) {
if (this.wrapper.enabled) {
a = this._HomeButton;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
this._HomeButton.setX(this.actor.getXCenter() - 121),
this._HomeButton.setY(this.actor.getY());
a = this._RestartButton;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
this._RestartButton.setX(this.actor.getXCenter() - 37),
this._RestartButton.setY(this.actor.getY());
a = this._ResumeButton;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
this._ResumeButton.setX(this.actor.getXCenter() + 47),
this._ResumeButton.setY(this.actor.getY());
a = this._SoundButton;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
this._SoundButton.setX(this.actor.getXCenter() - 56),
this._SoundButton.setY(this.actor.getY() + 74);
a = this._MusicButton;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
this._MusicButton.setX(this.actor.getXCenter() + 6),
this._MusicButton.setY(this.actor.getY() + 74);
}
},
_event_Click: function () {
this.wrapper.enabled &&
(this._HomeButton.isMousePressed()
? ((this._ListSelected = 0),
this.actor.shout('_customEvent_updateSelected'),
this.actor.shout('_customEvent_buttonPressed'))
: this._RestartButton.isMousePressed()
? ((this._ListSelected = 1),
this.actor.shout('_customEvent_updateSelected'),
this.actor.shout('_customEvent_buttonPressed'))
: this._ResumeButton.isMousePressed()
? ((this._ListSelected = 2),
this.actor.shout('_customEvent_updateSelected'),
this.actor.shout('_customEvent_buttonPressed'))
: this._SoundButton.isMousePressed()
? ((this._ListSelected = 3),
this.actor.shout('_customEvent_updateSelected'),
this.actor.shout('_customEvent_buttonPressed'))
: this._MusicButton.isMousePressed() &&
((this._ListSelected = 4),
this.actor.shout('_customEvent_updateSelected'),
this.actor.shout('_customEvent_buttonPressed')));
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
(this._UpIsDown || this._DownisDown || this._LeftIsDown || this._RightIsDown
? 4 <= this._PressTimer
? ((this._PressTimer = 0), this.actor.shout('_customEvent_Move'))
: (this._PressTimer += 1)
: (this._PressTimer = 0));
},
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
b = d.getFont(168);
null != b && b != a.font && (a.font = b);
if ('JP' == k.engine.getGameAttribute('Language')) {
b = d.getFont(588);
null != b && b != a.font && (a.font = b);
b =
this.actor.getWidth() / 2 -
a.font.getTextWidth('~x4e00~x6642~x505c~x6b62') / k.SCALE / 2;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + -34 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + -34 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + -34 * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
var e = null,
f = a.font;
f =
'~x4e00~x6642~x505c~x6b62:' +
f.ID +
':' +
a.alpha +
':' +
f.letterSpacing +
':' +
k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)) {
var g = W.drawnStringCache.h[f];
g.lifetime = 5;
e = g.img;
} else {
g = a.font.font.getTextWidth(
'~x4e00~x6642~x505c~x6b62',
a.font.letterSpacing,
a.font.fontScale
);
var p = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < g &&
0 < p &&
((e = new ja(g, p, !0, 0)),
a.font.font.renderToImg(
e,
'~x4e00~x6642~x505c~x6b62',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f));
}
} else
'CN' == k.engine.getGameAttribute('Language')
? ((b = d.getFont(592)),
null != b && b != a.font && (a.font = b),
(b =
this.actor.getWidth() / 2 -
a.font.getTextWidth('~x5df2~x6682~x505c') / k.SCALE / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + -34 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX),
(c = a.y + -34 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + -34 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, c),
(e = null),
(f = a.font),
(f =
'~x5df2~x6682~x505c:' +
f.ID +
':' +
a.alpha +
':' +
f.letterSpacing +
':' +
k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)
? ((g = W.drawnStringCache.h[f]), (g.lifetime = 5), (e = g.img))
: ((g = a.font.font.getTextWidth(
'~x5df2~x6682~x505c',
a.font.letterSpacing,
a.font.fontScale
)),
(p = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < g &&
0 < p &&
((e = new ja(g, p, !0, 0)),
a.font.font.renderToImg(
e,
'~x5df2~x6682~x505c',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f))))
: 'KR' == k.engine.getGameAttribute('Language')
? ((b = d.getFont(593)),
null != b && b != a.font && (a.font = b),
(b =
this.actor.getWidth() / 2 -
a.font.getTextWidth('~xc77c~xc2dc ~xc815~xc9c0~xb428') / k.SCALE / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + -34 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX),
(c = a.y + -34 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + -34 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, c),
(e = null),
(f = a.font),
(f =
'~xc77c~xc2dc ~xc815~xc9c0~xb428:' +
f.ID +
':' +
a.alpha +
':' +
f.letterSpacing +
':' +
k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)
? ((g = W.drawnStringCache.h[f]), (g.lifetime = 5), (e = g.img))
: ((g = a.font.font.getTextWidth(
'~xc77c~xc2dc ~xc815~xc9c0~xb428',
a.font.letterSpacing,
a.font.fontScale
)),
(p = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < g &&
0 < p &&
((e = new ja(g, p, !0, 0)),
a.font.font.renderToImg(
e,
'~xc77c~xc2dc ~xc815~xc9c0~xb428',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f))))
: ((b = d.getFont(165)),
null != b && b != a.font && (a.font = b),
(b = this.actor.getWidth() / 2 - a.font.getTextWidth('PAUSED') / k.SCALE / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + -28 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX),
(c = a.y + -28 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + -28 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, c),
(e = null),
(f = a.font),
(f = 'PAUSED:' + f.ID + ':' + a.alpha + ':' + f.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)
? ((g = W.drawnStringCache.h[f]), (g.lifetime = 5), (e = g.img))
: ((g = a.font.font.getTextWidth(
'PAUSED',
a.font.letterSpacing,
a.font.fontScale
)),
(p = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < g &&
0 < p &&
((e = new ja(g, p, !0, 0)),
a.font.font.renderToImg(
e,
'PAUSED',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f))),
null != e &&
(a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, e.width, e.height),
a.graphics.endFill()),
(b = d.getFont(168)),
null != b && b != a.font && (a.font = b),
(b = this.actor.getWidth() / 2 - a.font.getTextWidth('PAUSED') / k.SCALE / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + -30 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX),
(c = a.y + -30 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + -30 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, c),
(e = null),
(f = a.font),
(f = 'PAUSED:' + f.ID + ':' + a.alpha + ':' + f.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)
? ((g = W.drawnStringCache.h[f]), (g.lifetime = 5), (e = g.img))
: ((g = a.font.font.getTextWidth(
'PAUSED',
a.font.letterSpacing,
a.font.fontScale
)),
(p = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < g &&
0 < p &&
((e = new ja(g, p, !0, 0)),
a.font.font.renderToImg(
e,
'PAUSED',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f))));
null != e &&
(a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, e.width, e.height),
a.graphics.endFill());
}
},
_event_KeyPressed: function (a) {
this.wrapper.enabled &&
!this._ButtonPressed &&
this._CanPressButtons &&
(this._ButtonIsDown ||
(d.isKeyPressed('left')
? (this._LeftIsDown = !0)
: d.isKeyPressed('right')
? (this._RightIsDown = !0)
: d.isKeyPressed('up')
? (this._UpIsDown = !0)
: d.isKeyPressed('down') && (this._DownisDown = !0),
0 == this._PressTimer &&
((this._PressTimer = 1), this.actor.shout('_customEvent_Move'))),
(d.isKeyPressed('enter') || d.isKeyPressed('action1')) &&
this.actor.shout('_customEvent_buttonPressed'),
d.isKeyPressed('Escape') &&
((this._ButtonPressed = !0), this.actor.shout('_customEvent_close')));
},
_event_KeyReleased: function (a) {
this.wrapper.enabled &&
(this._UpIsDown || this._DownisDown || this._LeftIsDown || this._RightIsDown) &&
(d.isKeyReleased('left')
? (this._LeftIsDown = !1)
: d.isKeyReleased('right')
? (this._RightIsDown = !1)
: d.isKeyReleased('up')
? (this._UpIsDown = !1)
: d.isKeyReleased('down') && (this._DownisDown = !1));
},
_customEvent_AdjustSize: function () {
this._InPosition &&
!this._ButtonPressed &&
this.actor.getX() != d.getScreenX() + (d.getScreenWidth() / 2 - 106) &&
this.actor.getY() != d.getScreenY() + (d.getScreenHeight() / 2 - 56) &&
(this.actor.setX(d.getScreenX() + (d.getScreenWidth() / 2 - 106)),
this.actor.setY(d.getScreenY() + (d.getScreenHeight() / 2 - 56)));
},
_customEvent_updateSelected: function () {
var a = this;
this._PressTimer = 0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(725));
for (var b = 0, c = this._ListButtons.length; b < c; ) {
var e = [b++];
if (e[0] == this._ListSelected)
this._ListButtons[e[0]].clearFilters(),
this._ListButtons[e[0]].growTo(1.1, 1.1, 0, J.linear),
d.runLater(
100,
(function (b) {
return function (c) {
a._ListButtons[b[0]].growTo(1, 1, 0.3, J.elasticOut);
};
})(e),
this.actor
);
else {
this._ListButtons[e[0]].growTo(1, 1, 0, J.linear);
this._ListButtons[e[0]].clearFilters();
var f = 0,
g = 0,
p = 0;
null == p && (p = 0);
null == g && (g = 0);
null == f && (f = 0);
this._ListButtons[e[0]].setFilter([
d.createTintFilter((f << 16) | (g << 8) | p, 0.4)
]);
}
}
},
_customEvent_buttonPressed: function () {
var a = this;
if (!this._ButtonPressed && this._CanPressButtons)
if (0 == this._ListSelected) {
var b = this._HomeButton;
if (
d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)
) {
this._ButtonPressed = !0;
this._HomeButton.setAnimation('Down');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252));
b = 0;
for (var c = d.getActorsOfType(d.getActorType(435)); b < c.length; ) {
var e = c[b];
++b;
null == e || e.dead || e.recycled || e.moveBy(0, -80, 0.2, J.quadInOut);
}
d.runLater(
200,
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 2);
d.sayToScene('Transitions', '_customEvent_transitionOut');
},
this.actor
);
d.runLater(
2e3,
function (a) {
k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16);
k.engine.getGameAttribute('Sound Disabled') || d.setVolumeForChannel(1, 15);
k.engine.gameAttributes.h['Map Enter Left'] = !1;
k.engine.gameAttributes.h['Map Enter Right'] = !1;
if (31 <= k.engine.getGameAttribute('Last Stage Played')) {
a = Fa.get().scenes.h[8].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e));
k.engine.gameAttributes.h['Start Overworld Music'] = !0;
} else
21 <= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[7].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0))
: 11 <= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[6].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0))
: 1 >= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[4].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)))
: ((a = Fa.get().scenes.h[5].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0));
},
this.actor
);
}
} else if (1 == this._ListSelected) {
if (
((b = this._RestartButton),
d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b))
) {
k.engine.getGameAttribute('Timer Mode') &&
(d.sayToScene('Stage Logic', '_customEvent_timerHide'),
d.setValueForScene('Stage Logic', '_ShowTimer', !1));
this._ButtonPressed = !0;
this._RestartButton.setAnimation('Down');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252));
b = 0;
for (c = d.getActorsOfType(d.getActorType(435)); b < c.length; )
(e = c[b]),
++b,
null == e || e.dead || e.recycled || e.moveBy(0, -80, 0.2, J.quadInOut);
d.runLater(
200,
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 2);
d.sayToScene('Transitions', '_customEvent_transitionOut');
},
this.actor
);
d.runLater(
2e3,
function (a) {
k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16);
k.engine.getGameAttribute('Sound Disabled') || d.setVolumeForChannel(1, 15);
gb.commercialBreak(function () {
var a = 0,
b = 0,
c = 0;
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
var e = d.createFadeOut(0.3, (a << 16) | (b << 8) | c);
c = b = a = 0;
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
d.reloadCurrentScene(e, d.createFadeIn(0.3, (a << 16) | (b << 8) | c));
});
},
this.actor
);
}
} else if (2 == this._ListSelected) {
if (
((b = this._ResumeButton),
d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b))
)
(this._ButtonPressed = !0),
this._ResumeButton.setAnimation('Down'),
k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16),
k.engine.getGameAttribute('Sound Disabled') || d.setVolumeForChannel(1, 15),
this.actor.shout('_customEvent_close');
} else if (3 == this._ListSelected) {
if (
((b = this._SoundButton),
d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b))
)
(this._ButtonPressed = !0),
this._SoundButton.setAnimation('Down'),
k.engine.getGameAttribute('Sound Disabled')
? ((k.engine.gameAttributes.h['Sound Disabled'] = !1),
d.setVolumeForChannel(1, 15))
: k.engine.getGameAttribute('Sound Disabled') ||
((k.engine.gameAttributes.h['Sound Disabled'] = !0),
d.setVolumeForChannel(0, 15)),
d.saveGame('mySave', function (a) {}),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
200,
function (b) {
a._ButtonPressed = !1;
k.engine.getGameAttribute('Sound Disabled')
? a._SoundButton.setAnimation('Off')
: a._SoundButton.setAnimation('On');
},
this.actor
);
} else
4 == this._ListSelected &&
((b = this._MusicButton),
d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
((this._ButtonPressed = !0),
this._MusicButton.setAnimation('Down'),
k.engine.getGameAttribute('Music Disabled')
? ((k.engine.gameAttributes.h['Music Disabled'] = !1),
d.setVolumeForChannel(1, 16))
: k.engine.getGameAttribute('Music Disabled') ||
((k.engine.gameAttributes.h['Music Disabled'] = !0),
d.setVolumeForChannel(0, 16)),
d.saveGame('mySave', function (a) {}),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
200,
function (b) {
a._ButtonPressed = !1;
k.engine.getGameAttribute('Music Disabled')
? a._MusicButton.setAnimation('Off')
: a._MusicButton.setAnimation('On');
},
this.actor
));
},
_customEvent_close: function () {
var a = this;
gb.gameplayStart();
k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16);
k.engine.getGameAttribute('Sound Disabled') || d.setVolumeForChannel(1, 15);
k.engine.getGameAttribute('Timer Mode') &&
(d.sayToScene('Stage Logic', '_customEvent_timerShow'),
d.setValueForScene('Stage Logic', '_ShowTimer', !0));
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252));
d.runLater(
300,
function (a) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(236)); a < b.length; ) {
var e = b[a];
++a;
null == e || e.dead || e.recycled || e.fadeTo(0, 0.2, J.quadInOut);
}
},
this.actor
);
this.actor.moveTo(this.actor.getX(), d.getScreenY() - 184, 0.3, J.quadIn);
d.runLater(
700,
function (b) {
d.engine.unpause();
b = 0;
for (var c = d.getActorsOfType(d.getActorType(236)); b < c.length; ) {
var e = c[b];
++b;
null == e || e.dead || e.recycled || d.recycleActor(e);
}
b = a._HomeButton;
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
d.recycleActor(a._HomeButton);
b = a._RestartButton;
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
d.recycleActor(a._RestartButton);
b = a._ResumeButton;
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
d.recycleActor(a._ResumeButton);
b = a._AdsButton;
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
d.recycleActor(a._AdsButton);
b = a._SoundButton;
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
d.recycleActor(a._SoundButton);
b = a._MusicButton;
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
d.recycleActor(a._MusicButton);
b = a._VibeButton;
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
d.recycleActor(a._VibeButton);
if (k.engine.getGameAttribute('MOBILE MODE')) {
b = 0;
for (c = d.getActorsOfType(d.getActorType(582)); b < c.length; )
(e = c[b]), ++b, null == e || e.dead || e.recycled || e.enableActorDrawing();
b = 0;
for (c = d.getActorsOfType(d.getActorType(770)); b < c.length; )
(e = c[b]), ++b, null == e || e.dead || e.recycled || e.enableActorDrawing();
}
d.recycleActor(a.actor);
},
this.actor
);
},
_customEvent_Move: function () {
var a = this;
if (!this._Moving) {
this._Moving = !0;
d.runLater(
100,
function (b) {
a._Moving = !1;
},
this.actor
);
this._CanMoveDown = this._CanMoveUp = this._CanMoveRight = this._CanMoveLeft = !0;
if ('2' == this._ButtonInput || '-axis 0' == this._ButtonInput) {
if (
1 == this._ListSelected ||
2 == this._ListSelected ||
4 == this._ListSelected ||
5 == this._ListSelected
)
this._CanMoveLeft = !0;
} else if ('3' == this._ButtonInput || '+axis 0' == this._ButtonInput) {
if (0 == this._ListSelected || 1 == this._ListSelected || 3 == this._ListSelected)
this._CanMoveRight = !0;
} else if ('0' == this._ButtonInput || '-axis 1' == this._ButtonInput) {
if (3 == this._ListSelected || 4 == this._ListSelected) this._CanMoveUp = !0;
} else if ('1' == this._ButtonInput || '+axis 1' == this._ButtonInput)
if (0 == this._ListSelected || 1 == this._ListSelected || 2 == this._ListSelected)
this._CanMoveDown = !0;
this._LeftIsDown && this._CanMoveLeft
? this._Moving2 ||
((this._Moving2 = !0),
d.runLater(
30,
function (b) {
a._Moving2 = !1;
},
this.actor
),
(this._PressTimer = 0),
1 == this._ListSelected &&
((this._ListSelected = 0), this.actor.shout('_customEvent_updateSelected')),
2 == this._ListSelected
? ((this._ListSelected = 1), this.actor.shout('_customEvent_updateSelected'))
: 4 == this._ListSelected &&
((this._ListSelected = 3), this.actor.shout('_customEvent_updateSelected')))
: this._RightIsDown &&
this._CanMoveRight &&
!this._Moving2 &&
((this._Moving2 = !0),
d.runLater(
30,
function (b) {
a._Moving2 = !1;
},
this.actor
),
(this._PressTimer = 0),
0 == this._ListSelected
? ((this._ListSelected = 1), this.actor.shout('_customEvent_updateSelected'))
: 1 == this._ListSelected
? ((this._ListSelected = 2), this.actor.shout('_customEvent_updateSelected'))
: 3 == this._ListSelected &&
((this._ListSelected = 4), this.actor.shout('_customEvent_updateSelected')));
this._UpIsDown && this._CanMoveUp
? this._Moving2 ||
((this._Moving2 = !0),
d.runLater(
30,
function (b) {
a._Moving2 = !1;
},
this.actor
),
(this._PressTimer = 0),
3 == this._ListSelected
? ((this._ListSelected = 1), this.actor.shout('_customEvent_updateSelected'))
: 4 == this._ListSelected &&
((this._ListSelected = 1), this.actor.shout('_customEvent_updateSelected')))
: this._DownisDown &&
this._CanMoveDown &&
!this._Moving2 &&
((this._Moving2 = !0),
d.runLater(
30,
function (b) {
a._Moving2 = !1;
},
this.actor
),
(this._PressTimer = 0),
0 == this._ListSelected
? ((this._ListSelected = 3), this.actor.shout('_customEvent_updateSelected'))
: 1 == this._ListSelected
? ((this._ListSelected = 3), this.actor.shout('_customEvent_updateSelected'))
: 2 == this._ListSelected &&
((this._ListSelected = 4), this.actor.shout('_customEvent_updateSelected')));
}
},
init: function () {
var a = this;
gb.gameplayStop();
d.setVolumeForChannel(0, 16);
d.setVolumeForChannel(0, 15);
d.runLater(
100,
function (b) {
a._CanPressButtons = !0;
},
this.actor
);
this._ListSelected = 2;
this._ListButtons = [];
this.actor.makeAlwaysSimulate();
d.createRecycledActor(
d.getActorType(238),
this.actor.getXCenter() - 121,
this.actor.getY(),
0
);
this._HomeButton = d.getLastCreatedActor();
this._ListButtons.push(d.getLastCreatedActor());
d.getLastCreatedActor().makeAlwaysSimulate();
d.createRecycledActor(
d.getActorType(240),
this.actor.getXCenter() - 37,
this.actor.getY(),
0
);
this._RestartButton = d.getLastCreatedActor();
this._ListButtons.push(d.getLastCreatedActor());
d.getLastCreatedActor().makeAlwaysSimulate();
d.createRecycledActor(
d.getActorType(242),
this.actor.getXCenter() + 47,
this.actor.getY(),
0
);
this._ResumeButton = d.getLastCreatedActor();
this._ListButtons.push(d.getLastCreatedActor());
d.getLastCreatedActor().makeAlwaysSimulate();
d.createRecycledActor(
d.getActorType(246),
this.actor.getXCenter() - 54,
this.actor.getY() + 74,
0
);
this._SoundButton = d.getLastCreatedActor();
this._ListButtons.push(d.getLastCreatedActor());
d.getLastCreatedActor().makeAlwaysSimulate();
d.createRecycledActor(
d.getActorType(248),
this.actor.getXCenter() + 6,
this.actor.getY() + 74,
0
);
this._MusicButton = d.getLastCreatedActor();
this._ListButtons.push(d.getLastCreatedActor());
d.getLastCreatedActor().makeAlwaysSimulate();
for (var b = 0, c = d.getActorsOfType(d.getActorType(582)); b < c.length; ) {
var e = c[b];
++b;
null == e || e.dead || e.recycled || e.disableActorDrawing();
}
b = 0;
for (c = d.getActorsOfType(d.getActorType(770)); b < c.length; )
(e = c[b]), ++b, null == e || e.dead || e.recycled || e.disableActorDrawing();
k.engine.getGameAttribute('Sound Disabled') && this._SoundButton.setAnimation('Off');
k.engine.getGameAttribute('Music Disabled') && this._MusicButton.setAnimation('Off');
d.runLater(
600,
function (b) {
a._InPosition = !0;
},
this.actor
);
this.actor.shout('_customEvent_updateSelected');
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(d.engine.whenMousePressed, q(this, this._event_Click));
d.runPeriodically(12, q(this, this._event_EveryNsecs), this.actor);
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenUpdated, q(this, this._event_KeyPressed));
this.addListener(this.actor.whenUpdated, q(this, this._event_KeyReleased));
},
forwardMessage: function (a) {},
__class__: fq
});
var gq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_255'] = gq;
gq.__name__ = 'scripts.ActorEvents_255';
gq.__super__ = u;
gq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: gq
});
var hq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_257'] = hq;
hq.__name__ = 'scripts.ActorEvents_257';
hq.__super__ = u;
hq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: hq
});
var iq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_259'] = iq;
iq.__name__ = 'scripts.ActorEvents_259';
iq.__super__ = u;
iq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: iq
});
var jq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_26'] = jq;
jq.__name__ = 'scripts.ActorEvents_26';
jq.__super__ = u;
jq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: jq
});
var kq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_261'] = kq;
kq.__name__ = 'scripts.ActorEvents_261';
kq.__super__ = u;
kq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: kq
});
var lq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_263'] = lq;
lq.__name__ = 'scripts.ActorEvents_263';
lq.__super__ = u;
lq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: lq
});
var mq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_265'] = mq;
mq.__name__ = 'scripts.ActorEvents_265';
mq.__super__ = u;
mq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: mq
});
var nq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_267'] = nq;
nq.__name__ = 'scripts.ActorEvents_267';
nq.__super__ = u;
nq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: nq
});
var oq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_269'] = oq;
oq.__name__ = 'scripts.ActorEvents_269';
oq.__super__ = u;
oq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: oq
});
var pq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_271'] = pq;
pq.__name__ = 'scripts.ActorEvents_271';
pq.__super__ = u;
pq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: pq
});
var qq = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Current Touch ID'] = '_CurrentTouchID';
this._CurrentTouchID = 0;
this.nameMap.h['Touch Start X'] = '_TouchStartX';
this._TouchStartX = 0;
this.nameMap.h['Self Start X'] = '_SelfStartX';
this._SelfStartX = 0;
this.nameMap.h['Mouse Is Down'] = '_MouseIsDown';
this._MouseIsDown = !1;
this.nameMap.h['Momentum Movement'] = '_MomentumMovement';
this._MomentumMovement = !1;
this.nameMap.h.Tweening = '_Tweening';
this._Tweening = !1;
this.nameMap.h.Momentum = '_Momentum';
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
};
h['scripts.ActorEvents_273'] = qq;
qq.__name__ = 'scripts.ActorEvents_273';
qq.__super__ = u;
qq.prototype = r(u.prototype, {
_CurrentTouchID: null,
_TouchStartX: null,
_SelfStartX: null,
_MouseIsDown: null,
_MomentumMovement: null,
_Tweening: null,
_Momentum: null,
_RightScrollLimit: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
(d.engine.moveCamera(this.actor.getX(), this.actor.getY()),
d.isMouseDown()
? this._MouseIsDown ||
((this._MouseIsDown = !0),
(this._TouchStartX = d.getMouseX()),
(this._SelfStartX = this.actor.getX()))
: !d.isMouseDown() &&
this._MouseIsDown &&
((this._MouseIsDown = !1),
(this._MomentumMovement = !0),
this.actor.setXVelocity(this._Momentum.getXVelocity())),
this._MouseIsDown
? this.actor.setX(this._SelfStartX + (this._TouchStartX - d.getMouseX()))
: this._MomentumMovement &&
(0 < Math.round(this.actor.getXVelocity())
? this.actor.setXVelocity(Math.max(0, this.actor.getXVelocity() - 0.4))
: 0 > Math.round(this.actor.getXVelocity())
? this.actor.setXVelocity(Math.min(0, this.actor.getXVelocity() + 0.4))
: 0 == Math.round(this.actor.getXVelocity()) &&
((this._MomentumMovement = !1), this.actor.setXVelocity(0))),
this.actor.getX() < d.getScreenWidth() / 2
? (this.actor.setX(d.getScreenWidth() / 2),
(this._MomentumMovement = !1),
this.actor.setXVelocity(0),
this._Momentum.setXVelocity(0))
: this.actor.getX() > this._RightScrollLimit &&
(this.actor.setX(this._RightScrollLimit),
this.actor.setXVelocity(0),
this._Momentum.setXVelocity(0)),
this._Momentum.getX() < d.getScreenWidth() / 2
? (this.actor.setX(d.getScreenWidth() / 2),
this.actor.setXVelocity(0),
this._Momentum.setXVelocity(0))
: this._Momentum.getX() > this._RightScrollLimit &&
(this.actor.setX(this._RightScrollLimit),
this.actor.setXVelocity(0),
this._Momentum.setXVelocity(0)),
this.actor.getX() < d.getScreenWidth() / 2 + 16
? this.actor.setX(this.actor.getX() + 1)
: this.actor.getX() > this._RightScrollLimit - 16 &&
this.actor.setX(this.actor.getX() - 1));
},
init: function () {
this.actor.makeAlwaysSimulate();
d.createRecycledActor(d.getActorType(275), this.actor.getX(), this.actor.getY(), 0);
this._Momentum = d.getLastCreatedActor();
this._RightScrollLimit = Math.max(
696 - d.getScreenWidth() / 2 + 64,
d.getScreenWidth() + 64 - d.getScreenWidth() / 2
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: qq
});
var rq = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Screen Diagonal'] = '_ScreenDiagonal';
this._ScreenDiagonal = 0;
this.nameMap.h['Distance X'] = '_DistanceX';
this._DistanceX = 0;
this.nameMap.h['Distance Y'] = '_DistanceY';
this._DistanceY = 0;
this.nameMap.h.Distance = '_Distance';
this._Distance = 0;
this.nameMap.h.Direction = '_Direction';
this._Direction = 0;
this.nameMap.h['Minimum Easing Speed'] = '_MinimumEasingSpeed';
this._MinimumEasingSpeed = 5;
this.nameMap.h.Speed = '_Speed';
this._Speed = 30;
this.nameMap.h.Margin = '_Margin';
this._Margin = 0;
this.nameMap.h.Easing = '_Easing';
this._Easing = !0;
this.nameMap.h['Stop when Colliding'] = '_StopwhenColliding';
this._StopwhenColliding = !0;
this.nameMap.h.Collided = '_Collided';
this._Collided = !1;
this.nameMap.h['Target Actor'] = '_TargetActor';
};
h['scripts.ActorEvents_275'] = rq;
rq.__name__ = 'scripts.ActorEvents_275';
rq.__super__ = u;
rq.prototype = r(u.prototype, {
_ScreenDiagonal: null,
_DistanceX: null,
_DistanceY: null,
_Distance: null,
_Direction: null,
_MinimumEasingSpeed: null,
_Speed: null,
_Margin: null,
_Easing: null,
_StopwhenColliding: null,
_Collided: null,
_TargetActor: null,
_event_Updated: function (a) {
this.wrapper.enabled &&
((a = this._TargetActor),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._TargetActor.isAlive() &&
((this._DistanceX = this._TargetActor.getXCenter() - this.actor.getXCenter()),
(this._DistanceY = this._TargetActor.getYCenter() - this.actor.getYCenter()),
(this._Distance = Math.sqrt(
Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)
)),
(this._Direction = 57.29577951308402 * Math.atan2(this._DistanceY, this._DistanceX)),
!(this._Distance > this._Margin) || (this._StopwhenColliding && this._Collided)
? this.actor.setVelocity(0, 0)
: this._Easing
? this.actor.setVelocity(
this._Direction,
this._MinimumEasingSpeed +
((this._Distance - this._Margin) / this._ScreenDiagonal) * this._Speed
)
: this.actor.setVelocity(this._Direction, this._Speed),
(this._Collided = !1)));
},
_event_ActorActor: function (a) {
this.wrapper.enabled && this._TargetActor == a.otherActor && (this._Collided = !0);
},
init: function () {
this.actor.makeAlwaysSimulate();
for (var a = 0, b = d.getActorsOfType(d.getActorType(273)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._TargetActor = c);
}
this._ScreenDiagonal = Math.sqrt(
Math.pow(d.getScreenWidth(), 2) + Math.pow(d.getScreenHeight(), 2)
);
this._Margin = 8;
this._MinimumEasingSpeed = 48;
this._Speed = 60;
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated));
this.addListener(this.actor.whenCollided, q(this, this._event_ActorActor));
},
forwardMessage: function (a) {},
__class__: rq
});
var sq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_277'] = sq;
sq.__name__ = 'scripts.ActorEvents_277';
sq.__super__ = u;
sq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: sq
});
var tq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_279'] = tq;
tq.__name__ = 'scripts.ActorEvents_279';
tq.__super__ = u;
tq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: tq
});
var uq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_28'] = uq;
uq.__name__ = 'scripts.ActorEvents_28';
uq.__super__ = u;
uq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: uq
});
var vq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_281'] = vq;
vq.__name__ = 'scripts.ActorEvents_281';
vq.__super__ = u;
vq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: vq
});
var wq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_283'] = wq;
wq.__name__ = 'scripts.ActorEvents_283';
wq.__super__ = u;
wq.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.anchorToScreen();
ba.setScale('width', d.getScreenWidth() + 10, this.actor);
ba.setScale('height', d.getScreenHeight() + 10, this.actor);
},
forwardMessage: function (a) {},
__class__: wq
});
var xq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_285'] = xq;
xq.__name__ = 'scripts.ActorEvents_285';
xq.__super__ = u;
xq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: xq
});
var yq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_289'] = yq;
yq.__name__ = 'scripts.ActorEvents_289';
yq.__super__ = u;
yq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: yq
});
var zq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_291'] = zq;
zq.__name__ = 'scripts.ActorEvents_291';
zq.__super__ = u;
zq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: zq
});
var Aq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_293'] = Aq;
Aq.__name__ = 'scripts.ActorEvents_293';
Aq.__super__ = u;
Aq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Aq
});
var Bq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_295'] = Bq;
Bq.__name__ = 'scripts.ActorEvents_295';
Bq.__super__ = u;
Bq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Bq
});
var Cq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_297'] = Cq;
Cq.__name__ = 'scripts.ActorEvents_297';
Cq.__super__ = u;
Cq.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.anchorToScreen();
},
forwardMessage: function (a) {},
__class__: Cq
});
var Dq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_299'] = Dq;
Dq.__name__ = 'scripts.ActorEvents_299';
Dq.__super__ = u;
Dq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Dq
});
var Eq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_30'] = Eq;
Eq.__name__ = 'scripts.ActorEvents_30';
Eq.__super__ = u;
Eq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Eq
});
var Fq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_301'] = Fq;
Fq.__name__ = 'scripts.ActorEvents_301';
Fq.__super__ = u;
Fq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Fq
});
var Gq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_303'] = Gq;
Gq.__name__ = 'scripts.ActorEvents_303';
Gq.__super__ = u;
Gq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Gq
});
var Hq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_305'] = Hq;
Hq.__name__ = 'scripts.ActorEvents_305';
Hq.__super__ = u;
Hq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Hq
});
var Iq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_307'] = Iq;
Iq.__name__ = 'scripts.ActorEvents_307';
Iq.__super__ = u;
Iq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Iq
});
var Jq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_309'] = Jq;
Jq.__name__ = 'scripts.ActorEvents_309';
Jq.__super__ = u;
Jq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Jq
});
var Kq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_311'] = Kq;
Kq.__name__ = 'scripts.ActorEvents_311';
Kq.__super__ = u;
Kq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Kq
});
var Lq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_313'] = Lq;
Lq.__name__ = 'scripts.ActorEvents_313';
Lq.__super__ = u;
Lq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Lq
});
var Mq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_315'] = Mq;
Mq.__name__ = 'scripts.ActorEvents_315';
Mq.__super__ = u;
Mq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Mq
});
var Nq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_317'] = Nq;
Nq.__name__ = 'scripts.ActorEvents_317';
Nq.__super__ = u;
Nq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Nq
});
var Oq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_319'] = Oq;
Oq.__name__ = 'scripts.ActorEvents_319';
Oq.__super__ = u;
Oq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Oq
});
var Pq = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Can Make Noise'] = '_CanMakeNoise';
this._CanMakeNoise = !1;
this.nameMap.h['Platform Check'] = '_PlatformCheck';
this._PlatformCheck = !1;
this.nameMap.h['Platform Pos X'] = '_PlatformPosX';
this._PlatformPosX = 0;
this.nameMap.h['Platform Release Delay'] = '_PlatformReleaseDelay';
this._PlatformReleaseDelay = 0;
this.nameMap.h['Current Platform'] = '_CurrentPlatform';
this.nameMap.h['On Platform'] = '_OnPlatform';
this._OnPlatform = !1;
};
h['scripts.ActorEvents_32'] = Pq;
Pq.__name__ = 'scripts.ActorEvents_32';
Pq.__super__ = u;
Pq.prototype = r(u.prototype, {
_GroundCheck: null,
_GravitySpeed: null,
_OnGround: null,
_CanMakeNoise: null,
_PlatformCheck: null,
_PlatformPosX: null,
_PlatformReleaseDelay: null,
_CurrentPlatform: null,
_OnPlatform: null,
init: function () {},
forwardMessage: function (a) {},
__class__: Pq
});
var Qq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_321'] = Qq;
Qq.__name__ = 'scripts.ActorEvents_321';
Qq.__super__ = u;
Qq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Qq
});
var Rq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_323'] = Rq;
Rq.__name__ = 'scripts.ActorEvents_323';
Rq.__super__ = u;
Rq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Rq
});
var Sq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_325'] = Sq;
Sq.__name__ = 'scripts.ActorEvents_325';
Sq.__super__ = u;
Sq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Sq
});
var Tq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_327'] = Tq;
Tq.__name__ = 'scripts.ActorEvents_327';
Tq.__super__ = u;
Tq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Tq
});
var Uq = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_329'] = Uq;
Uq.__name__ = 'scripts.ActorEvents_329';
Uq.__super__ = u;
Uq.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
c.getY() != this.actor.getY() ||
c == this.actor ||
(this._First = !1);
}
if (this._First) {
this._RightScrollLimit = Math.max(760, d.getScreenWidth() + 64);
if (this.actor.getWidth() < this._RightScrollLimit)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActor(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
2
),
(this._TotalLength += this.actor.getWidth());
this.actor.getScreenY() + this.actor.getHeight() < d.getScreenHeight() &&
d.createRecycledActor(
d.getActorType(329),
this.actor.getX(),
this.actor.getY() + this.actor.getHeight(),
2
);
}
},
forwardMessage: function (a) {},
__class__: Uq
});
var Vq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_331'] = Vq;
Vq.__name__ = 'scripts.ActorEvents_331';
Vq.__super__ = u;
Vq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Vq
});
var Wq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_333'] = Wq;
Wq.__name__ = 'scripts.ActorEvents_333';
Wq.__super__ = u;
Wq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Wq
});
var Xq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_335'] = Xq;
Xq.__name__ = 'scripts.ActorEvents_335';
Xq.__super__ = u;
Xq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Xq
});
var Yq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_337'] = Yq;
Yq.__name__ = 'scripts.ActorEvents_337';
Yq.__super__ = u;
Yq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Yq
});
var Zq = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_339'] = Zq;
Zq.__name__ = 'scripts.ActorEvents_339';
Zq.__super__ = u;
Zq.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Zq
});
var $q = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_34'] = $q;
$q.__name__ = 'scripts.ActorEvents_34';
$q.__super__ = u;
$q.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: $q
});
var ar = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_341'] = ar;
ar.__name__ = 'scripts.ActorEvents_341';
ar.__super__ = u;
ar.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: ar
});
var br = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_343'] = br;
br.__name__ = 'scripts.ActorEvents_343';
br.__super__ = u;
br.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: br
});
var cr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_345'] = cr;
cr.__name__ = 'scripts.ActorEvents_345';
cr.__super__ = u;
cr.prototype = r(u.prototype, {
_event_Updating: function (a) {
this.wrapper.enabled &&
(k.engine.getGameAttribute('MOBILE MODE') && 'Normal' == this.actor.getAnimation()
? this.actor.setAnimation('NormalC')
: k.engine.getGameAttribute('MOBILE MODE') ||
'NormalC' != this.actor.getAnimation() ||
this.actor.setAnimation('Normal'),
k.engine.getGameAttribute('MOBILE MODE') && 'Off' == this.actor.getAnimation()
? this.actor.setAnimation('OffC')
: k.engine.getGameAttribute('MOBILE MODE') ||
'OffC' != this.actor.getAnimation() ||
this.actor.setAnimation('Off'));
},
init: function () {
d.createRecycledActorOnLayer(
d.getActorType(550),
this.actor.getX(),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: cr
});
var dr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_347'] = dr;
dr.__name__ = 'scripts.ActorEvents_347';
dr.__super__ = u;
dr.prototype = r(u.prototype, {
_event_Updating: function (a) {
this.wrapper.enabled &&
(k.engine.getGameAttribute('MOBILE MODE') && 'Normal' == this.actor.getAnimation()
? this.actor.setAnimation('NormalC')
: k.engine.getGameAttribute('MOBILE MODE') ||
'NormalC' != this.actor.getAnimation() ||
this.actor.setAnimation('Normal'),
k.engine.getGameAttribute('MOBILE MODE') && 'Off' == this.actor.getAnimation()
? this.actor.setAnimation('OffC')
: k.engine.getGameAttribute('MOBILE MODE') ||
'OffC' != this.actor.getAnimation() ||
this.actor.setAnimation('Off'));
},
init: function () {
d.createRecycledActorOnLayer(
d.getActorType(550),
this.actor.getX(),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: dr
});
var er = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Direction RN'] = '_DirectionRN';
this._DirectionRN = 0;
this.nameMap.h.Got = '_Got';
this._Got = !1;
};
h['scripts.ActorEvents_349'] = er;
er.__name__ = 'scripts.ActorEvents_349';
er.__super__ = u;
er.prototype = r(u.prototype, {
_DirectionRN: null,
_Got: null,
_event_HitsDude: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(2);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
!this._Got &&
((this._Got = !0),
d.createRecycledActor(d.getActorType(14), 0, 0, 0),
a.otherActor.setValue('Dude Logic', '_StarCollected', !0),
d.setValueForScene('Stage Logic', '_RumbleName', 'Star'),
d.sayToScene('Stage Logic', '_customEvent_rumble'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(351)),
d.runLater(
100,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Star');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Star');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Star');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Star');
d.recycleActor(b.actor);
},
this.actor
));
},
init: function () {
if (!k.engine.getGameAttribute('Timer Mode')) {
var a = k.engine.getGameAttribute('Stars List'),
b = d.getCurrentSceneName().split(' ')[1];
(X.contains(
a,
null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b))
) ||
k.engine.getGameAttribute('Star Collected')) &&
d.recycleActor(this.actor);
}
this.addListener(this.actor.whenCollided, q(this, this._event_HitsDude));
},
forwardMessage: function (a) {},
__class__: er
});
var fr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_353'] = fr;
fr.__name__ = 'scripts.ActorEvents_353';
fr.__super__ = u;
fr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: fr
});
var gr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_355'] = gr;
gr.__name__ = 'scripts.ActorEvents_355';
gr.__super__ = u;
gr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: gr
});
var hr = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Springing = '_Springing';
this._Springing = !1;
this.nameMap.h['Facing Left'] = '_FacingLeft';
this._FacingLeft = !1;
};
h['scripts.ActorEvents_359'] = hr;
hr.__name__ = 'scripts.ActorEvents_359';
hr.__super__ = u;
hr.prototype = r(u.prototype, {
_Springing: null,
_FacingLeft: null,
_event_HitsDude: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(2);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
a.thisFromTop &&
!this._Springing &&
('Left' == this.actor.getAnimation() && (this._FacingLeft = !0),
(this._Springing = !0),
a.otherActor.setYVelocity(-72),
this._FacingLeft
? this.actor.setAnimation('Springing Left')
: this.actor.setAnimation('Springing Right'),
a.otherActor.setValue('Dude Logic', '_Springing', !0),
a.otherActor.setValue('Dude Logic', '_CanDoubleJump', !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(220)),
d.runLater(
200,
function (a) {
b._FacingLeft ? b.actor.setAnimation('Left') : b.actor.setAnimation('Right');
b._Springing = !1;
},
this.actor
));
},
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
d.runLater(
310,
function (b) {
d.startShakingScreen(0.01, 0.2);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
d.runLater(150, function (a) {}, a.actor);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getXCenter() - 8,
a.actor.getY() + a.actor.getHeight() - 8,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() - 8,
a.actor.getY() + a.actor.getHeight() - 8,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() + a.actor.getWidth() - 8,
a.actor.getY() + a.actor.getHeight() - 8,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
},
this.actor
);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsDude));
},
forwardMessage: function (a) {},
__class__: hr
});
var ir = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Flash On'] = '_FlashOn';
this._FlashOn = !1;
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h.Flash = '_Flash';
this._Flash = !1;
};
h['scripts.ActorEvents_361'] = ir;
ir.__name__ = 'scripts.ActorEvents_361';
ir.__super__ = u;
ir.prototype = r(u.prototype, {
_FlashOn: null,
_GravitySpeed: null,
_Flash: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
_event_ExitsScene: function (a, b, c, e) {
this.wrapper.enabled && e && d.recycleActor(this.actor);
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this._Flash &&
(this._FlashOn
? ((this._FlashOn = !1), this.actor.enableActorDrawing())
: ((this._FlashOn = !0), this.actor.disableActorDrawing()));
},
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 22;
d.runLater(
600,
function (b) {
a._Flash = !0;
},
this.actor
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_ExitsScene));
d.runPeriodically(50, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: ir
});
var jr = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Flash On'] = '_FlashOn';
this._FlashOn = !1;
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h.Flash = '_Flash';
this._Flash = !1;
};
h['scripts.ActorEvents_363'] = jr;
jr.__name__ = 'scripts.ActorEvents_363';
jr.__super__ = u;
jr.prototype = r(u.prototype, {
_FlashOn: null,
_GravitySpeed: null,
_Flash: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
_event_ExitsScene: function (a, b, c, e) {
this.wrapper.enabled && e && d.recycleActor(this.actor);
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this._Flash &&
(this._FlashOn
? ((this._FlashOn = !1), this.actor.enableActorDrawing())
: ((this._FlashOn = !0), this.actor.disableActorDrawing()));
},
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 22;
d.runLater(
600,
function (b) {
a._Flash = !0;
},
this.actor
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_ExitsScene));
d.runPeriodically(50, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: jr
});
var kr = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Flash On'] = '_FlashOn';
this._FlashOn = !1;
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h.Flash = '_Flash';
this._Flash = !1;
};
h['scripts.ActorEvents_365'] = kr;
kr.__name__ = 'scripts.ActorEvents_365';
kr.__super__ = u;
kr.prototype = r(u.prototype, {
_FlashOn: null,
_GravitySpeed: null,
_Flash: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
_event_ExitsScene: function (a, b, c, e) {
this.wrapper.enabled && e && d.recycleActor(this.actor);
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this._Flash &&
(this._FlashOn
? ((this._FlashOn = !1), this.actor.enableActorDrawing())
: ((this._FlashOn = !0), this.actor.disableActorDrawing()));
},
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 22;
d.runLater(
600,
function (b) {
a._Flash = !0;
},
this.actor
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_ExitsScene));
d.runPeriodically(50, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: kr
});
var lr = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Can Make Noise'] = '_CanMakeNoise';
this._CanMakeNoise = !1;
};
h['scripts.ActorEvents_379'] = lr;
lr.__name__ = 'scripts.ActorEvents_379';
lr.__super__ = u;
lr.prototype = r(u.prototype, {
_GroundCheck: null,
_GravitySpeed: null,
_OnGround: null,
_CanMakeNoise: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
(this._GroundCheck
? this._OnGround ||
((this._OnGround = !0),
this._CanMakeNoise
? k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(117))
: (this._CanMakeNoise = !0))
: this._OnGround && (this._OnGround = !1),
(this._GroundCheck = !1),
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed)),
0 < this.actor.getXVelocity()
? this.actor.setXVelocity(Math.max(0, this.actor.getXVelocity() - 1))
: 0 > this.actor.getXVelocity() &&
this.actor.setXVelocity(Math.min(0, this.actor.getXVelocity() + 1)));
},
_event_HitsGround: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b && a.thisFromBottom && (this._GroundCheck = !0);
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this._GroundCheck = this._OnGround = !0;
this._CanMakeNoise = !1;
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
},
forwardMessage: function (a) {},
__class__: lr
});
var mr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_38'] = mr;
mr.__name__ = 'scripts.ActorEvents_38';
mr.__super__ = u;
mr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: mr
});
var nr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_381'] = nr;
nr.__name__ = 'scripts.ActorEvents_381';
nr.__super__ = u;
nr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: nr
});
var or = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_383'] = or;
or.__name__ = 'scripts.ActorEvents_383';
or.__super__ = u;
or.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: or
});
var pr = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Springing = '_Springing';
this._Springing = !1;
this.nameMap.h['Facing Left'] = '_FacingLeft';
this._FacingLeft = !1;
};
h['scripts.ActorEvents_385'] = pr;
pr.__name__ = 'scripts.ActorEvents_385';
pr.__super__ = u;
pr.prototype = r(u.prototype, {
_Springing: null,
_FacingLeft: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
'Start' == this.actor.getAnimation() &&
4 == this.actor.getCurrentFrame() &&
this.actor.setAnimation('Normal');
},
_event_HitsDude: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(2);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
a.thisFromTop &&
!this._Springing &&
('Left' == this.actor.getAnimation() && (this._FacingLeft = !0),
(this._Springing = !0),
a.otherActor.setYVelocity(-72),
this.actor.setAnimation('Springing'),
a.otherActor.setValue('Dude Logic', '_Springing', !0),
a.otherActor.setValue('Dude Logic', '_CanDoubleJump', !0),
d.runLater(150, function (a) {}, this.actor),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(220)),
d.runLater(
200,
function (a) {
b.actor.setAnimation('Normal');
b._Springing = !1;
},
this.actor
));
},
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
d.runLater(
700,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(28),
a.actor.getXCenter() - 16,
a.actor.getYCenter() - 16,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().moveBy(0, -192, 0.6, J.backOut);
},
this.actor
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsDude));
},
forwardMessage: function (a) {},
__class__: pr
});
var qr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_389'] = qr;
qr.__name__ = 'scripts.ActorEvents_389';
qr.__super__ = u;
qr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: qr
});
var rr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_391'] = rr;
rr.__name__ = 'scripts.ActorEvents_391';
rr.__super__ = u;
rr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: rr
});
var sr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_393'] = sr;
sr.__name__ = 'scripts.ActorEvents_393';
sr.__super__ = u;
sr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: sr
});
var tr = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['Times Up'] = '_TimesUp';
this._TimesUp = !1;
};
h['scripts.ActorEvents_395'] = tr;
tr.__name__ = 'scripts.ActorEvents_395';
tr.__super__ = u;
tr.prototype = r(u.prototype, {
_GravitySpeed: null,
_TimesUp: null,
_event_HitsGround: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b &&
(this._TimesUp
? (k.engine.getGameAttribute('Sound Disabled') ||
(this.actor.isOnScreen() && d.playSound(d.getSound(221))),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, 16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, 16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.recycleActor(this.actor))
: a.thisFromBottom &&
(k.engine.getGameAttribute('Sound Disabled') ||
(0 <= this.actor.getYVelocity() &&
this.actor.isOnScreen() &&
d.playSound(d.getSound(220))),
this.actor.setYVelocity(d.randomInt(-50, -64))));
},
_event_AfterNsecs: function (a) {
this.wrapper.enabled && (this._TimesUp = !0);
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = d.randomInt(28, 48);
this.actor.setAnimation('' + d.randomInt(1, 6));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
d.runLater(
1e3 * (d.randomInt(50, 150) / 100),
q(this, this._event_AfterNsecs),
this.actor
);
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: tr
});
var ur = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Springing = '_Springing';
this._Springing = !1;
this.nameMap.h['Facing Left'] = '_FacingLeft';
this._FacingLeft = !1;
};
h['scripts.ActorEvents_397'] = ur;
ur.__name__ = 'scripts.ActorEvents_397';
ur.__super__ = u;
ur.prototype = r(u.prototype, {
_Springing: null,
_FacingLeft: null,
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
d.createRecycledActorOnLayer(
d.getActorType(399),
this.actor.getX(),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.createRecycledActorOnLayer(
d.getActorType(62),
this.actor.getXCenter() - 16,
this.actor.getY() + this.actor.getHeight() - 32,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.runLater(
700,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(28),
a.actor.getXCenter() - 16,
a.actor.getYCenter() - 16,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().moveBy(0, -128, 0.6, J.backOut);
b = 0;
for (var c = d.getActorsOfType(d.getActorType(399)); b < c.length; ) {
var e = c[b];
++b;
null == e || e.dead || e.recycled || e.moveToBottom();
}
},
this.actor
);
},
forwardMessage: function (a) {},
__class__: ur
});
var vr = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Springing = '_Springing';
this._Springing = !1;
this.nameMap.h['Facing Left'] = '_FacingLeft';
this._FacingLeft = !1;
};
h['scripts.ActorEvents_399'] = vr;
vr.__name__ = 'scripts.ActorEvents_399';
vr.__super__ = u;
vr.prototype = r(u.prototype, {
_Springing: null,
_FacingLeft: null,
init: function () {},
forwardMessage: function (a) {},
__class__: vr
});
var wr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_40'] = wr;
wr.__name__ = 'scripts.ActorEvents_40';
wr.__super__ = u;
wr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: wr
});
var xr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_401'] = xr;
xr.__name__ = 'scripts.ActorEvents_401';
xr.__super__ = u;
xr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: xr
});
var yr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_403'] = yr;
yr.__name__ = 'scripts.ActorEvents_403';
yr.__super__ = u;
yr.prototype = r(u.prototype, {
_event_Updating: function (a) {
if (this.wrapper.enabled && 5 == this.actor.getCurrentFrame()) {
for (a = 0; 6 > a; )
a++,
d.createRecycledActor(
d.getActorType(94),
d.randomInt(
(this.actor.getXCenter() - 32) | 0,
(this.actor.getXCenter() + 32) | 0
) - 8,
d.randomInt(
(this.actor.getYCenter() - 32) | 0,
(this.actor.getYCenter() + 32) | 0
) - 8,
0
),
d.getLastCreatedActor().setAnimation('Smoke');
d.recycleActor(this.actor);
}
},
init: function () {
this.actor.makeAlwaysSimulate();
d.createRecycledActorOnLayer(
d.getActorType(408),
this.actor.getXCenter() - 48,
this.actor.getYCenter() - 48,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, -96, 0.6, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(408),
this.actor.getXCenter() - 48,
this.actor.getYCenter() - 48,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, 96, 0.6, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(408),
this.actor.getXCenter() - 48,
this.actor.getYCenter() - 48,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-96, 0, 0.6, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(408),
this.actor.getXCenter() - 48,
this.actor.getYCenter() - 48,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(96, 0, 0.6, J.backOut);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: yr
});
var zr = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['Times Up'] = '_TimesUp';
this._TimesUp = !1;
};
h['scripts.ActorEvents_406'] = zr;
zr.__name__ = 'scripts.ActorEvents_406';
zr.__super__ = u;
zr.prototype = r(u.prototype, {
_GravitySpeed: null,
_TimesUp: null,
_event_HitsGround: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b &&
(this._TimesUp
? (d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, 16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, 16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.recycleActor(this.actor))
: a.thisFromBottom &&
(k.engine.getGameAttribute('Sound Disabled') ||
(0 <= this.actor.getYVelocity() &&
this.actor.isOnScreen() &&
d.playSound(d.getSound(414))),
this.actor.setYVelocity(d.randomInt(-50, -64))));
},
_event_AfterNsecs: function (a) {
this.wrapper.enabled && (this._TimesUp = !0);
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
_event_EveryNsecs2: function (a) {
this.wrapper.enabled &&
(d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
d.getLastCreatedActor().setAnimation('Smoke'));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = d.randomInt(28, 48);
this.actor.setAnimation('' + d.randomInt(1, 6));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
d.runLater(1e3, q(this, this._event_AfterNsecs), this.actor);
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
d.runPeriodically(200, q(this, this._event_EveryNsecs2), this.actor);
},
forwardMessage: function (a) {},
__class__: zr
});
var Ar = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_408'] = Ar;
Ar.__name__ = 'scripts.ActorEvents_408';
Ar.__super__ = u;
Ar.prototype = r(u.prototype, {
_event_Updating: function (a) {
this.wrapper.enabled &&
5 == this.actor.getCurrentFrame() &&
(d.createRecycledActor(
d.getActorType(94),
d.randomInt((this.actor.getXCenter() - 32) | 0, (this.actor.getXCenter() + 32) | 0) -
8,
d.randomInt((this.actor.getYCenter() - 32) | 0, (this.actor.getYCenter() + 32) | 0) -
8,
0
),
d.getLastCreatedActor().setAnimation('Smoke'),
d.createRecycledActor(
d.getActorType(94),
d.randomInt((this.actor.getXCenter() - 32) | 0, (this.actor.getXCenter() + 32) | 0) -
8,
d.randomInt((this.actor.getYCenter() - 32) | 0, (this.actor.getYCenter() + 32) | 0) -
8,
0
),
d.getLastCreatedActor().setAnimation('Smoke'),
d.createRecycledActor(
d.getActorType(94),
d.randomInt((this.actor.getXCenter() - 32) | 0, (this.actor.getXCenter() + 32) | 0) -
8,
d.randomInt((this.actor.getYCenter() - 32) | 0, (this.actor.getYCenter() + 32) | 0) -
8,
0
),
d.getLastCreatedActor().setAnimation('Smoke'),
d.createRecycledActor(
d.getActorType(94),
d.randomInt((this.actor.getXCenter() - 32) | 0, (this.actor.getXCenter() + 32) | 0) -
8,
d.randomInt((this.actor.getYCenter() - 32) | 0, (this.actor.getYCenter() + 32) | 0) -
8,
0
),
d.getLastCreatedActor().setAnimation('Smoke'),
d.recycleActor(this.actor));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Ar
});
var Br = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Springing = '_Springing';
this._Springing = !1;
};
h['scripts.ActorEvents_410'] = Br;
Br.__name__ = 'scripts.ActorEvents_410';
Br.__super__ = u;
Br.prototype = r(u.prototype, {
_Springing: null,
_event_HitsDude: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(2);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
(a.otherActor.setYVelocity(-56),
this._Springing ||
((this._Springing = !0),
a.otherActor.setValue('Dude Logic', '_Springing', !0),
a.otherActor.setValue('Dude Logic', '_CanDoubleJump', !0),
this.actor.setFilter([d.createBrightnessFilter(100)]),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(412)),
d.setValueForScene('Stage Logic', '_RumbleName', 'Balloon'),
d.sayToScene('Stage Logic', '_customEvent_rumble'),
d.runLater(
100,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-16, -16, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Small');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(16, -16, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Small');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-16, 16, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Small');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(16, 16, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Small');
b.actor.setAnimation('Hidden');
b.actor.clearFilters();
d.runLater(
100,
function (a) {
b._Springing = !1;
d.runLater(
2e3,
function (a) {
b.actor.setAnimation('Appear');
},
b.actor
);
},
b.actor
);
},
this.actor
)));
},
_event_Updating: function (a) {
this.wrapper.enabled &&
'Appear' == this.actor.getAnimation() &&
5 == this.actor.getCurrentFrame() &&
this.actor.setAnimation('Normal');
},
init: function () {
this.addListener(this.actor.whenCollided, q(this, this._event_HitsDude));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Br
});
var Cr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_417'] = Cr;
Cr.__name__ = 'scripts.ActorEvents_417';
Cr.__super__ = u;
Cr.prototype = r(u.prototype, {
init: function () {
this.actor.disableActorDrawing();
},
forwardMessage: function (a) {},
__class__: Cr
});
var Dr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_419'] = Dr;
Dr.__name__ = 'scripts.ActorEvents_419';
Dr.__super__ = u;
Dr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Dr
});
var Er = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_42'] = Er;
Er.__name__ = 'scripts.ActorEvents_42';
Er.__super__ = u;
Er.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Er
});
var Fr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_421'] = Fr;
Fr.__name__ = 'scripts.ActorEvents_421';
Fr.__super__ = u;
Fr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Fr
});
var Gr = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['Times Up'] = '_TimesUp';
this._TimesUp = !1;
};
h['scripts.ActorEvents_425'] = Gr;
Gr.__name__ = 'scripts.ActorEvents_425';
Gr.__super__ = u;
Gr.prototype = r(u.prototype, {
_GravitySpeed: null,
_TimesUp: null,
_event_HitsGround: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b &&
(this._TimesUp
? (k.engine.getGameAttribute('Sound Disabled') ||
(this.actor.isOnScreen() && d.playSound(d.getSound(429))),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, 16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, 16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.recycleActor(this.actor))
: a.thisFromBottom &&
(k.engine.getGameAttribute('Sound Disabled') ||
(0 <= this.actor.getYVelocity() &&
this.actor.isOnScreen() &&
d.playSound(d.getSound(429))),
this.actor.setYVelocity(d.randomInt(-50, -64))));
},
_event_AfterNsecs: function (a) {
this.wrapper.enabled && (this._TimesUp = !0);
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = d.randomInt(28, 48);
this.actor.setAnimation('' + d.randomInt(1, 4));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
d.runLater(
1e3 * (d.randomInt(100, 300) / 100),
q(this, this._event_AfterNsecs),
this.actor
);
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Gr
});
var Hr = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['Times Up'] = '_TimesUp';
this._TimesUp = !1;
};
h['scripts.ActorEvents_427'] = Hr;
Hr.__name__ = 'scripts.ActorEvents_427';
Hr.__super__ = u;
Hr.prototype = r(u.prototype, {
_GravitySpeed: null,
_TimesUp: null,
_event_HitsGround: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType();
a = a.otherActor.getGroup();
b = b == c || b == a;
} else b = !1;
b &&
(k.engine.getGameAttribute('Sound Disabled') ||
(this.actor.isOnScreen() && d.playSound(d.getSound(221))),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Booze'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Booze'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, 16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Booze'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, 16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Booze'),
d.recycleActor(this.actor));
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = d.randomInt(28, 48);
this.actor.setAnimation('' + d.randomInt(1, 2));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Hr
});
var Ir = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Sweat = '_Sweat';
this._Sweat = !1;
this.nameMap.h.Sleep = '_Sleep';
this._Sleep = !1;
this.nameMap.h['Snooze Z List'] = '_SnoozeZList';
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h.Exclamation = '_Exclamation';
this.nameMap.h['No Gravity'] = '_NoGravity';
this._NoGravity = !1;
this.nameMap.h.Jumping = '_Jumping';
this._Jumping = !1;
this.nameMap.h.Snore = '_Snore';
this._Snore = !1;
this.nameMap.h.Shadow = '_Shadow';
this.nameMap.h.Ending = '_Ending';
this._Ending = !1;
this.nameMap.h['Ending Stopped'] = '_EndingStopped';
this._EndingStopped = !1;
this.nameMap.h['Possum Sprite'] = '_PossumSprite';
};
h['scripts.ActorEvents_431'] = Ir;
Ir.__name__ = 'scripts.ActorEvents_431';
Ir.__super__ = u;
Ir.prototype = r(u.prototype, {
_Sweat: null,
_Sleep: null,
_SnoozeZList: null,
_GravitySpeed: null,
_Exclamation: null,
_NoGravity: null,
_Jumping: null,
_Snore: null,
_Shadow: null,
_Ending: null,
_EndingStopped: null,
_PossumSprite: null,
_event_Updating: function (a) {
if (this.wrapper.enabled) {
if (
!this._EndingStopped &&
this._Ending &&
this.actor.getXCenter() >= d.getSceneWidth() - 640
) {
this._EndingStopped = !0;
this.actor.setXVelocity(0);
a = 0;
for (var b = d.getActorsOfType(d.getActorType(433)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
(c.setXVelocity(0), c.setValue('Cutscene Baby Logic', '_Stop', !0));
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(514)); a < b.length; )
(c = b[a]), ++a, null == c || c.dead || c.recycled || c.shout('_customEvent_Up');
this.actor.setAnimation('Look Up');
}
k.engine.getGameAttribute('Possum Mode')
? ((a = this._PossumSprite),
(a = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a))
: (a = !1);
a &&
(this._PossumSprite.setX(this.actor.getX()),
this._PossumSprite.setY(this.actor.getY() - 2),
this._PossumSprite.getAnimation() != this.actor.getAnimation() &&
this._PossumSprite.setAnimation(this.actor.getAnimation()));
}
},
_event_Sweat: function (a) {
this.wrapper.enabled &&
(this._Sweat ||
('Intro Cutscene' != d.getCurrentSceneName() &&
'Ending' != d.getCurrentSceneName())) &&
(0 < this.actor.getXVelocity()
? (d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 4,
this.actor.getY() + 4,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Sweat'))
: 0 > this.actor.getXVelocity() &&
(d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 4,
this.actor.getY() + 4,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Sweat')));
},
_event_Sleeping: function (a) {
this.wrapper.enabled &&
'Sleep' == this.actor.getAnimation() &&
(d.createRecycledActor(
d.getActorType(127),
this.actor.getXCenter() - 12,
this.actor.getY(),
0
),
this._SnoozeZList.push(d.getLastCreatedActor()),
this._Snore
? (this._Snore = !1)
: ((this._Snore = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(454))));
},
_event_ActorGroup: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType();
a = a.otherActor.getGroup();
b = b == c || b == a;
} else b = !1;
b &&
0 < this.actor.getYVelocity() &&
this._Jumping &&
((this._Jumping = !1),
this.actor.setAnimation('Walk Right'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(117)),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut));
},
_event_SnoozeZKilled: function (a) {
this.wrapper.enabled &&
X.contains(this._SnoozeZList, a) &&
A.remove(this._SnoozeZList, a);
},
_event_Gravity: function (a) {
this.wrapper.enabled &&
(this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed)),
'Cave Cutscene' == d.getCurrentSceneName() &&
0 < this.actor.getYVelocity() &&
'Fall Right' != this.actor.getAnimation() &&
this.actor.setAnimation('Fall Right'));
},
_customEvent_Sleep: function () {
this.actor.setAnimation('Sleep');
this._Sleep = !0;
},
_customEvent_Wake: function () {
var a = this;
this._Sleep = !1;
this.actor.setYVelocity(-20);
this.actor.setAnimation('Idle Right');
d.createRecycledActor(
d.getActorType(131),
this.actor.getXCenter() - 14,
this.actor.getY() - 28,
0
);
this._Exclamation = d.getLastCreatedActor();
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(181));
d.runLater(
600,
function (b) {
a._Sweat = !0;
a.actor.setYVelocity(-20);
a.actor.setAnimation('Idle Left');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(181));
},
this.actor
);
d.runLater(
1200,
function (b) {
a.actor.setYVelocity(-20);
a.actor.setAnimation('Idle Right');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(181));
},
this.actor
);
d.runLater(
1800,
function (b) {
d.recycleActor(a._Exclamation);
a.actor.setAnimation('Walk Right');
a.actor.setXVelocity(30);
d.runLater(
200,
function (b) {
a.actor.setYVelocity(-46);
a._Jumping = !0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(109));
},
a.actor
);
},
this.actor
);
},
init: function () {
this.actor.makeAlwaysSimulate();
this._SnoozeZList = [];
this._GravitySpeed = 48;
k.engine.getGameAttribute('Possum Mode') &&
(d.createRecycledActorOnLayer(
d.getActorType(537),
this.actor.getX(),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
(this._PossumSprite = d.getLastCreatedActor()),
this.actor.disableActorDrawing());
'Ending' == d.getCurrentSceneName() &&
((this._Ending = !0),
this.actor.setXVelocity(12),
this.actor.setAnimation('Walk Right'));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
d.runPeriodically(500, q(this, this._event_Sweat), this.actor);
d.runPeriodically(700, q(this, this._event_Sleeping), this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_ActorGroup));
this.addListenerWithKey(
d.engine.whenTypeGroupKilledEvents,
d.getActorType(127),
q(this, this._event_SnoozeZKilled)
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Gravity));
},
forwardMessage: function (a) {},
__class__: Ir
});
var Jr = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Bounce = '_Bounce';
this._Bounce = !1;
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['Back and Forth'] = '_BackandForth';
this._BackandForth = !1;
};
h['scripts.ActorEvents_433'] = Jr;
Jr.__name__ = 'scripts.ActorEvents_433';
Jr.__super__ = u;
Jr.prototype = r(u.prototype, {
_Bounce: null,
_GravitySpeed: null,
_BackandForth: null,
init: function () {},
forwardMessage: function (a) {},
__class__: Jr
});
var Kr = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Hidden = '_Hidden';
this._Hidden = !1;
};
h['scripts.ActorEvents_435'] = Kr;
Kr.__name__ = 'scripts.ActorEvents_435';
Kr.__super__ = u;
Kr.prototype = r(u.prototype, {
_Hidden: null,
init: function () {},
forwardMessage: function (a) {},
__class__: Kr
});
var Lr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_437'] = Lr;
Lr.__name__ = 'scripts.ActorEvents_437';
Lr.__super__ = u;
Lr.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
ba.setScale('width', d.getScreenWidth() + 10, this.actor);
ba.setScale('height', d.getScreenHeight() / 2 + 5, this.actor);
},
forwardMessage: function (a) {},
__class__: Lr
});
var Mr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_439'] = Mr;
Mr.__name__ = 'scripts.ActorEvents_439';
Mr.__super__ = u;
Mr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Mr
});
var Nr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_44'] = Nr;
Nr.__name__ = 'scripts.ActorEvents_44';
Nr.__super__ = u;
Nr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Nr
});
var Or = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
};
h['scripts.ActorEvents_443'] = Or;
Or.__name__ = 'scripts.ActorEvents_443';
Or.__super__ = u;
Or.prototype = r(u.prototype, {
_GravitySpeed: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Or
});
var Pr = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h.Bounce = '_Bounce';
this._Bounce = !1;
};
h['scripts.ActorEvents_445'] = Pr;
Pr.__name__ = 'scripts.ActorEvents_445';
Pr.__super__ = u;
Pr.prototype = r(u.prototype, {
_GravitySpeed: null,
_Bounce: null,
_event_ActorGroup: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorGroup(1);
var e = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == e || c == a;
} else c = !1;
if (
c &&
(this._Bounce ||
((this._Bounce = !0),
this.actor.setYVelocity(-76),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(117)),
d.startShakingScreen(0.002, 0.05),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut),
d.runLater(
100,
function (a) {
b._Bounce = !1;
},
this.actor
)),
this.actor.getX() < d.getScreenXCenter() - 64 &&
this.actor.getY() > 0.2 * d.getScreenHeight() &&
(this.actor.bringToFront(), (c = this.actor), 0 == c.physicsMode))
)
for (c = c.getBody().getFixtureList(); null != c; )
c.getBody().DestroyFixture(c), (c = c.getNext());
},
_event_Updating: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this.actor.setXVelocity(-14);
this.actor.setYVelocity(-90);
this.addListener(this.actor.whenCollided, q(this, this._event_ActorGroup));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Pr
});
var Qr = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h.Bounce = '_Bounce';
this._Bounce = !1;
};
h['scripts.ActorEvents_447'] = Qr;
Qr.__name__ = 'scripts.ActorEvents_447';
Qr.__super__ = u;
Qr.prototype = r(u.prototype, {
_GravitySpeed: null,
_Bounce: null,
_event_ActorGroup: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorGroup(1);
var e = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == e || c == a;
} else c = !1;
c &&
!this._Bounce &&
((this._Bounce = !0),
this.actor.setAnimation('Right Bounce'),
this.actor.setCurrentFrame(0),
this.actor.setXVelocity(0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(117)),
d.startShakingScreen(0.002, 0.05),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut),
d.runLater(
100,
function (a) {
b.actor.setYVelocity(-60);
b.actor.setXVelocity(26);
d.runLater(
100,
function (a) {
b._Bounce = !1;
},
b.actor
);
},
this.actor
));
},
_event_Updating: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this.actor.setXVelocity(26);
this.actor.setYVelocity(-60);
this.addListener(this.actor.whenCollided, q(this, this._event_ActorGroup));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Qr
});
var Rr = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Springing = '_Springing';
this._Springing = !1;
};
h['scripts.ActorEvents_452'] = Rr;
Rr.__name__ = 'scripts.ActorEvents_452';
Rr.__super__ = u;
Rr.prototype = r(u.prototype, {
_Springing: null,
init: function () {
this.actor.makeAlwaysSimulate();
},
forwardMessage: function (a) {},
__class__: Rr
});
var Sr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_455'] = Sr;
Sr.__name__ = 'scripts.ActorEvents_455';
Sr.__super__ = u;
Sr.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.disableActorDrawing();
},
forwardMessage: function (a) {},
__class__: Sr
});
var Tr = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Snooze Z List'] = '_SnoozeZList';
this.nameMap.h.Snore = '_Snore';
this._Snore = !1;
this.nameMap.h.Fall = '_Fall';
this._Fall = !1;
this.nameMap.h.Yawned = '_Yawned';
this._Yawned = !1;
this.nameMap.h['Blink 1'] = '_Blink1';
this._Blink1 = !1;
this.nameMap.h['Blink 2'] = '_Blink2';
this._Blink2 = !1;
this.nameMap.h.Stretch = '_Stretch';
this._Stretch = !1;
this.nameMap.h['Z Count'] = '_ZCount';
this._ZCount = 0;
};
h['scripts.ActorEvents_457'] = Tr;
Tr.__name__ = 'scripts.ActorEvents_457';
Tr.__super__ = u;
Tr.prototype = r(u.prototype, {
_SnoozeZList: null,
_Snore: null,
_Fall: null,
_Yawned: null,
_Blink1: null,
_Blink2: null,
_Stretch: null,
_ZCount: null,
_event_Sleeping: function (a) {
!this.wrapper.enabled ||
('Sleep' != this.actor.getAnimation() && 'Hidden' != this.actor.getAnimation()) ||
(d.createRecycledActor(
d.getActorType(463),
this.actor.getXCenter() - 24,
this.actor.getY() + 24,
0
),
this._SnoozeZList.push(d.getLastCreatedActor()),
d.getLastCreatedActor().setCurrentFrame(this._ZCount | 0),
(this._ZCount = Math.min(this._ZCount + 4, 22)),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(454)));
},
_event_Updating: function (a) {
var b = this;
if (
this.wrapper.enabled &&
('Wake Up' == this.actor.getAnimation() &&
26 <= this.actor.getCurrentFrame() &&
!this._Stretch &&
((this._Stretch = !0),
k.engine.getGameAttribute('Sound Disabled') ||
d.playSoundOnChannel(d.getSound(472), 15)),
'Wake Up' == this.actor.getAnimation() &&
4 <= this.actor.getCurrentFrame() &&
!this._Blink1 &&
((this._Blink1 = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(471))),
'Wake Up' == this.actor.getAnimation() &&
9 <= this.actor.getCurrentFrame() &&
!this._Blink2 &&
((this._Blink2 = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(471))),
'Wake Up' == this.actor.getAnimation() &&
15 <= this.actor.getCurrentFrame() &&
!this._Yawned &&
((this._Yawned = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(470))),
'Wake Up' == this.actor.getAnimation() && 33 == this.actor.getCurrentFrame())
) {
k.engine.getGameAttribute('Sound Disabled') ||
d.playSoundOnChannel(d.getSound(109), 15);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8 - 32,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().moveBy(-64, -64, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8 + 32,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().moveBy(64, -64, 0.3, J.backOut);
this.actor.setAnimation('Jump');
this.actor.moveBy(0, -96, 0.3, J.quadOut);
a = 0;
for (var c = d.getActorsOfType(d.getActorType(467)); a < c.length; ) {
var e = c[a];
++a;
null == e ||
e.dead ||
e.recycled ||
(e.getX() > this.actor.getXCenter()
? e.moveBy(96, -36, 0.6, J.backOut)
: e.moveBy(-96, -36, 0.6, J.backOut));
}
a = 0;
for (c = d.getActorsOfType(d.getActorType(459)); a < c.length; )
(e = c[a]), ++a, null == e || e.dead || e.recycled || e.moveToBottom();
a = 0;
for (c = d.getActorsOfType(d.getActorType(461)); a < c.length; )
(e = c[a]), ++a, null == e || e.dead || e.recycled || e.moveToBottom();
a = 0;
for (c = d.getActorsOfType(d.getActorType(465)); a < c.length; )
(e = c[a]), ++a, null == e || e.dead || e.recycled || e.setAnimation('Shrink');
d.runLater(
400,
function (a) {
b._Fall = !0;
d.runLater(
100,
function (a) {
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(118));
},
b.actor
);
},
this.actor
);
}
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this._Fall &&
this.actor.setYVelocity(Math.min(128, this.actor.getYVelocity() + 6));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._SnoozeZList = [];
d.createRecycledActor(
d.getActorType(463),
this.actor.getXCenter() - 24,
this.actor.getY() + 24,
0
);
this._SnoozeZList.push(d.getLastCreatedActor());
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(454));
d.runPeriodically(1300, q(this, this._event_Sleeping), this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Tr
});
var Ur = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_459'] = Ur;
Ur.__name__ = 'scripts.ActorEvents_459';
Ur.__super__ = u;
Ur.prototype = r(u.prototype, {
_event_Updating: function (a) {
if (this.wrapper.enabled) {
if ('Open' == this.actor.getAnimation() && 3 == this.actor.getCurrentFrame()) {
d.createRecycledActor(d.getActorType(14), 0, 0, 0);
this.actor.setAnimation('On');
a = 0;
for (var b = d.getActorsOfType(d.getActorType(457)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
(d.createRecycledActor(d.getActorType(467), c.getX() - 36, c.getY() - 18, 0),
d.createRecycledActor(d.getActorType(467), c.getX() - 38, c.getY() + 68, 0),
d.createRecycledActor(d.getActorType(467), c.getX() - 48, c.getY() + 102, 0),
d.createRecycledActor(d.getActorType(467), c.getX() + 8, c.getY() + 34, 0),
d.createRecycledActor(d.getActorType(467), c.getX() + 6, c.getY() + 110, 0),
d.createRecycledActor(d.getActorType(467), c.getX() + 48, c.getY() + 74, 0),
d.createRecycledActor(d.getActorType(467), c.getX() + 82, c.getY() + 38, 0),
d.createRecycledActor(d.getActorType(467), c.getX() + 106, c.getY() + 98, 0),
d.createRecycledActor(d.getActorType(467), c.getX() + 120, c.getY() + 10, 0),
d.createRecycledActor(d.getActorType(467), c.getX() + 166, c.getY() + 6, 0),
d.createRecycledActor(d.getActorType(467), c.getX() + 172, c.getY() + 62, 0),
d.createRecycledActor(d.getActorType(467), c.getX() + 190, c.getY() + 74, 0));
}
}
'Close' == this.actor.getAnimation() &&
5 == this.actor.getCurrentFrame() &&
d.recycleActor(this.actor);
}
},
init: function () {
this.actor.makeAlwaysSimulate();
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(469));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Ur
});
var Vr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_46'] = Vr;
Vr.__name__ = 'scripts.ActorEvents_46';
Vr.__super__ = u;
Vr.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Vr
});
var Wr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_461'] = Wr;
Wr.__name__ = 'scripts.ActorEvents_461';
Wr.__super__ = u;
Wr.prototype = r(u.prototype, {
_event_Updating: function (a) {
this.wrapper.enabled &&
('Open' == this.actor.getAnimation() &&
3 == this.actor.getCurrentFrame() &&
this.actor.setAnimation('On'),
'Close' == this.actor.getAnimation() &&
5 == this.actor.getCurrentFrame() &&
d.recycleActor(this.actor));
},
init: function () {
this.actor.makeAlwaysSimulate();
for (var a = 0, b = d.getActorsOfType(d.getActorType(457)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
(c.setAnimation('Sleep'),
d.createRecycledActor(d.getActorType(465), c.getX() + 26, c.getY() + 132, 0),
d.getLastCreatedActor().moveToBottom(),
this.actor.moveToBottom());
}
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Wr
});
var Xr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_463'] = Xr;
Xr.__name__ = 'scripts.ActorEvents_463';
Xr.__super__ = u;
Xr.prototype = r(u.prototype, {
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
this.actor.moveBy(0, -96, 2.6, J.linear);
d.runLater(
2600,
function (b) {
d.recycleActor(a.actor);
},
this.actor
);
},
forwardMessage: function (a) {},
__class__: Xr
});
var Yr = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_465'] = Yr;
Yr.__name__ = 'scripts.ActorEvents_465';
Yr.__super__ = u;
Yr.prototype = r(u.prototype, {
_event_Updating: function (a) {
this.wrapper.enabled &&
'Shrink' == this.actor.getAnimation() &&
3 == this.actor.getCurrentFrame() &&
d.recycleActor(this.actor);
},
init: function () {
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Yr
});
var Zr = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Hover Distance'] = '_HoverDistance';
this._HoverDistance = 0;
this.nameMap.h.Up = '_Up';
this._Up = !1;
this.nameMap.h['Distance From Center'] = '_DistanceFromCenter';
this._DistanceFromCenter = 0;
};
h['scripts.ActorEvents_467'] = Zr;
Zr.__name__ = 'scripts.ActorEvents_467';
Zr.__super__ = u;
Zr.prototype = r(u.prototype, {
_HoverDistance: null,
_Up: null,
_DistanceFromCenter: null,
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
((this._DistanceFromCenter =
Math.max(this.actor.getX(), d.getScreenX() + d.getScreenWidth() / 2) -
Math.min(this.actor.getX(), d.getScreenX() + d.getScreenWidth() / 2)),
200 < this._DistanceFromCenter
? '5' != this.actor.getAnimation() && this.actor.setAnimation('5')
: 160 < this._DistanceFromCenter
? '4' != this.actor.getAnimation() && this.actor.setAnimation('4')
: 120 < this._DistanceFromCenter
? '3' != this.actor.getAnimation() && this.actor.setAnimation('3')
: 80 < this._DistanceFromCenter &&
'2' != this.actor.getAnimation() &&
this.actor.setAnimation('2'));
},
_customEvent_Move: function () {
var a = this;
this._Up
? (this.actor.moveBy(
-this._HoverDistance / 2,
-this._HoverDistance / 2,
0.5,
J.quadInOut
),
d.runLater(
500,
function (b) {
a.actor.moveBy(-a._HoverDistance / 2, a._HoverDistance / 2, 0.5, J.quadInOut);
},
this.actor
),
(this._Up = !1),
d.runLater(
1e3,
function (b) {
a.actor.shout('_customEvent_Move');
},
this.actor
))
: (this.actor.moveBy(
this._HoverDistance / 2,
this._HoverDistance / 2,
0.5,
J.quadInOut
),
d.runLater(
500,
function (b) {
a.actor.moveBy(a._HoverDistance / 2, -(a._HoverDistance / 2), 0.5, J.quadInOut);
},
this.actor
),
(this._Up = !0),
d.runLater(
1e3,
function (b) {
a.actor.shout('_customEvent_Move');
},
this.actor
));
},
init: function () {
this._HoverDistance = 16;
for (var a = 0, b = d.getActorsOfType(d.getActorType(467)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Up = this._Up ? !1 : !0);
}
this.actor.shout('_customEvent_Move');
d.runPeriodically(100, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Zr
});
var $r = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_473'] = $r;
$r.__name__ = 'scripts.ActorEvents_473';
$r.__super__ = u;
$r.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getSceneWidth() + 4),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActor(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
2
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: $r
});
var as = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_475'] = as;
as.__name__ = 'scripts.ActorEvents_475';
as.__super__ = u;
as.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
},
forwardMessage: function (a) {},
__class__: as
});
var bs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_477'] = bs;
bs.__name__ = 'scripts.ActorEvents_477';
bs.__super__ = u;
bs.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
},
forwardMessage: function (a) {},
__class__: bs
});
var cs = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Shake Image'] = '_ShakeImage';
this.nameMap.h['Shake Image Instance'] = '_ShakeImageInstance';
this.nameMap.h.Shake = '_Shake';
this._Shake = !1;
this.nameMap.h['Shake Count'] = '_ShakeCount';
this._ShakeCount = 0;
this.nameMap.h.Left = '_Left';
this._Left = !1;
};
h['scripts.ActorEvents_48'] = cs;
cs.__name__ = 'scripts.ActorEvents_48';
cs.__super__ = u;
cs.prototype = r(u.prototype, {
_ShakeImage: null,
_ShakeImageInstance: null,
_Shake: null,
_ShakeCount: null,
_Left: null,
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this._Shake &&
(d.attachImageToActor(
this._ShakeImageInstance,
this.actor,
(-2 + this._ShakeCount) | 0,
0,
1
),
6 != this._ShakeCount || this._Left
? 0 == this._ShakeCount && this._Left && (this._Left = !1)
: (this._Left = !0),
(this._ShakeCount = this._Left ? this._ShakeCount - 2 : this._ShakeCount + 2));
},
_event_HitsDude: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(2);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
(this.actor.makeAlwaysSimulate(),
a.thisFromTop &&
!this._Shake &&
((this._Shake = !0),
d.setValueForScene('Stage Logic', '_RumbleName', 'Crumble'),
d.sayToScene('Stage Logic', '_customEvent_rumble'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(106)),
d.runLater(
700,
function (a) {
b.actor.setFilter([d.createBrightnessFilter(100)]);
},
this.actor
),
d.runLater(
800,
function (a) {
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(108));
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Dirt');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Dirt');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Dirt');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Dirt');
d.recycleActor(b.actor);
},
this.actor
)));
},
_event_HitsCrate: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(32);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
a.thisFromTop &&
!this._Shake &&
((this._Shake = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(106)),
d.runLater(
700,
function (a) {
b.actor.setFilter([d.createBrightnessFilter(100)]);
},
this.actor
),
d.runLater(
800,
function (a) {
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(108));
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Dirt');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Dirt');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Dirt');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Dirt');
d.recycleActor(b.actor);
},
this.actor
));
},
init: function () {
this._ShakeImage = d.getImageForActor(this.actor);
this._ShakeImageInstance = new Qh(new Mc(this._ShakeImage));
this.actor.disableActorDrawing();
d.attachImageToActor(this._ShakeImageInstance, this.actor, 0, 0, 1);
d.runPeriodically(20, q(this, this._event_EveryNsecs), this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsDude));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsCrate));
},
forwardMessage: function (a) {},
__class__: cs
});
var ds = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_482'] = ds;
ds.__name__ = 'scripts.ActorEvents_482';
ds.__super__ = u;
ds.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: ds
});
var es = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_484'] = es;
es.__name__ = 'scripts.ActorEvents_484';
es.__super__ = u;
es.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: es
});
var fs = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_486'] = fs;
fs.__name__ = 'scripts.ActorEvents_486';
fs.__super__ = u;
fs.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: fs
});
var gs = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_488'] = gs;
gs.__name__ = 'scripts.ActorEvents_488';
gs.__super__ = u;
gs.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: gs
});
var hs = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_490'] = hs;
hs.__name__ = 'scripts.ActorEvents_490';
hs.__super__ = u;
hs.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: hs
});
var is = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_492'] = is;
is.__name__ = 'scripts.ActorEvents_492';
is.__super__ = u;
is.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: is
});
var js = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_494'] = js;
js.__name__ = 'scripts.ActorEvents_494';
js.__super__ = u;
js.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: js
});
var ks = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_496'] = ks;
ks.__name__ = 'scripts.ActorEvents_496';
ks.__super__ = u;
ks.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: ks
});
var ls = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_498'] = ls;
ls.__name__ = 'scripts.ActorEvents_498';
ls.__super__ = u;
ls.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: ls
});
var ms = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_50'] = ms;
ms.__name__ = 'scripts.ActorEvents_50';
ms.__super__ = u;
ms.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: ms
});
var ns = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_500'] = ns;
ns.__name__ = 'scripts.ActorEvents_500';
ns.__super__ = u;
ns.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: ns
});
var os = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_502'] = os;
os.__name__ = 'scripts.ActorEvents_502';
os.__super__ = u;
os.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: os
});
var ps = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_504'] = ps;
ps.__name__ = 'scripts.ActorEvents_504';
ps.__super__ = u;
ps.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: ps
});
var qs = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_506'] = qs;
qs.__name__ = 'scripts.ActorEvents_506';
qs.__super__ = u;
qs.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: qs
});
var rs = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_508'] = rs;
rs.__name__ = 'scripts.ActorEvents_508';
rs.__super__ = u;
rs.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: rs
});
var ss = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_510'] = ss;
ss.__name__ = 'scripts.ActorEvents_510';
ss.__super__ = u;
ss.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: ss
});
var ts = function (a, b, c) {
u.call(this, b);
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
};
h['scripts.ActorEvents_512'] = ts;
ts.__name__ = 'scripts.ActorEvents_512';
ts.__super__ = u;
ts.prototype = r(u.prototype, {
_First: null,
_RightScrollLimit: null,
_TotalLength: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = d.getScreenWidth() + 64),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActorOnLayer(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: ts
});
var us = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Follow Dude'] = '_FollowDude';
this._FollowDude = !1;
this.nameMap.h.Up = '_Up';
this._Up = !1;
this.nameMap.h.Possum = '_Possum';
this.nameMap.h['Top Letterbox'] = '_TopLetterbox';
this.nameMap.h['Bottom Letterbox'] = '_BottomLetterbox';
this.nameMap.h['Show Possum Text'] = '_ShowPossumText';
this._ShowPossumText = !1;
};
h['scripts.ActorEvents_514'] = us;
us.__name__ = 'scripts.ActorEvents_514';
us.__super__ = u;
us.prototype = r(u.prototype, {
_Dude: null,
_FollowDude: null,
_Up: null,
_Possum: null,
_TopLetterbox: null,
_BottomLetterbox: null,
_ShowPossumText: null,
_event_Updating: function (a) {
if (
this.wrapper.enabled &&
(d.engine.moveCamera(this.actor.getX(), this.actor.getY()), !this._Up)
) {
a = this._Dude;
if (
!d.isPrimitive(a) &&
('string' == typeof a ? '' == x.__cast(a, String) : null == a)
) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(431)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Dude = c);
}
}
a = this._Dude;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
this.actor.getX() >= this._Dude.getXCenter() &&
!this._FollowDude &&
(this._FollowDude = !0),
this._FollowDude &&
(this.actor.setXVelocity(0), this.actor.setX(this._Dude.getXCenter()));
}
},
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled && this._ShowPossumText) {
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
b = d.getFont(228);
null != b && b != a.font && (a.font = b);
b = d.getScreenWidth() / 2 - a.font.getTextWidth('POSSUM MODE UNLOCKED!') / k.SCALE / 2;
c = d.getScreenHeight() / 2 - a.font.getHeight() / k.SCALE / 2;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
var e = null,
f = a.font;
f =
'POSSUM MODE UNLOCKED!:' +
f.ID +
':' +
a.alpha +
':' +
f.letterSpacing +
':' +
k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)) {
var g = W.drawnStringCache.h[f];
g.lifetime = 5;
e = g.img;
} else {
g = a.font.font.getTextWidth(
'POSSUM MODE UNLOCKED!',
a.font.letterSpacing,
a.font.fontScale
);
var h = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < g &&
0 < h &&
((e = new ja(g, h, !0, 0)),
a.font.font.renderToImg(
e,
'POSSUM MODE UNLOCKED!',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f));
}
null != e &&
(a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, e.width, e.height),
a.graphics.endFill());
}
},
_customEvent_Up: function () {
var a = this;
this._Up ||
((this._Up = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(176)),
d.createRecycledActorOnLayer(
d.getActorType(517),
this.actor.getX() - 94 + 8,
this.actor.getY() - (d.getScreenHeight() + d.getScreenHeight() / 2 + 136),
d.engine.getLayerById(19)
),
(this._Possum = d.getLastCreatedActor()),
d.runLater(
2900,
function (b) {
a.actor.moveBy(0, -(d.getScreenHeight() + d.getScreenHeight() / 2), 5, J.quadInOut);
d.runLater(
4300,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(519),
a._Possum.getXCenter() - 63,
d.getScreenY() - 48,
d.engine.getLayerById(19)
);
d.getLastCreatedActor().moveToTop();
d.getLastCreatedActor().moveTo(
d.getLastCreatedActor().getX(),
a._Possum.getY() + (a._Possum.getHeight() + 24),
1,
J.backOut
);
d.runLater(
200,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(519),
a._Possum.getXCenter() - 63,
d.getScreenY() - 48,
d.engine.getLayerById(19)
);
d.getLastCreatedActor().moveToTop();
d.getLastCreatedActor().setAnimation('N');
d.getLastCreatedActor().moveTo(
d.getLastCreatedActor().getX(),
a._Possum.getY() + (a._Possum.getHeight() + 24),
1,
J.backOut
);
},
a.actor
);
d.runLater(
400,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(519),
a._Possum.getXCenter() - 63,
d.getScreenY() - 48,
d.engine.getLayerById(19)
);
d.getLastCreatedActor().moveToTop();
d.getLastCreatedActor().setAnimation('D');
d.getLastCreatedActor().moveTo(
d.getLastCreatedActor().getX(),
a._Possum.getY() + (a._Possum.getHeight() + 24),
1,
J.backOut
);
},
a.actor
);
d.runLater(
4e3,
function (b) {
a._Possum.setAnimation('Screech');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(442));
d.runLater(
400,
function (b) {
a._Possum.setAnimation('Normal');
},
a.actor
);
d.runLater(
6e3,
function (b) {
d.createRecycledActor(
d.getActorType(437),
d.getScreenX() - 5,
d.getScreenY() - 5 - d.getScreenHeight() / 2,
0
);
a._TopLetterbox = d.getLastCreatedActor();
d.createRecycledActor(
d.getActorType(437),
d.getScreenX() - 5,
d.getScreenY() + d.getScreenHeight() / 2 + d.getScreenHeight() / 2,
0
);
a._BottomLetterbox = d.getLastCreatedActor();
a._TopLetterbox.moveBy(0, d.getScreenHeight() / 2, 0.4, J.backOut);
a._BottomLetterbox.moveBy(
0,
-(d.getScreenHeight() / 2),
0.4,
J.backOut
);
},
a.actor
);
d.runLater(
7e3,
function (a) {
a = Fa.get().scenes.h[58].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var f = d.createFadeOut(0.2, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, f, d.createFadeIn(0.2, (b << 16) | (c << 8) | e));
},
a.actor
);
},
a.actor
);
},
a.actor
);
},
this.actor
));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.setXVelocity(24);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
},
forwardMessage: function (a) {},
__class__: us
});
var vs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_517'] = vs;
vs.__name__ = 'scripts.ActorEvents_517';
vs.__super__ = u;
vs.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: vs
});
var ws = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_519'] = ws;
ws.__name__ = 'scripts.ActorEvents_519';
ws.__super__ = u;
ws.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
},
forwardMessage: function (a) {},
__class__: ws
});
var xs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_52'] = xs;
xs.__name__ = 'scripts.ActorEvents_52';
xs.__super__ = u;
xs.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: xs
});
var ys = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_521'] = ys;
ys.__name__ = 'scripts.ActorEvents_521';
ys.__super__ = u;
ys.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: ys
});
var zs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_523'] = zs;
zs.__name__ = 'scripts.ActorEvents_523';
zs.__super__ = u;
zs.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: zs
});
var As = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Stars String'] = '_StarsString';
this._StarsString = '';
this.nameMap.h.Star = '_Star';
this.nameMap.h['Left End'] = '_LeftEnd';
this.nameMap.h['Right End'] = '_RightEnd';
};
h['scripts.ActorEvents_527'] = As;
As.__name__ = 'scripts.ActorEvents_527';
As.__super__ = u;
As.prototype = r(u.prototype, {
_StarsString: null,
_Star: null,
_LeftEnd: null,
_RightEnd: null,
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
b = d.getFont(228);
null != b && b != a.font && (a.font = b);
c = this.actor;
a.drawActor = !0;
a.actor = c;
c.smoothMove
? ((b = c.drawX - Math.floor(c.cacheWidth / 2) - c.currOffset.x),
(c = c.drawY - Math.floor(c.cacheHeight / 2) - c.currOffset.y),
(a.x = b * a.scaleX),
(a.y = c * a.scaleY))
: ((a.x = c.colX * a.scaleX), (a.y = c.colY * a.scaleY));
d.setDrawingLayerToActorLayer(this.actor);
var e = this._StarsString;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + 32 * a.scaleX), (c = a.y + 10 * a.scaleY))
: ((b = a.x + 32 * a.scaleX - k.cameraX), (c = a.y + 10 * a.scaleY - k.cameraY))
: ((b = a.x + 32 * a.scaleX), (c = a.y + 10 * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
var f = null,
g = a.font;
g = e + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g))
(e = W.drawnStringCache.h[g]), (e.lifetime = 5), (f = e.img);
else {
var h = a.font.font.getTextWidth(e, a.font.letterSpacing, a.font.fontScale),
l = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
e,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(e = new Mb()),
(e.img = f),
(e.lifetime = 5),
(W.drawnStringCache.h[g] = e),
W.drawnStringCacheKeys.push(g));
}
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, f.width, f.height),
a.graphics.endFill());
}
},
_event_Updating: function (a) {
this.wrapper.enabled &&
((a = this._Star),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)
? ((a = this._LeftEnd),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)
? ((a = this._RightEnd),
(a = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a))
: (a = !1))
: (a = !1),
a &&
(this._Star.setX(this.actor.getX()),
this._Star.setY(this.actor.getY()),
this._LeftEnd.setX(this.actor.getX() - 2),
this._LeftEnd.setY(this.actor.getY()),
this._RightEnd.setX(this.actor.getX() + ba.scaledSize('width', this.actor)),
this._RightEnd.setY(this.actor.getY())));
},
init: function () {
this._StarsString = '' + (k.engine.getGameAttribute('Stars List').length - 1) + '/34';
ba.setScale(
'width',
d.getFont(228).getTextWidth(this._StarsString) / k.SCALE + 42,
this.actor
);
this.actor.makeAlwaysSimulate();
d.createRecycledActor(d.getActorType(529), this.actor.getX(), this.actor.getY(), 0);
this._Star = d.getLastCreatedActor();
d.createRecycledActor(d.getActorType(531), this.actor.getX() - 2, this.actor.getY(), 0);
this._LeftEnd = d.getLastCreatedActor();
d.createRecycledActor(
d.getActorType(531),
this.actor.getX() + ba.scaledSize('width', this.actor),
this.actor.getY(),
0
);
this._RightEnd = d.getLastCreatedActor();
this.actor.anchorToScreen();
this._Star.anchorToScreen();
this._LeftEnd.anchorToScreen();
this._RightEnd.anchorToScreen();
this._Star.makeAlwaysSimulate();
this._LeftEnd.makeAlwaysSimulate();
this._RightEnd.makeAlwaysSimulate();
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: As
});
var Bs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_529'] = Bs;
Bs.__name__ = 'scripts.ActorEvents_529';
Bs.__super__ = u;
Bs.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Bs
});
var Cs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_531'] = Cs;
Cs.__name__ = 'scripts.ActorEvents_531';
Cs.__super__ = u;
Cs.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Cs
});
var Ds = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Hidden = '_Hidden';
this._Hidden = !1;
};
h['scripts.ActorEvents_533'] = Ds;
Ds.__name__ = 'scripts.ActorEvents_533';
Ds.__super__ = u;
Ds.prototype = r(u.prototype, {
_Hidden: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
(d.engine.isPaused() && !this._Hidden
? ((this._Hidden = !0), this.actor.disableActorDrawing())
: !d.engine.isPaused() &&
this._Hidden &&
((this._Hidden = !1), this.actor.enableActorDrawing()));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.anchorToScreen();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Ds
});
var Es = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_537'] = Es;
Es.__name__ = 'scripts.ActorEvents_537';
Es.__super__ = u;
Es.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Es
});
var Fs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_539'] = Fs;
Fs.__name__ = 'scripts.ActorEvents_539';
Fs.__super__ = u;
Fs.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Fs
});
var Gs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_54'] = Gs;
Gs.__name__ = 'scripts.ActorEvents_54';
Gs.__super__ = u;
Gs.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Gs
});
var Hs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_541'] = Hs;
Hs.__name__ = 'scripts.ActorEvents_541';
Hs.__super__ = u;
Hs.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
},
forwardMessage: function (a) {},
__class__: Hs
});
var Is = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_546'] = Is;
Is.__name__ = 'scripts.ActorEvents_546';
Is.__super__ = u;
Is.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Is
});
var Js = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_548'] = Js;
Js.__name__ = 'scripts.ActorEvents_548';
Js.__super__ = u;
Js.prototype = r(u.prototype, {
_event_Updating: function (a) {
this.wrapper.enabled &&
(k.engine.getGameAttribute('MOBILE MODE') && 'Normal' == this.actor.getAnimation()
? this.actor.setAnimation('NormalC')
: k.engine.getGameAttribute('MOBILE MODE') ||
'NormalC' != this.actor.getAnimation() ||
this.actor.setAnimation('Normal'),
k.engine.getGameAttribute('MOBILE MODE') && 'Off' == this.actor.getAnimation()
? this.actor.setAnimation('OffC')
: k.engine.getGameAttribute('MOBILE MODE') ||
'OffC' != this.actor.getAnimation() ||
this.actor.setAnimation('Off'));
},
init: function () {
d.createRecycledActorOnLayer(
d.getActorType(550),
this.actor.getX(),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Js
});
var Ks = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_550'] = Ks;
Ks.__name__ = 'scripts.ActorEvents_550';
Ks.__super__ = u;
Ks.prototype = r(u.prototype, {
_event_Updating: function (a) {
this.wrapper.enabled &&
'Turn On' == this.actor.getAnimation() &&
7 == this.actor.getCurrentFrame() &&
this.actor.setAnimation('On');
},
init: function () {
this.actor.makeAlwaysSimulate();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Ks
});
var Ls = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_557'] = Ls;
Ls.__name__ = 'scripts.ActorEvents_557';
Ls.__super__ = u;
Ls.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Ls
});
var Ms = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Pressed = '_Pressed';
this._Pressed = !1;
this.nameMap.h.Hide = '_Hide';
this._Hide = !1;
};
h['scripts.ActorEvents_559'] = Ms;
Ms.__name__ = 'scripts.ActorEvents_559';
Ms.__super__ = u;
Ms.prototype = r(u.prototype, {
_Pressed: null,
_Hide: null,
_event_OnActor: function (a) {
var b = this;
!this.wrapper.enabled ||
3 != a ||
this._Pressed ||
k.engine.getGameAttribute('Settings Open') ||
k.engine.getGameAttribute('Dead') ||
((this._Pressed = k.engine.gameAttributes.h['Settings Open'] = !0),
this.actor.setAnimation('Down'),
d.createRecycledActor(d.getActorType(561), 0, 0, 0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
200,
function (a) {
b.actor.setAnimation('Normal');
},
this.actor
),
d.runLater(
400,
function (a) {
b._Pressed = !1;
},
this.actor
));
},
_event_Keyboard: function (a, b) {
var c = this;
!this.wrapper.enabled ||
!a ||
this._Pressed ||
k.engine.getGameAttribute('Settings Open') ||
k.engine.getGameAttribute('Dead') ||
((k.engine.gameAttributes.h['Settings Open'] = !0),
(this._Pressed = k.engine.gameAttributes.h['Controller Mode'] = !0),
this.actor.setAnimation('Down'),
d.createRecycledActor(d.getActorType(561), 0, 0, 0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
200,
function (a) {
c.actor.setAnimation('Normal');
},
this.actor
),
d.runLater(
400,
function (a) {
c._Pressed = !1;
},
this.actor
));
},
_event_Updating: function (a) {
this.wrapper.enabled &&
(k.engine.getGameAttribute('Settings Open') && !this._Hide
? ((this._Hide = !0), this.actor.disableActorDrawing())
: !k.engine.getGameAttribute('Settings Open') &&
this._Hide &&
((this._Hide = !1), this.actor.enableActorDrawing()));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.anchorToScreen();
this.addListener(this.actor.whenMousedOver, q(this, this._event_OnActor));
this.addListener(
d.engine.whenKeyPressedEvents.getOrCreateEvent('action2'),
q(this, this._event_Keyboard)
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Ms
});
var Ns = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_56'] = Ns;
Ns.__name__ = 'scripts.ActorEvents_56';
Ns.__super__ = u;
Ns.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Ns
});
var Os = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Inner = '_Inner';
};
h['scripts.ActorEvents_561'] = Os;
Os.__name__ = 'scripts.ActorEvents_561';
Os.__super__ = u;
Os.prototype = r(u.prototype, {
_Inner: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.set_alpha(0);
this.actor.setX(d.getScreenX() - 5);
this.actor.setY(d.getScreenY() - 5);
ba.setScale('width', d.getScreenWidth() + 10, this.actor);
ba.setScale('height', d.getScreenHeight() + 10, this.actor);
this.actor.fadeTo(0.5, 0.4, J.quadInOut);
d.createRecycledActor(
d.getActorType(563),
d.getScreenWidth() / 2 - 149,
d.getScreenY() - 284,
0
);
this._Inner = d.getLastCreatedActor();
this._Inner.moveTo(
this._Inner.getX(),
d.getScreenY() + (d.getScreenHeight() / 2 - 142),
0.7,
J.elasticOut
);
},
forwardMessage: function (a) {},
__class__: Os
});
var Ps = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_567'] = Ps;
Ps.__name__ = 'scripts.ActorEvents_567';
Ps.__super__ = u;
Ps.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Ps
});
var Qs = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Pressed = '_Pressed';
this._Pressed = !1;
};
h['scripts.ActorEvents_576'] = Qs;
Qs.__name__ = 'scripts.ActorEvents_576';
Qs.__super__ = u;
Qs.prototype = r(u.prototype, {
_Pressed: null,
_event_MultiTouch: function (a) {
var b = this;
this.wrapper.enabled &&
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) > this.actor.getX() &&
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) <
this.actor.getX() + this.actor.getWidth() &&
(a.stageY - k.screenOffsetY) / (k.screenScaleY * k.SCALE) > this.actor.getY() &&
(a.stageY - k.screenOffsetY) / (k.screenScaleY * k.SCALE) <
this.actor.getY() + this.actor.getHeight() &&
!this._Pressed &&
((this._Pressed = !0),
d.engine.isPaused()
? (d.engine.unpause(), this.actor.enableActorDrawing())
: (d.engine.pause(), this.actor.disableActorDrawing()),
d.runLater(
200,
function (a) {
b._Pressed = !1;
},
this.actor
));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.anchorToScreen();
this.addListener(d.engine.whenMTStarted, q(this, this._event_MultiTouch));
},
forwardMessage: function (a) {},
__class__: Qs
});
var Rs = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Fly Away'] = '_FlyAway';
this._FlyAway = !1;
};
h['scripts.ActorEvents_578'] = Rs;
Rs.__name__ = 'scripts.ActorEvents_578';
Rs.__super__ = u;
Rs.prototype = r(u.prototype, {
_Dude: null,
_FlyAway: null,
_event_EveryNsecs: function (a) {
if (this.wrapper.enabled) {
if (!this._FlyAway && this.actor.isOnScreen()) {
a = this._Dude;
if (
!d.isPrimitive(a) &&
('string' == typeof a ? '' == x.__cast(a, String) : null == a)
) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(2)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Dude = c);
}
}
a = this._Dude;
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getXCenter() > this.actor.getXCenter() - 100 &&
this._Dude.getXCenter() < this.actor.getXCenter() + 100 &&
this._Dude.getYCenter() > this.actor.getYCenter() - 100 &&
this._Dude.getYCenter() < this.actor.getYCenter() + 100 &&
((this._FlyAway = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(724)),
this.actor.setYVelocity(-15),
this._Dude.getXCenter() > this.actor.getXCenter()
? (this.actor.setXVelocity(-15), this.actor.setAnimation('Fly Left'))
: (this.actor.setXVelocity(15), this.actor.setAnimation('Fly Right')));
}
this._FlyAway && !this.actor.isOnScreen() && d.recycleActor(this.actor);
}
},
init: function () {
this.actor.makeAlwaysSimulate();
1 == d.randomInt(1, 2) && this.actor.setAnimation('Peck Right');
this.actor.currAnimation.setFrameDuration(0, d.randomInt(500, 700));
d.runPeriodically(200, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Rs
});
var Ss = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_58'] = Ss;
Ss.__name__ = 'scripts.ActorEvents_58';
Ss.__super__ = u;
Ss.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Ss
});
var Ts = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Fly Away'] = '_FlyAway';
this._FlyAway = !1;
};
h['scripts.ActorEvents_580'] = Ts;
Ts.__name__ = 'scripts.ActorEvents_580';
Ts.__super__ = u;
Ts.prototype = r(u.prototype, {
_Dude: null,
_FlyAway: null,
_event_EveryNsecs: function (a) {
if (this.wrapper.enabled) {
if (!this._FlyAway && this.actor.isOnScreen()) {
a = this._Dude;
if (
!d.isPrimitive(a) &&
('string' == typeof a ? '' == x.__cast(a, String) : null == a)
) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(2)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Dude = c);
}
}
a = this._Dude;
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getXCenter() > this.actor.getXCenter() - 100 &&
this._Dude.getXCenter() < this.actor.getXCenter() + 100 &&
this._Dude.getYCenter() > this.actor.getYCenter() - 100 &&
this._Dude.getYCenter() < this.actor.getYCenter() + 100 &&
((this._FlyAway = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(723)),
this.actor.setYVelocity(-15),
this._Dude.getXCenter() > this.actor.getXCenter()
? (this.actor.setXVelocity(-15), this.actor.setAnimation('Fly Left'))
: (this.actor.setXVelocity(15), this.actor.setAnimation('Fly Right')));
}
this._FlyAway && !this.actor.isOnScreen() && d.recycleActor(this.actor);
}
},
init: function () {
this.actor.makeAlwaysSimulate();
1 == d.randomInt(1, 2) && this.actor.setAnimation('Peck Right');
this.actor.currAnimation.setFrameDuration(0, d.randomInt(500, 700));
d.runPeriodically(200, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Ts
});
var Us = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_582'] = Us;
Us.__name__ = 'scripts.ActorEvents_582';
Us.__super__ = u;
Us.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Us
});
var Vs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_584'] = Vs;
Vs.__name__ = 'scripts.ActorEvents_584';
Vs.__super__ = u;
Vs.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Vs
});
var Ws = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Left Touch Is Down'] = '_LeftTouchIsDown';
this._LeftTouchIsDown = !1;
this.nameMap.h['Right Touch Is Down'] = '_RightTouchIsDown';
this._RightTouchIsDown = !1;
this.nameMap.h['Up Touch Is Down'] = '_UpTouchIsDown';
this._UpTouchIsDown = !1;
this.nameMap.h['Down Touch Is Down'] = '_DownTouchIsDown';
this._DownTouchIsDown = !1;
this.nameMap.h.Speed = '_Speed';
this._Speed = 0;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
};
h['scripts.ActorEvents_589'] = Ws;
Ws.__name__ = 'scripts.ActorEvents_589';
Ws.__super__ = u;
Ws.prototype = r(u.prototype, {
_LeftTouchIsDown: null,
_RightTouchIsDown: null,
_UpTouchIsDown: null,
_DownTouchIsDown: null,
_Speed: null,
_RightScrollLimit: null,
_event_Pressed: function (a) {
this.wrapper.enabled &&
(k.engine.getGameAttribute('Controller Mode') ||
((k.engine.gameAttributes.h['Controller Mode'] = !0),
this.actor.enableActorDrawing()),
d.isKeyPressed('left')
? ((this._LeftTouchIsDown = !0), (this._RightTouchIsDown = !1))
: d.isKeyPressed('right') &&
((this._RightTouchIsDown = !0), (this._LeftTouchIsDown = !1)),
d.isKeyPressed('up')
? ((this._UpTouchIsDown = !0), (this._DownTouchIsDown = !1))
: d.isKeyPressed('down') &&
((this._DownTouchIsDown = !0), (this._UpTouchIsDown = !1)));
},
_event_Released: function (a) {
this.wrapper.enabled &&
(d.isKeyReleased('left')
? (this._LeftTouchIsDown = !1)
: d.isKeyReleased('right') && (this._RightTouchIsDown = !1),
d.isKeyReleased('up')
? (this._UpTouchIsDown = !1)
: d.isKeyReleased('down') && (this._DownTouchIsDown = !1));
},
_event_Updating: function (a) {
if (
this.wrapper.enabled &&
((this._Speed = 30),
this._UpTouchIsDown
? this.actor.setYVelocity(-this._Speed)
: this._DownTouchIsDown
? this.actor.setYVelocity(this._Speed)
: this.actor.setYVelocity(0),
this._LeftTouchIsDown
? this.actor.setXVelocity(-this._Speed)
: this._RightTouchIsDown
? this.actor.setXVelocity(this._Speed)
: this.actor.setXVelocity(0),
k.engine.getGameAttribute('Controller Mode'))
) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(273)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
c.setX(Math.min(this.actor.getX(), this._RightScrollLimit));
}
}
},
_event_MultiTouch: function (a) {
this.wrapper.enabled &&
k.engine.getGameAttribute('Controller Mode') &&
((k.engine.gameAttributes.h['Controller Mode'] = !1), this.actor.disableActorDrawing());
},
_event_Updated: function (a) {
this.wrapper.enabled &&
(0 > this.actor.getScreenX() && (this.actor.setScreenX(0), this.actor.setXVelocity(0)),
0 > this.actor.getScreenY() && (this.actor.setScreenY(0), this.actor.setYVelocity(0)),
this.actor.getScreenX() > d.getScreenWidth() - this.actor.getWidth() &&
(this.actor.setScreenX(d.getScreenWidth() - this.actor.getWidth()),
this.actor.setXVelocity(0)),
this.actor.getScreenY() > d.getScreenHeight() - this.actor.getHeight() &&
(this.actor.setScreenY(d.getScreenHeight() - this.actor.getHeight()),
this.actor.setYVelocity(0)));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.anchorToScreen();
k.engine.getGameAttribute('Controller Mode') || this.actor.disableActorDrawing();
this._RightScrollLimit = Math.max(
696 - d.getScreenWidth() / 2 + 64,
d.getScreenWidth() + 64 - d.getScreenWidth() / 2
);
this.addListener(d.engine.whenAnyKeyPressed, q(this, this._event_Pressed));
this.addListener(d.engine.whenAnyKeyReleased, q(this, this._event_Released));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(d.engine.whenMTStarted, q(this, this._event_MultiTouch));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated));
},
forwardMessage: function (a) {},
__class__: Ws
});
var Xs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_596'] = Xs;
Xs.__name__ = 'scripts.ActorEvents_596';
Xs.__super__ = u;
Xs.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Xs
});
var Ys = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_598'] = Ys;
Ys.__name__ = 'scripts.ActorEvents_598';
Ys.__super__ = u;
Ys.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Ys
});
var Zs = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_6'] = Zs;
Zs.__name__ = 'scripts.ActorEvents_6';
Zs.__super__ = u;
Zs.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Zs
});
var $s = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_60'] = $s;
$s.__name__ = 'scripts.ActorEvents_60';
$s.__super__ = u;
$s.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: $s
});
var at = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_600'] = at;
at.__name__ = 'scripts.ActorEvents_600';
at.__super__ = u;
at.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: at
});
var bt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_602'] = bt;
bt.__name__ = 'scripts.ActorEvents_602';
bt.__super__ = u;
bt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: bt
});
var ct = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_607'] = ct;
ct.__name__ = 'scripts.ActorEvents_607';
ct.__super__ = u;
ct.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.disableActorDrawing();
},
forwardMessage: function (a) {},
__class__: ct
});
var dt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_609'] = dt;
dt.__name__ = 'scripts.ActorEvents_609';
dt.__super__ = u;
dt.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.disableActorDrawing();
},
forwardMessage: function (a) {},
__class__: dt
});
var et = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_611'] = et;
et.__name__ = 'scripts.ActorEvents_611';
et.__super__ = u;
et.prototype = r(u.prototype, {
_event_Updating: function (a) {
this.wrapper.enabled &&
(d.engine.moveCamera(this.actor.getXCenter(), this.actor.getYCenter()),
d.isMouseDown()
? 64 > d.getMouseY()
? this.actor.setYVelocity(-30)
: d.getMouseY() > d.getScreenHeight() - 64
? this.actor.setYVelocity(30)
: d.getMouseX() < d.getScreenWidth() / 2
? this.actor.setXVelocity(-30)
: d.getMouseX() > d.getScreenWidth() / 2 && this.actor.setXVelocity(30)
: (this.actor.setXVelocity(0), this.actor.setYVelocity(0)));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: et
});
var ft = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_615'] = ft;
ft.__name__ = 'scripts.ActorEvents_615';
ft.__super__ = u;
ft.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
},
forwardMessage: function (a) {},
__class__: ft
});
var gt = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Springing = '_Springing';
this._Springing = !1;
};
h['scripts.ActorEvents_62'] = gt;
gt.__name__ = 'scripts.ActorEvents_62';
gt.__super__ = u;
gt.prototype = r(u.prototype, {
_Springing: null,
_event_HitsDude: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(2);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
(a.otherActor.setYVelocity(-72),
this._Springing ||
((this._Springing = !0),
this.actor.setAnimation('Springing'),
a.otherActor.setValue('Dude Logic', '_Springing', !0),
a.otherActor.setValue('Dude Logic', '_CanDoubleJump', !0),
d.setValueForScene('Stage Logic', '_RumbleName', 'Spring'),
d.sayToScene('Stage Logic', '_customEvent_rumble'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(114)),
d.runLater(
200,
function (a) {
b.actor.setAnimation('Normal');
b._Springing = !1;
},
this.actor
)));
},
_event_HitsCrate: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(32);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
0 == a.otherActor.getValue('Pushable Crate Logic', '_HasSpring') &&
!this._Springing &&
((this._Springing = !0),
a.otherActor.setYVelocity(-72),
this.actor.setAnimation('Springing'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(114)),
d.runLater(
200,
function (a) {
b.actor.setAnimation('Normal');
b._Springing = !1;
},
this.actor
));
},
init: function () {
this.addListener(this.actor.whenCollided, q(this, this._event_HitsDude));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsCrate));
},
forwardMessage: function (a) {},
__class__: gt
});
var ht = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Total Time In Hundreths'] = '_TotalTimeInHundreths';
this._TotalTimeInHundreths = 0;
this.nameMap.h['Total Time String'] = '_TotalTimeString';
this._TotalTimeString = '';
this.nameMap.h['Hundreths String'] = '_HundrethsString';
this._HundrethsString = '';
this.nameMap.h['Timer Hundreths'] = '_TimerHundreths';
this._TimerHundreths = 0;
this.nameMap.h['Seconds String'] = '_SecondsString';
this._SecondsString = '';
this.nameMap.h['Timer Seconds'] = '_TimerSeconds';
this._TimerSeconds = 0;
this.nameMap.h['Minutes String'] = '_MinutesString';
this._MinutesString = '';
this.nameMap.h['Timer Minutes'] = '_TimerMinutes';
this._TimerMinutes = 0;
this.nameMap.h.Seconds = '_Seconds';
this._Seconds = 0;
this.nameMap.h.Minutes = '_Minutes';
this._Minutes = 0;
this.nameMap.h.Hours = '_Hours';
this._Hours = 0;
this.nameMap.h.Hundreths = '_Hundreths';
this._Hundreths = 0;
this.nameMap.h['Hours String'] = '_HoursString';
this._HoursString = '';
this.nameMap.h['Time Box'] = '_TimeBox';
};
h['scripts.ActorEvents_622'] = ht;
ht.__name__ = 'scripts.ActorEvents_622';
ht.__super__ = u;
ht.prototype = r(u.prototype, {
_TotalTimeInHundreths: null,
_TotalTimeString: null,
_HundrethsString: null,
_TimerHundreths: null,
_SecondsString: null,
_TimerSeconds: null,
_MinutesString: null,
_TimerMinutes: null,
_Seconds: null,
_Minutes: null,
_Hours: null,
_Hundreths: null,
_HoursString: null,
_TimeBox: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
this._TimeBox.setY(this.actor.getY() + (this.actor.getHeight() / 2 - 11));
},
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled && k.engine.getGameAttribute('Timer Mode')) {
var e = d.getFont(624);
null != e && e != a.font && (a.font = e);
e = this._TotalTimeString;
b = this.actor.getWidth() + 24;
c = this.actor.getHeight() / 2 - a.font.getHeight() / k.SCALE / 2;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
var f = null,
g = a.font;
g = e + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g))
(e = W.drawnStringCache.h[g]), (e.lifetime = 5), (f = e.img);
else {
var h = a.font.font.getTextWidth(e, a.font.letterSpacing, a.font.fontScale),
l = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
e,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(e = new Mb()),
(e.img = f),
(e.lifetime = 5),
(W.drawnStringCache.h[g] = e),
W.drawnStringCacheKeys.push(g));
}
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, f.width, f.height),
a.graphics.endFill());
}
},
init: function () {
this._TotalTimeInHundreths = 0;
d.createRecycledActor(
d.getActorType(627),
this.actor.getX() + (this.actor.getWidth() + 4),
this.actor.getY() + (this.actor.getHeight() / 2 - 11),
0
);
this._TimeBox = d.getLastCreatedActor();
for (
var a = 0, b = x.__cast(k.engine.getGameAttribute('Best Times'), Array);
a < b.length;
) {
var c = b[a];
++a;
var e = this._TotalTimeInHundreths,
f = ('' + B.string(c)).split(':')[0];
f =
null == f
? 0
: 'number' == typeof f
? x.__cast(f, Nb)
: 'number' == typeof f && (f | 0) === f
? x.__cast(f, Ab)
: 'boolean' == typeof f
? x.__cast(f, Ob)
? 1
: 0
: 'string' == typeof f
? parseFloat(f)
: parseFloat(B.string(f));
var g = ('' + B.string(c)).split(':')[1];
g =
null == g
? 0
: 'number' == typeof g
? x.__cast(g, Nb)
: 'number' == typeof g && (g | 0) === g
? x.__cast(g, Ab)
: 'boolean' == typeof g
? x.__cast(g, Ob)
? 1
: 0
: 'string' == typeof g
? parseFloat(g)
: parseFloat(B.string(g));
c = ('' + B.string(c)).split(':')[2];
this._TotalTimeInHundreths =
e +
(6e3 * f +
100 * g +
(null == c
? 0
: 'number' == typeof c
? x.__cast(c, Nb)
: 'number' == typeof c && (c | 0) === c
? x.__cast(c, Ab)
: 'boolean' == typeof c
? x.__cast(c, Ob)
? 1
: 0
: 'string' == typeof c
? parseFloat(c)
: parseFloat(B.string(c))));
}
this._Hours = Math.floor(this._TotalTimeInHundreths / 100 / 60 / 60);
this._Minutes = Math.floor(this._TotalTimeInHundreths / 100 / 60);
this._Seconds = Math.floor(this._TotalTimeInHundreths / 100);
this._Hundreths = this._TotalTimeInHundreths;
this._Hundreths -= 100 * this._Seconds;
this._Seconds -= 60 * this._Minutes;
this._Minutes -= 60 * this._Hours;
this._HoursString = '' + this._Hours;
this._MinutesString = '' + this._Minutes;
this._SecondsString = '' + this._Seconds;
this._HundrethsString = '' + this._Hundreths;
1 == this._HoursString.length && (this._HoursString = '0' + this._HoursString);
1 == this._MinutesString.length && (this._MinutesString = '0' + this._MinutesString);
1 == this._SecondsString.length && (this._SecondsString = '0' + this._SecondsString);
1 == this._HundrethsString.length &&
(this._HundrethsString = '0' + this._HundrethsString);
this._TotalTimeString =
this._HoursString +
(':' +
(this._MinutesString +
(':' + (this._SecondsString + (':' + this._HundrethsString)))));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
},
forwardMessage: function (a) {},
__class__: ht
});
var it = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_625'] = it;
it.__name__ = 'scripts.ActorEvents_625';
it.__super__ = u;
it.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: it
});
var jt = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Stars String'] = '_StarsString';
this._StarsString = '';
this.nameMap.h.Star = '_Star';
this._Star = d.getActor(0);
this.nameMap.h['Left End'] = '_LeftEnd';
this._LeftEnd = d.getActor(0);
this.nameMap.h['Right End'] = '_RightEnd';
this._RightEnd = d.getActor(0);
this.nameMap.h.Hidden = '_Hidden';
this._Hidden = !1;
};
h['scripts.ActorEvents_627'] = jt;
jt.__name__ = 'scripts.ActorEvents_627';
jt.__super__ = u;
jt.prototype = r(u.prototype, {
_StarsString: null,
_Star: null,
_LeftEnd: null,
_RightEnd: null,
_Hidden: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
(k.engine.getGameAttribute('Timer Mode') && this._Hidden
? ((this._Hidden = !1), this.actor.enableActorDrawing())
: k.engine.getGameAttribute('Timer Mode') ||
this._Hidden ||
((this._Hidden = !0), this.actor.disableActorDrawing()));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.anchorToScreen();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: jt
});
var kt = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Ground Check Top'] = '_GroundCheckTop';
this._GroundCheckTop = !1;
this.nameMap.h['Ground Check Bottom'] = '_GroundCheckBottom';
this._GroundCheckBottom = !1;
this.nameMap.h['Ground Check Left'] = '_GroundCheckLeft';
this._GroundCheckLeft = !1;
this.nameMap.h['Ground Check Right'] = '_GroundCheckRight';
this._GroundCheckRight = !1;
this.nameMap.h['On Ground Top'] = '_OnGroundTop';
this._OnGroundTop = !1;
this.nameMap.h['On Ground Bottom'] = '_OnGroundBottom';
this._OnGroundBottom = !1;
this.nameMap.h['On Ground Left'] = '_OnGroundLeft';
this._OnGroundLeft = !1;
this.nameMap.h['On Ground Right'] = '_OnGroundRight';
this._OnGroundRight = !1;
};
h['scripts.ActorEvents_629'] = kt;
kt.__name__ = 'scripts.ActorEvents_629';
kt.__super__ = u;
kt.prototype = r(u.prototype, {
_GroundCheckTop: null,
_GroundCheckBottom: null,
_GroundCheckLeft: null,
_GroundCheckRight: null,
_OnGroundTop: null,
_OnGroundBottom: null,
_OnGroundLeft: null,
_OnGroundRight: null,
init: function () {},
forwardMessage: function (a) {},
__class__: kt
});
var lt = function (a, b, c) {
u.call(this, b);
this.nameMap.h['Ground Check Top'] = '_GroundCheckTop';
this._GroundCheckTop = !1;
this.nameMap.h['Ground Check Bottom'] = '_GroundCheckBottom';
this._GroundCheckBottom = !1;
this.nameMap.h['Ground Check Left'] = '_GroundCheckLeft';
this._GroundCheckLeft = !1;
this.nameMap.h['Ground Check Right'] = '_GroundCheckRight';
this._GroundCheckRight = !1;
this.nameMap.h['On Ground Top'] = '_OnGroundTop';
this._OnGroundTop = !1;
this.nameMap.h['On Ground Bottom'] = '_OnGroundBottom';
this._OnGroundBottom = !1;
this.nameMap.h['On Ground Left'] = '_OnGroundLeft';
this._OnGroundLeft = !1;
this.nameMap.h['On Ground Right'] = '_OnGroundRight';
this._OnGroundRight = !1;
};
h['scripts.ActorEvents_631'] = lt;
lt.__name__ = 'scripts.ActorEvents_631';
lt.__super__ = u;
lt.prototype = r(u.prototype, {
_GroundCheckTop: null,
_GroundCheckBottom: null,
_GroundCheckLeft: null,
_GroundCheckRight: null,
_OnGroundTop: null,
_OnGroundBottom: null,
_OnGroundLeft: null,
_OnGroundRight: null,
init: function () {},
forwardMessage: function (a) {},
__class__: lt
});
var mt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_633'] = mt;
mt.__name__ = 'scripts.ActorEvents_633';
mt.__super__ = u;
mt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: mt
});
var nt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_635'] = nt;
nt.__name__ = 'scripts.ActorEvents_635';
nt.__super__ = u;
nt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: nt
});
var ot = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_637'] = ot;
ot.__name__ = 'scripts.ActorEvents_637';
ot.__super__ = u;
ot.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: ot
});
var pt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_64'] = pt;
pt.__name__ = 'scripts.ActorEvents_64';
pt.__super__ = u;
pt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: pt
});
var qt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_66'] = qt;
qt.__name__ = 'scripts.ActorEvents_66';
qt.__super__ = u;
qt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: qt
});
var rt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_672'] = rt;
rt.__name__ = 'scripts.ActorEvents_672';
rt.__super__ = u;
rt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: rt
});
var st = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_68'] = st;
st.__name__ = 'scripts.ActorEvents_68';
st.__super__ = u;
st.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: st
});
var tt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_683'] = tt;
tt.__name__ = 'scripts.ActorEvents_683';
tt.__super__ = u;
tt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: tt
});
var ut = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_685'] = ut;
ut.__name__ = 'scripts.ActorEvents_685';
ut.__super__ = u;
ut.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: ut
});
var vt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_690'] = vt;
vt.__name__ = 'scripts.ActorEvents_690';
vt.__super__ = u;
vt.prototype = r(u.prototype, {
init: function () {
var a = this;
this.actor.set_alpha(0.7);
this.actor.fadeTo(0, 0.5, J.quadInOut);
d.runLater(
600,
function (b) {
d.recycleActor(a.actor);
},
this.actor
);
},
forwardMessage: function (a) {},
__class__: vt
});
var wt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_692'] = wt;
wt.__name__ = 'scripts.ActorEvents_692';
wt.__super__ = u;
wt.prototype = r(u.prototype, {
init: function () {
var a = this;
this.actor.set_alpha(0.7);
this.actor.fadeTo(0, 0.5, J.quadInOut);
d.runLater(
600,
function (b) {
d.recycleActor(a.actor);
},
this.actor
);
},
forwardMessage: function (a) {},
__class__: wt
});
var xt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_694'] = xt;
xt.__name__ = 'scripts.ActorEvents_694';
xt.__super__ = u;
xt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: xt
});
var yt = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h.Fall = '_Fall';
this._Fall = !1;
};
h['scripts.ActorEvents_696'] = yt;
yt.__name__ = 'scripts.ActorEvents_696';
yt.__super__ = u;
yt.prototype = r(u.prototype, {
_Go: null,
_Fall: null,
init: function () {},
forwardMessage: function (a) {},
__class__: yt
});
var zt = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Springing = '_Springing';
this._Springing = !1;
this.nameMap.h['Facing Left'] = '_FacingLeft';
this._FacingLeft = !1;
};
h['scripts.ActorEvents_698'] = zt;
zt.__name__ = 'scripts.ActorEvents_698';
zt.__super__ = u;
zt.prototype = r(u.prototype, {
_Springing: null,
_FacingLeft: null,
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled &&
'Splat' == this.actor.getAnimation() &&
7 == this.actor.getCurrentFrame() &&
(this.actor.setAnimation('Done'),
d.runLater(
1600,
function (a) {
b.actor.setAnimation('Shake');
d.createRecycledActorOnLayer(
d.getActorType(700),
b.actor.getX() + (2 + (b.actor.getWidth() - 2) / 2) - 64,
b.actor.getYCenter() + 10,
d.engine.getLayerById(3)
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().moveBy(0, -96, 1, J.quadInOut);
d.runLater(
1e3,
function (a) {
b.actor.setAnimation('Done');
},
b.actor
);
},
this.actor
));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: zt
});
var At = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_70'] = At;
At.__name__ = 'scripts.ActorEvents_70';
At.__super__ = u;
At.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: At
});
var Bt = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Flag = '_Flag';
};
h['scripts.ActorEvents_72'] = Bt;
Bt.__name__ = 'scripts.ActorEvents_72';
Bt.__super__ = u;
Bt.prototype = r(u.prototype, {
_Flag: null,
_event_HitsDude: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(2);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b &&
!k.engine.getGameAttribute('Checkpoint Passed') &&
((k.engine.gameAttributes.h['Checkpoint Passed'] = !0),
a.otherActor.getValue('Dude Logic', '_StarCollected') &&
(k.engine.gameAttributes.h['Star Collected'] = !0),
(b = this._Flag),
d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
(this._Flag.setAnimation('Go'),
d.setValueForScene('Stage Logic', '_RumbleName', 'Item'),
d.sayToScene('Stage Logic', '_customEvent_rumble'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(118)),
this._Flag.moveTo(this._Flag.getX(), this.actor.getY() + 20, 0.5, J.elasticOut));
},
init: function () {
this.actor.makeAlwaysSimulate();
k.engine.getGameAttribute('Timer Mode')
? d.recycleActor(this.actor)
: k.engine.getGameAttribute('Checkpoint Passed')
? (d.createRecycledActorOnLayer(
d.getActorType(92),
this.actor.getX() + 20,
this.actor.getY() + 18,
d.engine.getLayerById(this.actor.getLayerID())
),
(this._Flag = d.getLastCreatedActor()),
this._Flag.moveToBottom(),
this._Flag.setAnimation('Go'))
: (d.createRecycledActorOnLayer(
d.getActorType(92),
this.actor.getX() + 20,
this.actor.getY() + 60,
d.engine.getLayerById(this.actor.getLayerID())
),
(this._Flag = d.getLastCreatedActor()),
this._Flag.moveToBottom());
this.addListener(this.actor.whenCollided, q(this, this._event_HitsDude));
},
forwardMessage: function (a) {},
__class__: Bt
});
var Ct = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_726'] = Ct;
Ct.__name__ = 'scripts.ActorEvents_726';
Ct.__super__ = u;
Ct.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Ct
});
var Dt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_730'] = Dt;
Dt.__name__ = 'scripts.ActorEvents_730';
Dt.__super__ = u;
Dt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Dt
});
var Et = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_732'] = Et;
Et.__name__ = 'scripts.ActorEvents_732';
Et.__super__ = u;
Et.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Et
});
var Ft = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_734'] = Ft;
Ft.__name__ = 'scripts.ActorEvents_734';
Ft.__super__ = u;
Ft.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Ft
});
var Gt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_736'] = Gt;
Gt.__name__ = 'scripts.ActorEvents_736';
Gt.__super__ = u;
Gt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Gt
});
var Ht = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_738'] = Ht;
Ht.__name__ = 'scripts.ActorEvents_738';
Ht.__super__ = u;
Ht.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Ht
});
var It = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_74'] = It;
It.__name__ = 'scripts.ActorEvents_74';
It.__super__ = u;
It.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: It
});
var Jt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_752'] = Jt;
Jt.__name__ = 'scripts.ActorEvents_752';
Jt.__super__ = u;
Jt.prototype = r(u.prototype, {
init: function () {
ba.setScale('width', 962, this.actor);
ba.setScale('height', 542, this.actor);
},
forwardMessage: function (a) {},
__class__: Jt
});
var Kt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_754'] = Kt;
Kt.__name__ = 'scripts.ActorEvents_754';
Kt.__super__ = u;
Kt.prototype = r(u.prototype, {
init: function () {
ba.setScale('width', 962, this.actor);
ba.setScale('height', 542, this.actor);
},
forwardMessage: function (a) {},
__class__: Kt
});
var Lt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_756'] = Lt;
Lt.__name__ = 'scripts.ActorEvents_756';
Lt.__super__ = u;
Lt.prototype = r(u.prototype, {
init: function () {
ba.setScale('width', 962, this.actor);
ba.setScale('height', 542, this.actor);
},
forwardMessage: function (a) {},
__class__: Lt
});
var Mt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_758'] = Mt;
Mt.__name__ = 'scripts.ActorEvents_758';
Mt.__super__ = u;
Mt.prototype = r(u.prototype, {
_event_Updating: function (a) {
this.wrapper.enabled &&
(this.actor.setX(d.getScreenX() - 1),
this.actor.setY(d.getScreenY() - 1),
this.actor.moveToBottom());
},
init: function () {
this.actor.makeAlwaysSimulate();
ba.setScale('width', d.getSceneWidth(), this.actor);
ba.setScale('height', d.getSceneHeight(), this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Mt
});
var Nt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_760'] = Nt;
Nt.__name__ = 'scripts.ActorEvents_760';
Nt.__super__ = u;
Nt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Nt
});
var Ot = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_762'] = Ot;
Ot.__name__ = 'scripts.ActorEvents_762';
Ot.__super__ = u;
Ot.prototype = r(u.prototype, {
_event_EveryNsecs: function (a) {
this.wrapper.enabled && 8 == this.actor.getCurrentFrame() && d.recycleActor(this.actor);
},
init: function () {
d.runPeriodically(100, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Ot
});
var Pt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_764'] = Pt;
Pt.__name__ = 'scripts.ActorEvents_764';
Pt.__super__ = u;
Pt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Pt
});
var Qt = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Hide = '_Hide';
this._Hide = !1;
};
h['scripts.ActorEvents_766'] = Qt;
Qt.__name__ = 'scripts.ActorEvents_766';
Qt.__super__ = u;
Qt.prototype = r(u.prototype, {
_Hide: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
((!d.engine.isPaused() && !k.engine.getGameAttribute('CONTROLLER TIME')) || this._Hide
? d.engine.isPaused() ||
k.engine.getGameAttribute('CONTROLLER TIME') ||
!this._Hide ||
((this._Hide = !1), this.actor.enableActorDrawing())
: ((this._Hide = !0), this.actor.disableActorDrawing()));
},
init: function () {
this.actor.anchorToScreen();
this.actor.makeAlwaysSimulate();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Qt
});
var Rt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_770'] = Rt;
Rt.__name__ = 'scripts.ActorEvents_770';
Rt.__super__ = u;
Rt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Rt
});
var St = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_78'] = St;
St.__name__ = 'scripts.ActorEvents_78';
St.__super__ = u;
St.prototype = r(u.prototype, {
init: function () {
this.actor.disableActorDrawing();
},
forwardMessage: function (a) {},
__class__: St
});
var Tt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_80'] = Tt;
Tt.__name__ = 'scripts.ActorEvents_80';
Tt.__super__ = u;
Tt.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.disableActorDrawing();
},
forwardMessage: function (a) {},
__class__: Tt
});
var Ut = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_82'] = Ut;
Ut.__name__ = 'scripts.ActorEvents_82';
Ut.__super__ = u;
Ut.prototype = r(u.prototype, {
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.disableActorDrawing();
},
forwardMessage: function (a) {},
__class__: Ut
});
var Vt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_88'] = Vt;
Vt.__name__ = 'scripts.ActorEvents_88';
Vt.__super__ = u;
Vt.prototype = r(u.prototype, {
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this.actor.getY() < d.getScreenY() + d.getScreenHeight() / 2 &&
1 == d.randomInt(1, 3) &&
(d.createRecycledActorOnLayer(
d.getActorType(90),
d.randomInt((this.actor.getX() - 32) | 0, (this.actor.getX() + 32) | 0),
this.actor.getY(),
d.engine.getLayerById(3)
),
d.getLastCreatedActor().setYVelocity(0.4 * d.randomInt(8, 12)),
d.getLastCreatedActor().setXVelocity(2.4000000000000004));
},
init: function () {
this.actor.disableActorDrawing();
this.actor.makeAlwaysSimulate();
d.runPeriodically(2e3, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Vt
});
var Wt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_90'] = Wt;
Wt.__name__ = 'scripts.ActorEvents_90';
Wt.__super__ = u;
Wt.prototype = r(u.prototype, {
_event_Leavesscene: function (a, b, c, e) {
this.wrapper.enabled && b && d.recycleActor(this.actor);
},
init: function () {
this.actor.makeAlwaysSimulate();
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_Leavesscene));
},
forwardMessage: function (a) {},
__class__: Wt
});
var Xt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_92'] = Xt;
Xt.__name__ = 'scripts.ActorEvents_92';
Xt.__super__ = u;
Xt.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Xt
});
var Yt = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_94'] = Yt;
Yt.__name__ = 'scripts.ActorEvents_94';
Yt.__super__ = u;
Yt.prototype = r(u.prototype, {
_event_AfterNsecs: function (a) {
this.wrapper.enabled && d.recycleActor(this.actor);
},
init: function () {
d.runLater(400, q(this, this._event_AfterNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Yt
});
var Zt = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Up = '_Up';
this._Up = !1;
};
h['scripts.ActorEvents_96'] = Zt;
Zt.__name__ = 'scripts.ActorEvents_96';
Zt.__super__ = u;
Zt.prototype = r(u.prototype, {
_Up: null,
init: function () {},
forwardMessage: function (a) {},
__class__: Zt
});
var $t = function (a, b, c) {
u.call(this, b);
};
h['scripts.ActorEvents_98'] = $t;
$t.__name__ = 'scripts.ActorEvents_98';
$t.__super__ = u;
$t.prototype = r(u.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: $t
});
var au = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h.Frequency = '_Frequency';
this._Frequency = 4;
this.nameMap.h.Left = '_Left';
this._Left = !0;
};
h['scripts.Design_101_101_HotdogLogic'] = au;
au.__name__ = 'scripts.Design_101_101_HotdogLogic';
au.__super__ = u;
au.prototype = r(u.prototype, {
_Frequency: null,
_Left: null,
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
'Normal' == this.actor.getAnimation() &&
(k.engine.getGameAttribute('Sound Disabled') ||
(this.actor.isOnScreen() &&
d.runLater(
100,
function (a) {
d.playSound(d.getSound(222));
},
this.actor
)),
this._Left
? this.actor.setAnimation('Jump Left')
: this.actor.setAnimation('Jump Right'));
},
_event_Updating: function (a) {
this.wrapper.enabled &&
('Jump Left' == this.actor.getAnimation()
? 5 == this.actor.getCurrentFrame() &&
(this.actor.setAnimation('Shoot Left'),
d.createRecycledActor(
d.getActorType(218),
this.actor.getX() + 2,
this.actor.getY() + 2,
0
),
d.getLastCreatedActor().setXVelocity(-16),
d.getLastCreatedActor().setYVelocity(-30),
d.getLastCreatedActor().setAnimation('Left'))
: 'Jump Right' == this.actor.getAnimation() &&
5 == this.actor.getCurrentFrame() &&
(this.actor.setAnimation('Shoot Right'),
d.createRecycledActor(
d.getActorType(218),
this.actor.getX() + (this.actor.getWidth() - 52),
this.actor.getY() + 2,
0
),
d.getLastCreatedActor().setXVelocity(16),
d.getLastCreatedActor().setYVelocity(-30),
d.getLastCreatedActor().setAnimation('Right')),
'Shoot Left' == this.actor.getAnimation()
? 12 == this.actor.getCurrentFrame() && this.actor.setAnimation('Normal')
: 'Shoot Right' == this.actor.getAnimation() &&
12 == this.actor.getCurrentFrame() &&
this.actor.setAnimation('Normal'));
},
init: function () {
this.actor.makeAlwaysSimulate();
d.runPeriodically(1e3 * this._Frequency, q(this, this._event_EveryNsecs), this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: au
});
var bu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Dialog Text'] = '_DialogText';
this._DialogText = 'DEFAULT';
this.nameMap.h['Dialog Complete'] = '_DialogComplete';
this._DialogComplete = !1;
this.nameMap.h.Left = '_Left';
this._Left = !0;
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['Origin Y'] = '_OriginY';
this._OriginY = 0;
this.nameMap.h['Baby Type Number'] = '_BabyTypeNumber';
this._BabyTypeNumber = 1;
this.nameMap.h['Talk First'] = '_TalkFirst';
this._TalkFirst = !0;
this.nameMap.h['Level Number'] = '_LevelNumber';
this._LevelNumber = 0;
this.nameMap.h['Start Y'] = '_StartY';
this._StartY = 0;
};
h['scripts.Design_102_102_BabyLogic'] = bu;
bu.__name__ = 'scripts.Design_102_102_BabyLogic';
bu.__super__ = u;
bu.prototype = r(u.prototype, {
_DialogText: null,
_DialogComplete: null,
_Left: null,
_GravitySpeed: null,
_OriginY: null,
_BabyTypeNumber: null,
_TalkFirst: null,
_LevelNumber: null,
_StartY: null,
_customEvent_Dialog: function () {
'DEFAULT' == this._DialogText
? this.actor.say('Baby Logic', '_customEvent_dialogComplete')
: this._DialogComplete ||
((this._DialogComplete = !0),
d.createRecycledActor(d.getActorType(161), 0, d.getScreenHeight() - 96, 0),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_DialogText', this._DialogText),
this._TalkFirst
? (d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby' + this._BabyTypeNumber),
k.engine.getGameAttribute('Possum Mode')
? d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character2', 'Baby' + this._BabyTypeNumber)
: d.getLastCreatedActor().setValue('Dialog Box Logic', '_Character2', 'Dadish'))
: (k.engine.getGameAttribute('Possum Mode')
? d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby' + this._BabyTypeNumber)
: d.getLastCreatedActor().setValue('Dialog Box Logic', '_Character1', 'Dadish'),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character2', 'Baby' + this._BabyTypeNumber)),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_Parent', this.actor),
d.getLastCreatedActor().say('Dialog Box Logic', '_customEvent_Go'));
},
_customEvent_dialogComplete: function () {
for (var a = 0, b = d.getActorsOfType(d.getActorType(2)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.say('Dude Logic', '_customEvent_Exit');
}
},
init: function () {
this.actor.makeAlwaysSimulate();
this._StartY = this.actor.getY();
k.engine.getGameAttribute('Possum Mode') &&
((this._BabyTypeNumber = 6),
'JP' == k.engine.getGameAttribute('Language')
? (this._DialogText = '*\u30ae\u30e3\u30fc*|*\u30ae\u30e3\u30fc*')
: 'CN' == k.engine.getGameAttribute('Language')
? (this._DialogText = '*SCREECH*|*SCREECH*')
: 'KR' == k.engine.getGameAttribute('Language')
? (this._DialogText = '*\uaf64\uc561*|*\uaf64\uc561*')
: (this._DialogText = '*SCREECH*|*SCREECH*'));
if (6 != this._BabyTypeNumber) {
var a = d.getCurrentSceneName().split(' ')[1];
this._LevelNumber =
null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a));
a = ('' + this._LevelNumber).charAt(('' + this._LevelNumber).length - 1);
this._BabyTypeNumber =
null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a));
5 < this._BabyTypeNumber
? (this._BabyTypeNumber -= 5)
: 0 == this._BabyTypeNumber && (this._BabyTypeNumber = 5);
}
this._Left
? this.actor.setAnimation('' + this._BabyTypeNumber + ' Left')
: this.actor.setAnimation('' + this._BabyTypeNumber + ' Right');
this.actor.setY(this._StartY);
},
forwardMessage: function (a) {},
__class__: bu
});
var cu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h.Dude = '_Dude';
this.nameMap.h.Solid = '_Solid';
this._Solid = !1;
this.nameMap.h['Collision Width'] = '_CollisionWidth';
this._CollisionWidth = 0;
this.nameMap.h['Start Y'] = '_StartY';
this._StartY = 0;
};
h['scripts.Design_10_10_PassThroughPlatform'] = cu;
cu.__name__ = 'scripts.Design_10_10_PassThroughPlatform';
cu.__super__ = u;
cu.prototype = r(u.prototype, {
_Dude: null,
_Solid: null,
_CollisionWidth: null,
_StartY: null,
_event_Updating: function (a) {
if (this.wrapper.enabled && this.actor.isOnScreen())
if (
((a = this._Dude),
!d.isPrimitive(a) && ('string' == typeof a ? '' == x.__cast(a, String) : null == a))
) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(2)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Dude = c);
}
} else if (
0 <= this._Dude.getYVelocity() &&
this._Dude.getY() <= this.actor.getY() - (this._Dude.getHeight() - 2) &&
!this._Solid
)
(this._Solid = !0),
this.actor.addRectangularShape(0, 0, this._CollisionWidth, 8),
this.actor.getLastCreatedFixture().setSensor(!1);
else if (
(0 > this._Dude.getYVelocity() ||
!(this._Dude.getY() <= this.actor.getY() - (this._Dude.getHeight() - 2))) &&
this._Solid
) {
this._Solid = !1;
a = this.actor;
if (0 == a.physicsMode)
for (a = a.getBody().getFixtureList(); null != a; )
a.getBody().DestroyFixture(a), (a = a.getNext());
this.actor.addRectangularShape(0, 0, this._CollisionWidth, 8);
this.actor.getLastCreatedFixture().setSensor(!1);
this.actor.getLastCreatedFixture().groupID = d.getActorGroup(8).ID;
}
},
init: function () {
this._CollisionWidth = this.actor.getWidth();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: cu
});
var du = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Total Length'] = '_TotalLength';
this._TotalLength = 0;
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
};
h['scripts.Design_119_119_OverworldBorderRepeater'] = du;
du.__name__ = 'scripts.Design_119_119_OverworldBorderRepeater';
du.__super__ = u;
du.prototype = r(u.prototype, {
_TotalLength: null,
_First: null,
_RightScrollLimit: null,
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.moveToBottom();
this._First = !0;
for (var a = 0, b = d.getActorsOfType(this.actor.getType()); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c == this.actor || (this._First = !1);
}
if (
this._First &&
((this._RightScrollLimit = Math.max(760, d.getScreenWidth() + 64)),
this.actor.getWidth() < this._RightScrollLimit)
)
for (
this._TotalLength = this.actor.getWidth();
!(this._TotalLength > this._RightScrollLimit);
)
d.createRecycledActor(
this.actor.getType(),
this.actor.getX() + this._TotalLength,
this.actor.getY(),
1
),
d.getLastCreatedActor().moveToBottom(),
(this._TotalLength += this.actor.getWidth());
},
forwardMessage: function (a) {},
__class__: du
});
var eu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Origin X'] = '_OriginX';
this._OriginX = 0;
this.nameMap.h['Origin Y'] = '_OriginY';
this._OriginY = 0;
this.nameMap.h['Distance X'] = '_DistanceX';
this._DistanceX = 0;
this.nameMap.h['Distance Y'] = '_DistanceY';
this._DistanceY = 0;
this.nameMap.h['Starting Level'] = '_StartingLevel';
this._StartingLevel = 0;
this.nameMap.h['Button Pressed'] = '_ButtonPressed';
this._ButtonPressed = !1;
this.nameMap.h['Next Button'] = '_NextButton';
this.nameMap.h['Previous Button'] = '_PreviousButton';
this.nameMap.h['Current World'] = '_CurrentWorld';
this._CurrentWorld = !1;
this.nameMap.h['Current Level Button'] = '_CurrentLevelButton';
this.nameMap.h['Right Scroll Limit'] = '_RightScrollLimit';
this._RightScrollLimit = 0;
this.nameMap.h.Cursor = '_Cursor';
};
h['scripts.Design_127_127_OverworldFrameLogic'] = eu;
eu.__name__ = 'scripts.Design_127_127_OverworldFrameLogic';
eu.__super__ = u;
eu.prototype = r(u.prototype, {
_OriginX: null,
_OriginY: null,
_DistanceX: null,
_DistanceY: null,
_StartingLevel: null,
_ButtonPressed: null,
_NextButton: null,
_PreviousButton: null,
_CurrentWorld: null,
_CurrentLevelButton: null,
_RightScrollLimit: null,
_Cursor: null,
_event_Updating: function (a) {
if (
this.wrapper.enabled &&
!this._ButtonPressed &&
!d.getValueForScene('Overworld Logic', '_ButtonPressed')
) {
a = this._NextButton;
if (
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._NextButton.isMousePressed()
) {
this._ButtonPressed = !0;
this._NextButton.setAnimation('Down');
a = 0;
for (var b = d.getActorsOfType(d.getActorType(244)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(248)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(246)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(291)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(527)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(539)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, 70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(622)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, 70, 0.2, J.quadOut);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252));
k.engine.gameAttributes.h['Wipe In Right'] = !0;
k.engine.gameAttributes.h['Overworld Entered Left'] = !0;
d.sayToScene('Transitions', '_customEvent_wipeOutRight');
d.runLater(
500,
function (a) {
if ('World 1 Select' == d.getCurrentSceneName()) {
a = Fa.get().scenes.h[6].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e));
} else
'World 2 Select' == d.getCurrentSceneName()
? ((a = Fa.get().scenes.h[7].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)))
: 'World 3 Select' == d.getCurrentSceneName() &&
((a = Fa.get().scenes.h[8].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)));
},
this.actor
);
}
a = this._PreviousButton;
if (
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._PreviousButton.isMousePressed()
) {
this._ButtonPressed = !0;
this._PreviousButton.setAnimation('Down');
a = 0;
for (b = d.getActorsOfType(d.getActorType(244)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(248)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(246)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(291)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(527)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(539)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, 70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(622)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, 70, 0.2, J.quadOut);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252));
k.engine.gameAttributes.h['Wipe In Left'] = !0;
k.engine.gameAttributes.h['Overworld Entered Right'] = !0;
d.sayToScene('Transitions', '_customEvent_wipeOutLeft');
d.runLater(
500,
function (a) {
if ('World 2 Select' == d.getCurrentSceneName()) {
a = Fa.get().scenes.h[5].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e));
} else
'World 3 Select' == d.getCurrentSceneName()
? ((a = Fa.get().scenes.h[6].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)))
: 'World 4 Select' == d.getCurrentSceneName() &&
((a = Fa.get().scenes.h[7].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)));
},
this.actor
);
}
}
},
_event_Controller: function (a, b) {
if (this.wrapper.enabled && a && k.engine.getGameAttribute('Controller Mode')) {
a = 0;
for (b = d.getActorsOfType(d.getActorType(589)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Cursor = c);
}
a = this._Cursor;
if (
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
!this._ButtonPressed &&
!d.getValueForScene('Overworld Logic', '_ButtonPressed')
) {
a = this._NextButton;
if (
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Cursor.getScreenX() + 24 >= this._NextButton.getScreenX() &&
this._Cursor.getScreenX() + 24 <
this._NextButton.getScreenX() + this._NextButton.getWidth() &&
this._Cursor.getScreenY() + 24 >= this._NextButton.getScreenY() &&
this._Cursor.getScreenY() + 24 <
this._NextButton.getScreenY() + this._NextButton.getHeight()
) {
this._ButtonPressed = !0;
this._NextButton.setAnimation('Down');
a = 0;
for (b = d.getActorsOfType(d.getActorType(244)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(248)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(246)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(291)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(527)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252));
k.engine.gameAttributes.h['Wipe In Right'] = !0;
k.engine.gameAttributes.h['Overworld Entered Left'] = !0;
d.sayToScene('Transitions', '_customEvent_wipeOutRight');
d.runLater(
500,
function (a) {
if ('World 1 Select' == d.getCurrentSceneName()) {
a = Fa.get().scenes.h[6].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e));
} else
'World 2 Select' == d.getCurrentSceneName()
? ((a = Fa.get().scenes.h[7].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)))
: 'World 3 Select' == d.getCurrentSceneName() &&
((a = Fa.get().scenes.h[8].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)));
},
this.actor
);
}
a = this._PreviousButton;
if (
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Cursor.getScreenX() + 24 >= this._PreviousButton.getScreenX() &&
this._Cursor.getScreenX() + 24 <
this._PreviousButton.getScreenX() + this._PreviousButton.getWidth() &&
this._Cursor.getScreenY() + 24 >= this._PreviousButton.getScreenY() &&
this._Cursor.getScreenY() + 24 <
this._PreviousButton.getScreenY() + this._PreviousButton.getHeight()
) {
this._ButtonPressed = !0;
this._PreviousButton.setAnimation('Down');
a = 0;
for (b = d.getActorsOfType(d.getActorType(244)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(248)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(246)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(291)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(527)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.moveBy(0, -70, 0.2, J.quadOut);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252));
k.engine.gameAttributes.h['Wipe In Left'] = !0;
k.engine.gameAttributes.h['Overworld Entered Right'] = !0;
d.sayToScene('Transitions', '_customEvent_wipeOutLeft');
d.runLater(
500,
function (a) {
if ('World 2 Select' == d.getCurrentSceneName()) {
a = Fa.get().scenes.h[5].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e));
} else
'World 3 Select' == d.getCurrentSceneName()
? ((a = Fa.get().scenes.h[6].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)))
: 'World 4 Select' == d.getCurrentSceneName() &&
((a = Fa.get().scenes.h[7].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)));
},
this.actor
);
}
}
}
},
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.setAnimation('Normal');
d.getScreenWidth() > this.actor.getWidth() + 128
? (this._DistanceX =
d.getScreenWidth() / 2 - this.actor.getWidth() / 2 + 32 - this.actor.getX())
: (this._DistanceX = 96 - this.actor.getX());
this._DistanceY = d.getSceneWidth() / 2 - this.actor.getHeight() / 2 - this.actor.getY();
this.actor.setX(this.actor.getX() + this._DistanceX);
this.actor.setY(this.actor.getY() + this._DistanceY);
for (var a = 0, b = x.__cast(d.getActorGroup(7), ze).list; a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
(c.setX(c.getX() + this._DistanceX), c.setY(c.getY() + this._DistanceY));
}
1 < this._StartingLevel &&
(d.createRecycledActor(
d.getActorType(289),
this.actor.getX() - 64,
this.actor.getY(),
0
),
(this._PreviousButton = d.getLastCreatedActor()));
30 > this._StartingLevel &&
k.engine.getGameAttribute('Highest Level') >= this._StartingLevel + 9 &&
(d.createRecycledActor(
d.getActorType(285),
this.actor.getX() + (this.actor.getWidth() + 32),
this.actor.getY(),
0
),
(this._NextButton = d.getLastCreatedActor()));
d.createRecycledActor(d.getActorType(277), this.actor.getX(), this.actor.getY(), 0);
d.getLastCreatedActor().setValue(
'Level Button Logic',
'_LevelNumber',
this._StartingLevel
);
this._StartingLevel += 1;
d.createRecycledActor(d.getActorType(277), this.actor.getX() + 84, this.actor.getY(), 0);
d.getLastCreatedActor().setValue(
'Level Button Logic',
'_LevelNumber',
this._StartingLevel
);
this._StartingLevel += 1;
d.createRecycledActor(
d.getActorType(277),
this.actor.getX() + 84,
this.actor.getY() + 84,
0
);
d.getLastCreatedActor().setValue(
'Level Button Logic',
'_LevelNumber',
this._StartingLevel
);
this._StartingLevel += 1;
d.createRecycledActor(
d.getActorType(277),
this.actor.getX() + 168,
this.actor.getY() + 84,
0
);
d.getLastCreatedActor().setValue(
'Level Button Logic',
'_LevelNumber',
this._StartingLevel
);
this._StartingLevel += 1;
d.createRecycledActor(
d.getActorType(277),
this.actor.getX() + 252,
this.actor.getY() + 84,
0
);
d.getLastCreatedActor().setValue(
'Level Button Logic',
'_LevelNumber',
this._StartingLevel
);
this._StartingLevel += 1;
d.createRecycledActor(d.getActorType(277), this.actor.getX() + 252, this.actor.getY(), 0);
d.getLastCreatedActor().setValue(
'Level Button Logic',
'_LevelNumber',
this._StartingLevel
);
this._StartingLevel += 1;
d.createRecycledActor(d.getActorType(277), this.actor.getX() + 336, this.actor.getY(), 0);
d.getLastCreatedActor().setValue(
'Level Button Logic',
'_LevelNumber',
this._StartingLevel
);
this._StartingLevel += 1;
d.createRecycledActor(d.getActorType(277), this.actor.getX() + 420, this.actor.getY(), 0);
d.getLastCreatedActor().setValue(
'Level Button Logic',
'_LevelNumber',
this._StartingLevel
);
this._StartingLevel += 1;
d.createRecycledActor(
d.getActorType(277),
this.actor.getX() + 420,
this.actor.getY() + 84,
0
);
d.getLastCreatedActor().setValue(
'Level Button Logic',
'_LevelNumber',
this._StartingLevel
);
this._StartingLevel += 1;
d.createRecycledActor(
d.getActorType(277),
this.actor.getX() + 504,
this.actor.getY() + 84,
0
);
d.getLastCreatedActor().setValue(
'Level Button Logic',
'_LevelNumber',
this._StartingLevel
);
a = 0;
for (b = d.getActorsOfType(d.getActorType(277)); a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
(c.moveToBottom(),
this.actor.getType() == d.getActorType(261) &&
c.setValue('Level Button Logic', '_Dark', !0),
c.say('Level Button Logic', '_customEvent_Go'));
d.engine.moveCamera(0, this.actor.getYCenter());
a = 0;
for (b = d.getActorsOfType(d.getActorType(277)); a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
c.getValue('Level Button Logic', '_LevelNumber') !=
k.engine.getGameAttribute('Highest Level') ||
((this._CurrentWorld = !0), (this._CurrentLevelButton = c));
this._RightScrollLimit = Math.max(
696 - d.getScreenWidth() / 2 + 64,
d.getScreenWidth() + 64 - d.getScreenWidth() / 2
);
this._CurrentWorld && !k.engine.getGameAttribute('Overworld Entered Left')
? d.createRecycledActor(
d.getActorType(273),
Math.max(
Math.min(this._RightScrollLimit, this._CurrentLevelButton.getXCenter()),
d.getScreenWidth() / 2
),
this.actor.getYCenter(),
0
)
: k.engine.getGameAttribute('Overworld Entered Right')
? ((k.engine.gameAttributes.h['Overworld Entered Right'] = !1),
d.createRecycledActor(
d.getActorType(273),
Math.min(this._RightScrollLimit, this.actor.getX() + this.actor.getWidth()),
this.actor.getYCenter(),
0
))
: ((k.engine.gameAttributes.h['Overworld Entered Left'] = !1),
d.createRecycledActor(
d.getActorType(273),
Math.max(d.getScreenWidth() / 2, this.actor.getX()),
this.actor.getYCenter(),
0
));
d.shoutToScene('_customEvent_createBorders');
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(
d.engine.whenKeyPressedEvents.getOrCreateEvent('action1'),
q(this, this._event_Controller)
);
},
forwardMessage: function (a) {},
__class__: eu
});
var fu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Level Number'] = '_LevelNumber';
this._LevelNumber = 0;
this.nameMap.h.Frame = '_Frame';
this.nameMap.h.Dark = '_Dark';
this._Dark = !1;
this.nameMap.h['Boss Level'] = '_BossLevel';
this._BossLevel = !1;
this.nameMap.h.Cursor = '_Cursor';
this.nameMap.h.Time = '_Time';
this._Time = '';
this.nameMap.h['Timer Wrap'] = '_TimerWrap';
this.nameMap.h['Timer Hidden'] = '_TimerHidden';
this._TimerHidden = !1;
this.nameMap.h.PRESSED = '_PRESSED';
this._PRESSED = !1;
};
h['scripts.Design_131_131_LevelButtonLogic'] = fu;
fu.__name__ = 'scripts.Design_131_131_LevelButtonLogic';
fu.__super__ = u;
fu.prototype = r(u.prototype, {
_LevelNumber: null,
_Frame: null,
_Dark: null,
_BossLevel: null,
_Cursor: null,
_Time: null,
_TimerWrap: null,
_TimerHidden: null,
_PRESSED: null,
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
this._TimerHidden && k.engine.getGameAttribute('Timer Mode')
? ((this._TimerHidden = !1), this._TimerWrap.enableActorDrawing())
: this._TimerHidden ||
k.engine.getGameAttribute('Timer Mode') ||
((this._TimerHidden = !0), this._TimerWrap.disableActorDrawing());
if (!this._BossLevel)
if (
((c = d.getFont(168)),
null != c && c != a.font && (a.font = c),
'Down' == this.actor.getAnimation())
) {
c = '' + this._LevelNumber;
b =
this.actor.getWidth() / 2 -
a.font.getTextWidth('' + this._LevelNumber) / k.SCALE / 2;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
if (a.drawActor)
if (null != a.actor && a.actor.isHUD) {
b = a.x + b * a.scaleX;
var e = a.y + 28 * a.scaleY;
} else
(b = a.x + b * a.scaleX - k.cameraX), (e = a.y + 28 * a.scaleY - k.cameraY);
else (b = a.x + b * a.scaleX), (e = a.y + 28 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, e);
var f = null,
g = a.font;
g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g))
(c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img);
else {
var h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale),
l = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g));
}
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill());
} else
'Normal' == this.actor.getAnimation() &&
((c = '' + this._LevelNumber),
(b =
this.actor.getWidth() / 2 -
a.font.getTextWidth('' + this._LevelNumber) / k.SCALE / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 20 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX),
(e = a.y + 20 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 20 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()));
k.engine.getGameAttribute('Timer Mode') &&
((c = this._Time),
d.isPrimitive(c) || ('string' == typeof c ? '' != x.__cast(c, String) : null != c)
? ((c = d.getFont(624)),
null != c && c != a.font && (a.font = c),
'Down' == this.actor.getAnimation() || 'Down Boss' == this.actor.getAnimation()
? ((c = this._Time),
(b =
this.actor.getWidth() / 2 - a.font.getTextWidth(this._Time) / k.SCALE / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 52 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX),
(e = a.y + 52 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 52 * a.scaleY)))
: ((c = this._Time),
(b =
this.actor.getWidth() / 2 - a.font.getTextWidth(this._Time) / k.SCALE / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 44 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX),
(e = a.y + 44 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 44 * a.scaleY))),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()))
: (this._Time =
'' +
B.string(
k.engine.getGameAttribute('Best Times')[(this._LevelNumber - 1) | 0]
)));
}
},
_event_OnActor: function (a) {
var b = this;
if (
this.wrapper.enabled &&
3 == a &&
((a = this._Frame),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
('Normal' == this.actor.getAnimation() ||
'Normal Boss' == this.actor.getAnimation()) &&
0 == this._Frame.getValue('Overworld Frame Logic', '_ButtonPressed') &&
0 == d.getValueForScene('Overworld Logic', '_ButtonPressed'))
) {
this._Frame.setValue('Overworld Frame Logic', '_ButtonPressed', !0);
d.stopAllSounds();
a = 0;
for (var c = d.getActorsOfType(d.getActorType(244)); a < c.length; ) {
var e = c[a];
++a;
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
}
a = 0;
for (c = d.getActorsOfType(d.getActorType(248)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(246)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(291)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(527)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(539)); a < c.length; )
(e = c[a]), ++a, null == e || e.dead || e.recycled || e.moveBy(0, 70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(622)); a < c.length; )
(e = c[a]), ++a, null == e || e.dead || e.recycled || e.moveBy(0, 70, 0.2, J.quadOut);
a = this._TimerWrap;
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._TimerWrap.setY(this.actor.getY() + 48);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252));
this._BossLevel
? this.actor.setAnimation('Down Boss')
: this.actor.setAnimation('Down');
d.runLater(
200,
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 2);
d.sayToScene('Transitions', '_customEvent_transitionOut');
d.runLater(
1e3,
function (a) {
gb.commercialBreak(function () {
var a = Fa.get().scenes,
c = d.getIDForScene('Level ' + b._LevelNumber);
a = a.h[c].getID();
var e = (c = 0),
f = 0;
null == f && (f = 0);
null == e && (e = 0);
null == c && (c = 0);
var g = d.createFadeOut(0.1, (c << 16) | (e << 8) | f);
f = e = c = 0;
null == f && (f = 0);
null == e && (e = 0);
null == c && (c = 0);
d.switchScene(a, g, d.createFadeIn(0.1, (c << 16) | (e << 8) | f));
});
},
b.actor
);
},
this.actor
);
}
},
_event_Updating: function (a) {
var b = this;
if (
this.wrapper.enabled &&
(d.isKeyPressed('action1') || d.isKeyPressed('enter')) &&
k.engine.getGameAttribute('Controller Mode')
) {
a = 0;
for (var c = d.getActorsOfType(d.getActorType(589)); a < c.length; ) {
var e = c[a];
++a;
null == e || e.dead || e.recycled || (this._Cursor = e);
}
a = this._Cursor;
if (
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Cursor.getScreenX() + 24 >= this.actor.getScreenX() &&
this._Cursor.getScreenX() + 24 < this.actor.getScreenX() + this.actor.getWidth() &&
this._Cursor.getScreenY() + 24 >= this.actor.getScreenY() &&
this._Cursor.getScreenY() + 24 < this.actor.getScreenY() + this.actor.getHeight() &&
((a = this._Frame),
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
('Normal' == this.actor.getAnimation() ||
'Normal Boss' == this.actor.getAnimation()) &&
0 == this._Frame.getValue('Overworld Frame Logic', '_ButtonPressed') &&
0 == d.getValueForScene('Overworld Logic', '_ButtonPressed'))
) {
this._Frame.setValue('Overworld Frame Logic', '_ButtonPressed', !0);
d.stopAllSounds();
a = 0;
for (c = d.getActorsOfType(d.getActorType(244)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(248)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(246)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(291)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(527)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252));
this._BossLevel
? this.actor.setAnimation('Down Boss')
: this.actor.setAnimation('Down');
d.setValueForScene('Transitions', '_TransitionType', 2);
d.sayToScene('Transitions', '_customEvent_transitionOut');
d.runLater(
1e3,
function (a) {
gb.commercialBreak(function () {
var a = Fa.get().scenes,
c = d.getIDForScene('Level ' + b._LevelNumber);
a = a.h[c].getID();
var e = (c = 0),
f = 0;
null == f && (f = 0);
null == e && (e = 0);
null == c && (c = 0);
var k = d.createFadeOut(0.1, (c << 16) | (e << 8) | f);
f = e = c = 0;
null == f && (f = 0);
null == e && (e = 0);
null == c && (c = 0);
d.switchScene(a, k, d.createFadeIn(0.1, (c << 16) | (e << 8) | f));
});
},
this.actor
);
}
}
},
_customEvent_Go: function () {
if (
10 == this._LevelNumber ||
20 == this._LevelNumber ||
30 == this._LevelNumber ||
40 == this._LevelNumber
)
this._BossLevel = !0;
this._LevelNumber <= k.engine.getGameAttribute('Highest Level') + 1
? (this._BossLevel
? this.actor.setAnimation('Normal Boss')
: this.actor.setAnimation('Normal'),
this._LevelNumber <= k.engine.getGameAttribute('Highest Level') &&
d.createRecycledActor(
d.getActorType(279),
this.actor.getX() + 46,
this.actor.getY() - 10,
0
),
X.contains(k.engine.getGameAttribute('Stars List'), this._LevelNumber)
? d.createRecycledActor(
d.getActorType(281),
this.actor.getX() + 22,
this.actor.getY() - 10,
0
)
: X.contains(k.engine.getGameAttribute('No Stars List'), this._LevelNumber) ||
(d.createRecycledActor(
d.getActorType(281),
this.actor.getX() + 22,
this.actor.getY() - 10,
0
),
d.getLastCreatedActor().setAnimation('Empty')))
: this._Dark
? this.actor.setAnimation('Locked Dark')
: this.actor.setAnimation('Locked Light');
},
init: function () {
this.actor.makeAlwaysSimulate();
for (var a = 0, b = d.getActorsOfType(d.getActorType(259)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Frame = c);
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(261)); a < b.length; )
(c = b[a]), ++a, null == c || c.dead || c.recycled || (this._Frame = c);
d.createRecycledActor(
d.getActorType(625),
this.actor.getX() - 12,
this.actor.getY() + 40,
0
);
this._TimerWrap = d.getLastCreatedActor();
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenMousedOver, q(this, this._event_OnActor));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: fu
});
var gu = function (a, b) {
d.call(this);
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Transition Col Count'] = '_TransitionColCount';
this._TransitionColCount = 0;
this.nameMap.h['Transition X Center'] = '_TransitionXCenter';
this._TransitionXCenter = 0;
this.nameMap.h['Transition Y Center'] = '_TransitionYCenter';
this._TransitionYCenter = 0;
this.nameMap.h['Transition Type'] = '_TransitionType';
this._TransitionType = 0;
this.nameMap.h['Actors to slide'] = '_Actorstoslide';
this.nameMap.h.Go = '_Go';
this._Go = !1;
};
h['scripts.Design_134_134_Transitions'] = gu;
gu.__name__ = 'scripts.Design_134_134_Transitions';
gu.__super__ = sa;
gu.prototype = r(sa.prototype, {
_Dude: null,
_TransitionColCount: null,
_TransitionXCenter: null,
_TransitionYCenter: null,
_TransitionType: null,
_Actorstoslide: null,
_Go: null,
_customEvent_transitionIn: function () {
for (var a = 0, b = d.getActorsOfType(d.getActorType(2)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Dude = c);
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(668)); a < b.length; )
(c = b[a]), ++a, null == c || c.dead || c.recycled || (this._Dude = c);
a = 0;
for (b = d.getActorsOfType(d.getActorType(740)); a < b.length; )
(c = b[a]), ++a, null == c || c.dead || c.recycled || (this._Dude = c);
a = 0;
for (b = Math.ceil(d.getScreenWidth() / 48) + 4; a < b; ) {
c = a++;
for (var e = 0, f = Math.ceil(d.getScreenHeight() / 48) + 4; e < f; ) {
var g = e++;
d.createRecycledActor(
d.getActorType(100),
-64 + 48 * this._TransitionColCount,
-64 + 48 * g,
0
);
if (0 == this._TransitionType) {
if (
((g = this._Dude),
d.isPrimitive(g) ||
('string' == typeof g ? '' != x.__cast(g, String) : null != g))
)
(this._TransitionXCenter = this._Dude.getScreenX() + this._Dude.getWidth() / 2),
(this._TransitionYCenter =
this._Dude.getScreenY() + this._Dude.getHeight() / 2),
d
.getLastCreatedActor()
.setValue(
'Transition Block Logic',
'_Delay',
0.3 +
5e-4 *
(Math.max(
d.getLastCreatedActor().getScreenX() +
d.getLastCreatedActor().getWidth() / 2,
this._Dude.getScreenX() + this._Dude.getWidth() / 2
) -
Math.min(
d.getLastCreatedActor().getScreenX() +
d.getLastCreatedActor().getWidth() / 2,
this._Dude.getScreenX() + this._Dude.getWidth() / 2
) +
(Math.max(
d.getLastCreatedActor().getScreenY() +
d.getLastCreatedActor().getHeight() / 2,
this._Dude.getScreenY() + this._Dude.getHeight() / 2
) -
Math.min(
d.getLastCreatedActor().getScreenY() +
d.getLastCreatedActor().getHeight() / 2,
this._Dude.getScreenY() + this._Dude.getHeight() / 2
)))
);
} else
1 == this._TransitionType &&
((this._TransitionXCenter = d.getScreenWidth() / 2),
(this._TransitionYCenter = d.getScreenHeight() / 2),
d
.getLastCreatedActor()
.setValue(
'Transition Block Logic',
'_Delay',
0.001 *
(Math.max(d.getLastCreatedActor().getScreenX(), d.getScreenWidth() / 2) -
Math.min(d.getLastCreatedActor().getScreenX(), d.getScreenWidth() / 2) +
(Math.max(d.getLastCreatedActor().getScreenY(), d.getScreenHeight() / 2) -
Math.min(
d.getLastCreatedActor().getScreenY(),
d.getScreenHeight() / 2
)))
));
d.getLastCreatedActor().getX() < this._TransitionXCenter &&
d.getLastCreatedActor().getY() < this._TransitionYCenter
? d
.getLastCreatedActor()
.setValue('Transition Block Logic', '_Position', 'Top Left')
: d.getLastCreatedActor().getX() >= this._TransitionXCenter &&
d.getLastCreatedActor().getY() < this._TransitionYCenter
? d
.getLastCreatedActor()
.setValue('Transition Block Logic', '_Position', 'Top Right')
: d.getLastCreatedActor().getX() < this._TransitionXCenter &&
d.getLastCreatedActor().getY() >= this._TransitionYCenter
? d
.getLastCreatedActor()
.setValue('Transition Block Logic', '_Position', 'Bottom Left')
: d
.getLastCreatedActor()
.setValue('Transition Block Logic', '_Position', 'Bottom Right');
d.getLastCreatedActor().say('Transition Block Logic', '_customEvent_Go');
}
this._TransitionColCount = c;
}
k.engine.getGameAttribute('Sound Disabled') ||
'Title Screen' == d.getCurrentSceneName() ||
d.playSound(d.getSound(253));
},
_customEvent_transitionOut: function () {
if (!this._Go) {
this._Go = !0;
d.stopAllSounds();
for (var a = 0, b = d.getActorsOfType(d.getActorType(2)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Dude = c);
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(668)); a < b.length; )
(c = b[a]), ++a, null == c || c.dead || c.recycled || (this._Dude = c);
a = 0;
for (b = d.getActorsOfType(d.getActorType(740)); a < b.length; )
(c = b[a]), ++a, null == c || c.dead || c.recycled || (this._Dude = c);
a = 0;
for (b = Math.ceil(d.getScreenWidth() / 48) + 4; a < b; ) {
for (var e = a++, f = 0, g = Math.ceil(d.getScreenHeight() / 48) + 4; f < g; ) {
c = f++;
d.createRecycledActor(
d.getActorType(98),
-64 + 48 * this._TransitionColCount,
-64 + 48 * c,
0
);
if (0 == this._TransitionType) {
if (
((c = this._Dude),
d.isPrimitive(c) ||
('string' == typeof c ? '' != x.__cast(c, String) : null != c))
) {
this._TransitionXCenter = this._Dude.getScreenX() + this._Dude.getWidth() / 2;
this._TransitionYCenter = this._Dude.getScreenY() + this._Dude.getHeight() / 2;
d.getLastCreatedActor().setValue(
'Transition Block Logic',
'_Delay',
5e-4 *
((d.getScreenWidth() + d.getScreenHeight()) / 2 -
(Math.max(
d.getLastCreatedActor().getScreenX() +
d.getLastCreatedActor().getWidth() / 2,
this._Dude.getScreenX() + this._Dude.getWidth() / 2
) -
Math.min(
d.getLastCreatedActor().getScreenX() +
d.getLastCreatedActor().getWidth() / 2,
this._Dude.getScreenX() + this._Dude.getWidth() / 2
) +
(Math.max(
d.getLastCreatedActor().getScreenY() +
d.getLastCreatedActor().getHeight() / 2,
this._Dude.getScreenY() + this._Dude.getHeight() / 2
) -
Math.min(
d.getLastCreatedActor().getScreenY() +
d.getLastCreatedActor().getHeight() / 2,
this._Dude.getScreenY() + this._Dude.getHeight() / 2
))))
);
this._Dude.bringToFront();
this._Dude.moveToTop();
for (var h = 0, l = d.getActorsOfType(d.getActorType(537)); h < l.length; )
(c = l[h]),
++h,
null == c || c.dead || c.recycled || (c.bringToFront(), c.moveToTop());
c = 0;
for (h = d.getActorsOfType(d.getActorType(159)); c < h.length; )
(l = h[c]),
++c,
null == l || l.dead || l.recycled || (l.bringToFront(), l.moveToTop());
}
} else
1 == this._TransitionType
? ((this._TransitionXCenter = d.getScreenWidth() / 2),
(this._TransitionYCenter = d.getScreenHeight() / 2),
d
.getLastCreatedActor()
.setValue(
'Transition Block Logic',
'_Delay',
0.001 *
(Math.max(
d.getLastCreatedActor().getScreenX(),
d.getScreenWidth() / 2
) -
Math.min(
d.getLastCreatedActor().getScreenX(),
d.getScreenWidth() / 2
) +
(Math.max(
d.getLastCreatedActor().getScreenY(),
d.getScreenHeight() / 2
) -
Math.min(
d.getLastCreatedActor().getScreenY(),
d.getScreenHeight() / 2
)))
))
: 2 == this._TransitionType &&
((this._TransitionXCenter = d.getScreenWidth() / 2),
(this._TransitionYCenter = d.getScreenHeight() / 2),
d
.getLastCreatedActor()
.setValue(
'Transition Block Logic',
'_Delay',
0.001 *
((d.getScreenWidth() + d.getScreenHeight()) / 2 -
(Math.max(
d.getLastCreatedActor().getScreenX(),
d.getScreenWidth() / 2
) -
Math.min(
d.getLastCreatedActor().getScreenX(),
d.getScreenWidth() / 2
) +
(Math.max(
d.getLastCreatedActor().getScreenY(),
d.getScreenHeight() / 2
) -
Math.min(
d.getLastCreatedActor().getScreenY(),
d.getScreenHeight() / 2
))))
));
d.getLastCreatedActor().getX() < this._TransitionXCenter &&
d.getLastCreatedActor().getY() < this._TransitionYCenter
? d
.getLastCreatedActor()
.setValue('Transition Block Logic', '_Position', 'Top Left')
: d.getLastCreatedActor().getX() >= this._TransitionXCenter &&
d.getLastCreatedActor().getY() < this._TransitionYCenter
? d
.getLastCreatedActor()
.setValue('Transition Block Logic', '_Position', 'Top Right')
: d.getLastCreatedActor().getX() < this._TransitionXCenter &&
d.getLastCreatedActor().getY() >= this._TransitionYCenter
? d
.getLastCreatedActor()
.setValue('Transition Block Logic', '_Position', 'Bottom Left')
: d
.getLastCreatedActor()
.setValue('Transition Block Logic', '_Position', 'Bottom Right');
d.getLastCreatedActor().say('Transition Block Logic', '_customEvent_Go');
}
this._TransitionColCount = e;
e = 0;
for (f = d.getActorsOfType(d.getActorType(8)); e < f.length; )
(g = f[e]), ++e, null == g || g.dead || g.recycled || g.disableActorDrawing();
e = 0;
for (f = d.getActorsOfType(d.getActorType(4)); e < f.length; )
(g = f[e]), ++e, null == g || g.dead || g.recycled || g.disableActorDrawing();
e = 0;
for (f = d.getActorsOfType(d.getActorType(6)); e < f.length; )
(g = f[e]), ++e, null == g || g.dead || g.recycled || g.disableActorDrawing();
}
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(254));
}
},
_customEvent_wipeOutRight: function () {
var a = this;
this._Actorstoslide = [];
for (var b = 0, c = Math.ceil((d.getScreenHeight() + 10) / 128); b < c; ) {
var e = b++;
d.createRecycledActor(d.getActorType(297), d.getScreenWidth(), 128 * e, 0);
this._Actorstoslide.push(d.getLastCreatedActor());
}
d.createRecycledActor(d.getActorType(283), d.getScreenWidth() + 30, -5, 0);
this._Actorstoslide.push(d.getLastCreatedActor());
d.runLater(
100,
function (b) {
b = 0;
for (var c = x.__cast(a._Actorstoslide, Array); b < c.length; ) {
var e = c[b];
++b;
e.moveBy(-(d.getScreenWidth() + 32), 0, 0.4, J.quadInOut);
}
},
null
);
},
_customEvent_wipeInRight: function () {
var a = this;
this._Actorstoslide = [];
for (var b = 0, c = Math.ceil((d.getScreenHeight() + 10) / 128); b < c; ) {
var e = b++;
d.createRecycledActor(d.getActorType(297), d.getScreenWidth(), 128 * e, 0);
d.getLastCreatedActor().setAnimation('Left');
this._Actorstoslide.push(d.getLastCreatedActor());
}
d.createRecycledActor(d.getActorType(283), -8, -5, 0);
this._Actorstoslide.push(d.getLastCreatedActor());
d.runLater(
100,
function (b) {
b = 0;
for (var c = x.__cast(a._Actorstoslide, Array); b < c.length; ) {
var e = c[b];
++b;
e.moveBy(-(d.getScreenWidth() + 32), 0, 0.4, J.quadInOut);
}
d.runLater(
500,
function (a) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(283)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || d.recycleActor(c);
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(297)); a < b.length; )
(c = b[a]), ++a, null == c || c.dead || c.recycled || d.recycleActor(c);
},
null
);
},
null
);
},
_customEvent_wipeOutLeft: function () {
var a = this;
this._Actorstoslide = [];
for (var b = 0, c = Math.ceil((d.getScreenHeight() + 10) / 128); b < c; ) {
var e = b++;
d.createRecycledActor(d.getActorType(297), -32, 128 * e, 0);
d.getLastCreatedActor().setAnimation('Left');
this._Actorstoslide.push(d.getLastCreatedActor());
}
d.createRecycledActor(d.getActorType(283), -(d.getScreenWidth() + 30) - 8, -5, 0);
this._Actorstoslide.push(d.getLastCreatedActor());
d.runLater(
100,
function (b) {
b = 0;
for (var c = x.__cast(a._Actorstoslide, Array); b < c.length; ) {
var e = c[b];
++b;
e.moveBy(d.getScreenWidth() + 32, 0, 0.4, J.quadInOut);
}
},
null
);
},
_customEvent_wipeInLeft: function () {
var a = this;
this._Actorstoslide = [];
for (var b = 0, c = Math.ceil((d.getScreenHeight() + 10) / 128); b < c; ) {
var e = b++;
d.createRecycledActor(d.getActorType(297), -32, 128 * e, 0);
this._Actorstoslide.push(d.getLastCreatedActor());
}
d.createRecycledActor(d.getActorType(283), -2, -5, 0);
this._Actorstoslide.push(d.getLastCreatedActor());
d.runLater(
100,
function (b) {
b = 0;
for (var c = x.__cast(a._Actorstoslide, Array); b < c.length; ) {
var e = c[b];
++b;
e.moveBy(d.getScreenWidth() + 32, 0, 0.4, J.quadInOut);
}
d.runLater(
500,
function (a) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(283)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || d.recycleActor(c);
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(297)); a < b.length; )
(c = b[a]), ++a, null == c || c.dead || c.recycled || d.recycleActor(c);
},
null
);
},
null
);
},
init: function () {},
forwardMessage: function (a) {},
__class__: gu
});
var hu = function (a, b) {
d.call(this);
this.nameMap.h['Home Button'] = '_HomeButton';
this.nameMap.h['Music Button'] = '_MusicButton';
this.nameMap.h['Sound Button'] = '_SoundButton';
this.nameMap.h['Ads Button'] = '_AdsButton';
this.nameMap.h['Button Pressed'] = '_ButtonPressed';
this._ButtonPressed = !1;
this.nameMap.h['In Position'] = '_InPosition';
this._InPosition = !1;
this.nameMap.h.Overlay = '_Overlay';
this.nameMap.h.Ready = '_Ready';
this._Ready = !1;
this.nameMap.h['Star Count'] = '_StarCount';
this.nameMap.h['Possum Button'] = '_PossumButton';
this.nameMap.h['Show Possum Text'] = '_ShowPossumText';
this._ShowPossumText = !1;
this.nameMap.h.Cursor = '_Cursor';
this.nameMap.h['Timer Button'] = '_TimerButton';
};
h['scripts.Design_138_138_OverworldLogic'] = hu;
hu.__name__ = 'scripts.Design_138_138_OverworldLogic';
hu.__super__ = sa;
hu.prototype = r(sa.prototype, {
_HomeButton: null,
_MusicButton: null,
_SoundButton: null,
_AdsButton: null,
_ButtonPressed: null,
_InPosition: null,
_Overlay: null,
_Ready: null,
_StarCount: null,
_PossumButton: null,
_ShowPossumText: null,
_Cursor: null,
_TimerButton: null,
_event_Updating: function (a) {
var b = this;
if (
this.wrapper.enabled &&
(this._Ready
? ((a = this._Cursor),
(a = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a))
: (a = !1),
a)
) {
a = this._HomeButton;
if (
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._InPosition &&
!this._ButtonPressed &&
(this._HomeButton.isMousePressed() ||
(k.engine.getGameAttribute('Controller Mode') &&
(d.isKeyPressed('enter') || d.isKeyPressed('action1')) &&
this._Cursor.getX() + 24 >= this._HomeButton.getX() &&
this._Cursor.getX() + 24 <
this._HomeButton.getX() + this._HomeButton.getWidth() &&
this._Cursor.getY() + 24 >= this._HomeButton.getY() &&
this._Cursor.getY() + 24 <
this._HomeButton.getY() + this._HomeButton.getHeight()))
) {
this._ButtonPressed = !0;
this._HomeButton.setAnimation('Down');
d.stopAllSounds();
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252));
d.runLater(
300,
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 2);
d.sayToScene('Transitions', '_customEvent_transitionOut');
},
null
);
d.runLater(
2e3,
function (a) {
a = Fa.get().scenes.h[4].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var f = d.createFadeOut(0.3, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, f, d.createFadeIn(0.3, (b << 16) | (c << 8) | e));
},
null
);
a = 0;
for (var c = d.getActorsOfType(d.getActorType(244)); a < c.length; ) {
var e = c[a];
++a;
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
}
a = 0;
for (c = d.getActorsOfType(d.getActorType(248)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(246)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(291)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(527)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, -70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(539)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, 70, 0.2, J.quadOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(622)); a < c.length; )
(e = c[a]),
++a,
null == e || e.dead || e.recycled || e.moveBy(0, 70, 0.2, J.quadOut);
}
a = this._SoundButton;
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._InPosition &&
!this._ButtonPressed &&
(this._SoundButton.isMousePressed() ||
(k.engine.getGameAttribute('Controller Mode') &&
(d.isKeyPressed('enter') || d.isKeyPressed('action1')) &&
this._Cursor.getX() + 24 >= this._SoundButton.getX() &&
this._Cursor.getX() + 24 <
this._SoundButton.getX() + this._SoundButton.getWidth() &&
this._Cursor.getY() + 24 >= this._SoundButton.getY() &&
this._Cursor.getY() + 24 <
this._SoundButton.getY() + this._SoundButton.getHeight())) &&
((this._ButtonPressed = !0),
this._SoundButton.setAnimation('Down'),
k.engine.getGameAttribute('Sound Disabled')
? ((k.engine.gameAttributes.h['Sound Disabled'] = !1), d.setVolumeForChannel(1, 15))
: k.engine.getGameAttribute('Sound Disabled') ||
((k.engine.gameAttributes.h['Sound Disabled'] = !0),
d.setVolumeForChannel(0, 15)),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.saveGame('mySave', function (a) {}),
d.runLater(
200,
function (a) {
b._ButtonPressed = !1;
k.engine.getGameAttribute('Sound Disabled')
? b._SoundButton.setAnimation('Off')
: b._SoundButton.setAnimation('On');
},
null
));
a = this._MusicButton;
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._InPosition &&
!this._ButtonPressed &&
(this._MusicButton.isMousePressed() ||
(k.engine.getGameAttribute('Controller Mode') &&
(d.isKeyPressed('enter') || d.isKeyPressed('action1')) &&
this._Cursor.getX() + 24 >= this._MusicButton.getX() &&
this._Cursor.getX() + 24 <
this._MusicButton.getX() + this._MusicButton.getWidth() &&
this._Cursor.getY() + 24 >= this._MusicButton.getY() &&
this._Cursor.getY() + 24 <
this._MusicButton.getY() + this._MusicButton.getHeight())) &&
((this._ButtonPressed = !0),
this._MusicButton.setAnimation('Down'),
k.engine.getGameAttribute('Music Disabled')
? ((k.engine.gameAttributes.h['Music Disabled'] = !1), d.setVolumeForChannel(1, 16))
: k.engine.getGameAttribute('Music Disabled') ||
((k.engine.gameAttributes.h['Music Disabled'] = !0),
d.setVolumeForChannel(0, 16)),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.saveGame('mySave', function (a) {}),
d.runLater(
200,
function (a) {
b._ButtonPressed = !1;
k.engine.getGameAttribute('Music Disabled')
? b._MusicButton.setAnimation('Off')
: b._MusicButton.setAnimation('On');
},
null
));
a = this._TimerButton;
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._InPosition &&
!this._ButtonPressed &&
(this._TimerButton.isMousePressed() ||
(k.engine.getGameAttribute('Controller Mode') &&
(d.isKeyPressed('enter') || d.isKeyPressed('action1')) &&
this._Cursor.getX() + 24 >= this._TimerButton.getX() &&
this._Cursor.getX() + 24 <
this._TimerButton.getX() + this._TimerButton.getWidth() &&
this._Cursor.getY() + 24 >= this._TimerButton.getY() &&
this._Cursor.getY() + 24 <
this._TimerButton.getY() + this._TimerButton.getHeight())) &&
((this._ButtonPressed = !0),
this._TimerButton.setAnimation('Down'),
k.engine.getGameAttribute('Timer Mode')
? (k.engine.gameAttributes.h['Timer Mode'] = !1)
: k.engine.getGameAttribute('Timer Mode') ||
(k.engine.gameAttributes.h['Timer Mode'] = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.saveGame('mySave', function (a) {}),
d.runLater(
200,
function (a) {
b._ButtonPressed = !1;
k.engine.getGameAttribute('Timer Mode')
? b._TimerButton.setAnimation('On')
: b._TimerButton.setAnimation('Off');
},
null
));
a = this._PossumButton;
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._InPosition &&
!this._ButtonPressed &&
(this._PossumButton.isMousePressed() ||
(k.engine.getGameAttribute('Controller Mode') &&
(d.isKeyPressed('enter') || d.isKeyPressed('action1')) &&
this._Cursor.getX() + 24 >= this._PossumButton.getX() &&
this._Cursor.getX() + 24 <
this._PossumButton.getX() + this._PossumButton.getWidth() &&
this._Cursor.getY() + 24 >= this._PossumButton.getY() &&
this._Cursor.getY() + 24 <
this._PossumButton.getY() + this._PossumButton.getHeight())) &&
((this._ButtonPressed = !0),
'JP' == k.engine.getGameAttribute('Language')
? this._PossumButton.setAnimation('JP Down')
: 'CN' == k.engine.getGameAttribute('Language')
? this._PossumButton.setAnimation('CN Down')
: 'KR' == k.engine.getGameAttribute('Language')
? this._PossumButton.setAnimation('KR Down')
: this._PossumButton.setAnimation('Down'),
k.engine.getGameAttribute('Possum Mode')
? (k.engine.gameAttributes.h['Possum Mode'] = !1)
: k.engine.getGameAttribute('Possum Mode') ||
(k.engine.gameAttributes.h['Possum Mode'] = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
200,
function (a) {
b._ButtonPressed = !1;
k.engine.getGameAttribute('Possum Mode')
? 'JP' == k.engine.getGameAttribute('Language')
? b._PossumButton.setAnimation('JP On')
: 'CN' == k.engine.getGameAttribute('Language')
? b._PossumButton.setAnimation('CN On')
: 'KR' == k.engine.getGameAttribute('Language')
? b._PossumButton.setAnimation('KR On')
: b._PossumButton.setAnimation('On')
: 'JP' == k.engine.getGameAttribute('Language')
? b._PossumButton.setAnimation('JP Off')
: 'CN' == k.engine.getGameAttribute('Language')
? b._PossumButton.setAnimation('CN Off')
: 'KR' == k.engine.getGameAttribute('Language')
? b._PossumButton.setAnimation('KR Off')
: b._PossumButton.setAnimation('Off');
},
null
));
}
},
init: function () {
var a = this;
d.engine.unpause();
d.createRecycledActor(
d.getActorType(589),
d.getScreenWidth() / 2 - 13,
d.getScreenHeight() / 2 - 13,
0
);
this._Cursor = d.getLastCreatedActor();
34 <= k.engine.getGameAttribute('Stars List').length - 1 &&
!k.engine.getGameAttribute('Possum Mode Unlocked') &&
((k.engine.gameAttributes.h['Possum Mode Unlocked'] = !0),
d.saveGame('mySave', function (a) {}));
d.runLater(
500,
function (b) {
a._Ready = !0;
},
null
);
k.engine.getGameAttribute('Start Overworld Music') &&
((k.engine.gameAttributes.h['Start Overworld Music'] = !1),
d.runLater(
300,
function (a) {
d.loopSoundOnChannel(d.getSound(450), 16);
k.engine.getGameAttribute('Music Disabled') && d.setVolumeForChannel(0, 16);
},
null
));
k.engine.getGameAttribute('Wipe In Right')
? ((k.engine.gameAttributes.h['Wipe In Right'] = !1),
d.createRecycledActor(d.getActorType(283), -5, -5, 0),
(this._Overlay = d.getLastCreatedActor()),
d.runLater(
100,
function (b) {
d.sayToScene('Transitions', '_customEvent_wipeInRight');
d.recycleActor(a._Overlay);
},
null
))
: k.engine.getGameAttribute('Wipe In Left')
? ((k.engine.gameAttributes.h['Wipe In Left'] = !1),
d.createRecycledActor(d.getActorType(283), -5, -5, 0),
(this._Overlay = d.getLastCreatedActor()),
d.runLater(
100,
function (b) {
d.sayToScene('Transitions', '_customEvent_wipeInLeft');
d.recycleActor(a._Overlay);
},
null
))
: (d.createRecycledActor(d.getActorType(283), -5, -5, 0),
(this._Overlay = d.getLastCreatedActor()),
d.runLater(
100,
function (b) {
d.setValueForScene('Transitions', '_TransitionType', 1);
d.sayToScene('Transitions', '_customEvent_transitionIn');
d.recycleActor(a._Overlay);
},
null
));
d.createRecycledActor(d.getActorType(291), 18, -50, 0);
this._HomeButton = d.getLastCreatedActor();
this._HomeButton.makeAlwaysSimulate();
this._HomeButton.anchorToScreen();
0 < k.engine.getGameAttribute('Stars List').length - 1 &&
(d.createRecycledActor(d.getActorType(527), 84, -50, 0),
(this._StarCount = d.getLastCreatedActor()));
d.createRecycledActor(d.getActorType(248), d.getScreenWidth() - 66, -50, 0);
this._MusicButton = d.getLastCreatedActor();
this._MusicButton.makeAlwaysSimulate();
this._MusicButton.anchorToScreen();
d.createRecycledActor(d.getActorType(246), d.getScreenWidth() - 122, -50, 0);
this._SoundButton = d.getLastCreatedActor();
this._SoundButton.makeAlwaysSimulate();
this._SoundButton.anchorToScreen();
k.engine.getGameAttribute('Sound Disabled') && this._SoundButton.setAnimation('Off');
k.engine.getGameAttribute('Music Disabled') && this._MusicButton.setAnimation('Off');
40 <= k.engine.getGameAttribute('Highest Level') &&
(d.createRecycledActor(d.getActorType(622), 18, d.getScreenHeight(), 0),
(this._TimerButton = d.getLastCreatedActor()),
this._TimerButton.makeAlwaysSimulate(),
this._TimerButton.anchorToScreen(),
k.engine.getGameAttribute('Timer Mode') || this._TimerButton.setAnimation('Off'));
k.engine.getGameAttribute('Possum Mode Unlocked') &&
(d.createRecycledActor(
d.getActorType(539),
d.getScreenWidth() - 202,
d.getScreenHeight(),
0
),
(this._PossumButton = d.getLastCreatedActor()),
this._PossumButton.makeAlwaysSimulate(),
this._PossumButton.anchorToScreen(),
k.engine.getGameAttribute('Possum Mode') || this._PossumButton.setAnimation('Off'));
d.runLater(
900,
function (b) {
a._HomeButton.moveBy(0, 68, 0.8, J.elasticOut);
b = a._StarCount;
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
d.runLater(
100,
function (b) {
a._StarCount.moveBy(0, 76, 0.8, J.elasticOut);
},
null
);
d.runLater(
200,
function (b) {
a._MusicButton.moveBy(0, 68, 0.8, J.elasticOut);
},
null
);
d.runLater(
300,
function (b) {
a._SoundButton.moveBy(0, 68, 0.8, J.elasticOut);
},
null
);
d.runLater(
400,
function (b) {
b = a._AdsButton;
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
a._AdsButton.moveBy(0, 68, 0.8, J.elasticOut);
},
null
);
d.runLater(
500,
function (b) {
b = a._PossumButton;
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
a._PossumButton.moveBy(0, -68, 0.8, J.elasticOut);
b = a._TimerButton;
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
a._TimerButton.moveBy(0, -68, 0.8, J.elasticOut);
},
null
);
d.runLater(
1220,
function (b) {
a._InPosition = !0;
},
null
);
},
null
);
this._Cursor.moveToTop();
D.mapJoystickButton('0', 'action1');
D.mapJoystickButton('1', 'action1');
D.mapJoystickButton('2', 'action1');
D.mapJoystickButton('3', 'action1');
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: hu
});
var iu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Object To Rotate'] = '_ObjectToRotate';
this.nameMap.h['Chain Length'] = '_ChainLength';
this._ChainLength = 2;
this.nameMap.h.Speed = '_Speed';
this._Speed = 6;
this.nameMap.h['Object Width'] = '_ObjectWidth';
this._ObjectWidth = 0;
this.nameMap.h['Object Height'] = '_ObjectHeight';
this._ObjectHeight = 0;
this.nameMap.h['Object List'] = '_ObjectList';
this.nameMap.h['Alternate Spikes'] = '_AlternateSpikes';
this._AlternateSpikes = !1;
};
h['scripts.Design_14_14_RotatorLogic'] = iu;
iu.__name__ = 'scripts.Design_14_14_RotatorLogic';
iu.__super__ = u;
iu.prototype = r(u.prototype, {
_ObjectToRotate: null,
_ChainLength: null,
_Speed: null,
_ObjectWidth: null,
_ObjectHeight: null,
_ObjectList: null,
_AlternateSpikes: null,
init: function () {
this.actor.makeAlwaysSimulate();
var a = this._ObjectToRotate;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) {
this._ObjectList = [];
d.createRecycledActor(this._ObjectToRotate, -500, -500, 0);
d.getLastCreatedActor().makeAlwaysSimulate();
this._ObjectWidth = d.getLastCreatedActor().getWidth();
this._ObjectHeight = d.getLastCreatedActor().getHeight();
d.recycleActor(d.getLastCreatedActor());
a = 0;
for (var b = this._ChainLength | 0; a < b; ) {
var c = a++;
d.createRecycledActorOnLayer(
d.getActorType(26),
this.actor.getXCenter() - 6,
this.actor.getYCenter() - 16 * (c + 1) - 6,
d.engine.getLayerById(this.actor.getLayerID())
);
this._ObjectList.push(d.getLastCreatedActor());
d.createRecycledActorOnLayer(
d.getActorType(26),
this.actor.getXCenter() - 6,
this.actor.getYCenter() + 16 * (c + 1) - 6,
d.engine.getLayerById(this.actor.getLayerID())
);
this._ObjectList.push(d.getLastCreatedActor());
d.createRecycledActorOnLayer(
d.getActorType(26),
this.actor.getXCenter() - 16 * (c + 1) - 6,
this.actor.getYCenter() - 6,
d.engine.getLayerById(this.actor.getLayerID())
);
this._ObjectList.push(d.getLastCreatedActor());
d.createRecycledActorOnLayer(
d.getActorType(26),
this.actor.getXCenter() + 16 * (c + 1) - 6,
this.actor.getYCenter() - 6,
d.engine.getLayerById(this.actor.getLayerID())
);
this._ObjectList.push(d.getLastCreatedActor());
}
d.createRecycledActorOnLayer(
this._ObjectToRotate,
this.actor.getXCenter() - this._ObjectWidth / 2,
this.actor.getYCenter() - 16 * (this._ChainLength + 1) - this._ObjectHeight / 2,
d.engine.getLayerById(this.actor.getLayerID())
);
this._ObjectList.push(d.getLastCreatedActor());
d.createRecycledActorOnLayer(
this._ObjectToRotate,
this.actor.getXCenter() - this._ObjectWidth / 2,
this.actor.getYCenter() + 16 * (this._ChainLength + 1) - this._ObjectHeight / 2,
d.engine.getLayerById(this.actor.getLayerID())
);
this._ObjectList.push(d.getLastCreatedActor());
this._AlternateSpikes
? d.createRecycledActorOnLayer(
d.getActorType(42),
this.actor.getXCenter() - 16 * (this._ChainLength + 1) - 17,
this.actor.getYCenter() - 17,
d.engine.getLayerById(this.actor.getLayerID())
)
: d.createRecycledActorOnLayer(
this._ObjectToRotate,
this.actor.getXCenter() - 16 * (this._ChainLength + 1) - this._ObjectWidth / 2,
this.actor.getYCenter() - this._ObjectHeight / 2,
d.engine.getLayerById(this.actor.getLayerID())
);
this._ObjectList.push(d.getLastCreatedActor());
this._AlternateSpikes
? d.createRecycledActorOnLayer(
d.getActorType(42),
this.actor.getXCenter() + 16 * (this._ChainLength + 1) - 17,
this.actor.getYCenter() - 17,
d.engine.getLayerById(this.actor.getLayerID())
)
: d.createRecycledActorOnLayer(
this._ObjectToRotate,
this.actor.getXCenter() + 16 * (this._ChainLength + 1) - this._ObjectWidth / 2,
this.actor.getYCenter() - this._ObjectHeight / 2,
d.engine.getLayerById(this.actor.getLayerID())
);
this._ObjectList.push(d.getLastCreatedActor());
a = 0;
for (b = x.__cast(this._ObjectList, Array); a < b.length; )
(c = b[a]),
++a,
c.setValue('Rotator Object', '_OriginActor', this.actor),
c.setValue('Rotator Object', '_Speed', this._Speed),
c.say('Rotator Object', '_customEvent_Initialize');
}
},
forwardMessage: function (a) {},
__class__: iu
});
var ju = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Distance X'] = '_DistanceX';
this._DistanceX = 0;
this.nameMap.h['Distance Y'] = '_DistanceY';
this._DistanceY = 0;
this.nameMap.h.Direction = '_Direction';
this._Direction = 0;
this.nameMap.h.Distance = '_Distance';
this._Distance = 0;
this.nameMap.h.Speed = '_Speed';
this._Speed = 10;
this.nameMap.h.Facing = '_Facing';
this._Facing = 0;
this.nameMap.h['Point Away'] = '_PointAway';
this._PointAway = !0;
this.nameMap.h['Origin Actor'] = '_OriginActor';
this.nameMap.h['Step Seconds'] = '_StepSeconds';
this._StepSeconds = 0;
this.nameMap.h['New Distance'] = '_NewDistance';
this._NewDistance = 0;
this.nameMap.h['Distance Threshold'] = '_DistanceThreshold';
this._DistanceThreshold = 10;
this.nameMap.h['Fixed Radius'] = '_FixedRadius';
this._FixedRadius = !0;
};
h['scripts.Design_16_16_RotateAroundActor'] = ju;
ju.__name__ = 'scripts.Design_16_16_RotateAroundActor';
ju.__super__ = u;
ju.prototype = r(u.prototype, {
_DistanceX: null,
_DistanceY: null,
_Direction: null,
_Distance: null,
_Speed: null,
_Facing: null,
_PointAway: null,
_OriginActor: null,
_StepSeconds: null,
_NewDistance: null,
_DistanceThreshold: null,
_FixedRadius: null,
_event_Updated: function (a) {
this.wrapper.enabled &&
((a = this._OriginActor),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._OriginActor.isAlive() &&
(this._FixedRadius ||
((this._DistanceX = this.actor.getXCenter() - this._OriginActor.getXCenter()),
(this._DistanceY = this.actor.getYCenter() - this._OriginActor.getYCenter()),
(this._NewDistance = Math.sqrt(
Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)
)),
Math.abs(this._NewDistance - this._Distance) > this._DistanceThreshold &&
((this._Distance = this._NewDistance),
(this._Direction = Math.atan2(this._DistanceY, this._DistanceX)))),
(this._Direction =
(this._Direction += 0.01745329251994278 * this._Speed * this._StepSeconds) -
2 * Math.PI * Math.floor(this._Direction / (2 * Math.PI))),
this.actor.setX(
this._OriginActor.getXCenter() +
this._Distance * Math.cos(this._Direction) -
this.actor.getWidth() / 2
),
this.actor.setY(
this._OriginActor.getYCenter() +
this._Distance * Math.sin(this._Direction) -
this.actor.getHeight() / 2
),
this._PointAway &&
this.actor.setAngle(
0.01745329251994278 * (57.29577951308402 * this._Direction - this._Facing)
)));
},
_event_ActorAny: function (a) {
this.wrapper.enabled && (this._Speed = -this._Speed);
},
_event_Drawing: function (a, b, c) {
if (
this.wrapper.enabled &&
(d.sceneHasBehavior('Game Debugger')
? ((b = d.getValueForScene('Game Debugger', '_Enabled')),
(b = 1 == b ? !0 : 'true' == b))
: (b = !1),
b &&
((b = this._OriginActor),
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
this._OriginActor.isAlive()))
) {
a.strokeColor = d.getValueForScene('Game Debugger', '_CustomColor');
b = d.getValueForScene('Game Debugger', '_StrokeThickness');
a.strokeSize =
(null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b))) | 0;
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
b = this._OriginActor.getXCenter();
c = this._OriginActor.getYCenter();
var e = this._Distance;
b *= a.scaleX;
c *= a.scaleY;
e *= a.scaleX;
!a.drawActor ||
(null != a.actor && a.actor.isHUD) ||
((a.x -= k.cameraX), (a.y -= k.cameraY));
0 == a.strokeSize
? a.graphics.lineStyle()
: a.graphics.lineStyle(a.strokeSize * k.SCALE, a.strokeColor, a.alpha);
a.graphics.drawCircle(a.x + b, a.y + c, e);
a.drawActor && !a.actor.isHUD && ((a.x += k.cameraX), (a.y += k.cameraY));
a.graphics.lineStyle();
b = this._OriginActor.getXCenter();
c = this._OriginActor.getYCenter();
e = this.actor.getXCenter();
var f = this.actor.getYCenter();
b *= a.scaleX;
c *= a.scaleY;
e *= a.scaleX;
f *= a.scaleY;
!a.drawActor ||
(null != a.actor && a.actor.isHUD) ||
((a.x -= k.cameraX), (a.y -= k.cameraY));
0 == a.strokeSize
? a.graphics.lineStyle()
: a.graphics.lineStyle(a.strokeSize * k.SCALE, a.strokeColor, a.alpha);
a.graphics.moveTo(a.x + b, a.y + c);
a.graphics.lineTo(a.x + e, a.y + f);
a.drawActor && !a.actor.isHUD && ((a.x += k.cameraX), (a.y += k.cameraY));
a.graphics.lineStyle();
}
},
_customEvent_Initialize: function () {
var a = this._OriginActor;
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._OriginActor.isAlive() &&
((this._DistanceX = this.actor.getXCenter() - this._OriginActor.getXCenter()),
(this._DistanceY = this.actor.getYCenter() - this._OriginActor.getYCenter()),
(this._Distance = Math.sqrt(
Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)
)),
(this._Direction = Math.atan2(this._DistanceY, this._DistanceX)));
},
init: function () {
this._StepSeconds = d.getStepSize() / 1e3;
this._customEvent_Initialize();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated));
this.addListener(this.actor.whenCollided, q(this, this._event_ActorAny));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
},
forwardMessage: function (a) {},
__class__: ju
});
var ku = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h['Can Make Noise'] = '_CanMakeNoise';
this._CanMakeNoise = !1;
this.nameMap.h['Face Left'] = '_FaceLeft';
this._FaceLeft = !0;
this.nameMap.h.Speed = '_Speed';
this._Speed = 12;
this.nameMap.h.Fall = '_Fall';
this._Fall = !1;
this.nameMap.h['No Gravity'] = '_NoGravity';
this._NoGravity = !1;
this.nameMap.h.Health = '_Health';
this._Health = 3;
this.nameMap.h.Hurt = '_Hurt';
this._Hurt = !1;
this.nameMap.h.Dead = '_Dead';
this._Dead = !1;
this.nameMap.h['Starting Y'] = '_StartingY';
this._StartingY = 0;
this.nameMap.h['Ground Amnesty'] = '_GroundAmnesty';
this._GroundAmnesty = 0;
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Ready To Talk'] = '_ReadyToTalk';
this._ReadyToTalk = !1;
this.nameMap.h['Has Entered'] = '_HasEntered';
this._HasEntered = !1;
this.nameMap.h['Dialog Complete'] = '_DialogComplete';
this._DialogComplete = !1;
this.nameMap.h['Dialog Text'] = '_DialogText';
this._DialogText = 'DEFAULT';
};
h['scripts.Design_188_188_Boss1Logic'] = ku;
ku.__name__ = 'scripts.Design_188_188_Boss1Logic';
ku.__super__ = u;
ku.prototype = r(u.prototype, {
_GravitySpeed: null,
_OnGround: null,
_GroundCheck: null,
_CanMakeNoise: null,
_FaceLeft: null,
_Speed: null,
_Fall: null,
_NoGravity: null,
_Health: null,
_Hurt: null,
_Dead: null,
_StartingY: null,
_GroundAmnesty: null,
_Go: null,
_Dude: null,
_ReadyToTalk: null,
_HasEntered: null,
_DialogComplete: null,
_DialogText: null,
_event_HitsGround: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b && a.thisFromBottom && ((this._GroundCheck = !0), (this._GroundAmnesty = 4));
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled && (this._OnGround || --this._GroundAmnesty);
},
_event_HitsHazard: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorGroup(4);
var e = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == e || c == a;
} else c = !1;
if (c)
if (this._Hurt) this.actor.setYVelocity(-100);
else if (
((this._Hurt = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(378)),
this.actor.setFilter([d.createBrightnessFilter(100)]),
d.runLater(
200,
function (a) {
b.actor.clearFilters();
},
this.actor
),
--this._Health,
0 == this._Health)
) {
this._Dead = !0;
d.stopSoundOnChannel(16);
c = 0;
for (e = d.getActorsOfType(d.getActorType(353)); c < e.length; )
(a = e[c]),
++c,
null == a ||
a.dead ||
a.recycled ||
(a.moveBy(0, 32, 0.3, J.quadInOut), a.setValue('Button Logic', '_Hide', !0));
this._GravitySpeed = 24;
this.actor.setYVelocity(-120);
}
},
_event_GroundandGravity: function (a) {
if (this.wrapper.enabled) {
if (this._GroundCheck) {
if (this._Hurt) {
this._Hurt = this._Fall = !1;
a = 0;
for (var b = d.getActorsOfType(d.getActorType(353)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.setValue('Button Logic', '_Disable', !1);
}
this._FaceLeft ? this.actor.setAnimation('Left') : this.actor.setAnimation('Right');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
a = 0;
for (b = d.getActorsOfType(d.getActorType(2)); a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
(this.actor.getXCenter() > c.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
d.startShakingScreen(0.006999999999999999, 0.15);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
this._Dead &&
(d.createRecycledActorOnLayer(
d.getActorType(28),
this.actor.getXCenter() - 16,
this.actor.getYCenter() - 16,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(0, -128, 0.6, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(359),
this.actor.getX(),
this.actor.getY() - 12,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(0, 12, 0.3, J.quadIn),
this._FaceLeft
? (d.getLastCreatedActor().setAnimation('Left'),
d.createRecycledActorOnLayer(
d.getActorType(365),
this.actor.getX() + 10,
this.actor.getY() + 42,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('Left'),
d.getLastCreatedActor().setYVelocity(-80),
d.createRecycledActorOnLayer(
d.getActorType(363),
this.actor.getX() + 38,
this.actor.getY() + 16,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('Left'),
d.getLastCreatedActor().setYVelocity(-90),
d.createRecycledActorOnLayer(
d.getActorType(361),
this.actor.getX() + 12,
this.actor.getY() + 70,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('Left'),
d.getLastCreatedActor().setYVelocity(-70),
d.getLastCreatedActor().moveToBottom(),
d.createRecycledActorOnLayer(
d.getActorType(361),
this.actor.getX() + 46,
this.actor.getY() + 70,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('Left'),
d.getLastCreatedActor().setYVelocity(-70))
: (d.createRecycledActorOnLayer(
d.getActorType(365),
this.actor.getX() + 8,
this.actor.getY() + 42,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setYVelocity(-80),
d.createRecycledActorOnLayer(
d.getActorType(363),
this.actor.getX() + 38,
this.actor.getY() + 16,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setYVelocity(-90),
d.createRecycledActorOnLayer(
d.getActorType(361),
this.actor.getX() + 14,
this.actor.getY() + 70,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setYVelocity(-70),
d.createRecycledActorOnLayer(
d.getActorType(361),
this.actor.getX() + 48,
this.actor.getY() + 70,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setYVelocity(-70),
d.getLastCreatedActor().moveToBottom()),
d.recycleActor(this.actor));
}
this._OnGround ||
((this._OnGround = !0),
this.actor.setYVelocity(0),
this._CanMakeNoise
? k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(117))
: (this._CanMakeNoise = !0));
} else this._OnGround && 0 == this._GroundAmnesty && (this._OnGround = !1);
this._GroundCheck = !1;
this._Fall &&
!this._NoGravity &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
this._Fall ||
this._Hurt ||
this._Dead ||
(this.actor.getY() < this._StartingY && this.actor.setY(this._StartingY));
}
},
_event_Movement: function (a) {
var b = this;
if (this.wrapper.enabled) {
a = this._Dude;
if (
!d.isPrimitive(a) &&
('string' == typeof a ? '' == x.__cast(a, String) : null == a)
) {
a = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); a < c.length; ) {
var e = c[a];
++a;
null == e || e.dead || e.recycled || (this._Dude = e);
}
}
if (this._Go) {
this._Fall || this._Hurt || this._Dead
? this.actor.setXVelocity(0)
: (this._FaceLeft &&
d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 32)) / 32),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
) &&
7 <
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 32)) / 32),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
)
? ((this._FaceLeft = !1),
this.actor.setAnimation('Turn'),
d.runLater(
80,
function (a) {
b.actor.setAnimation('Right');
},
this.actor
))
: !this._FaceLeft &&
d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 32)) / 32),
Math.ceil((this.actor.getX() + this.actor.getWidth()) / 32) - 1,
d.engine.getLayerById(0)
) &&
7 <
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 32)) / 32),
Math.ceil((this.actor.getX() + this.actor.getWidth()) / 32) - 1,
d.engine.getLayerById(0)
) &&
((this._FaceLeft = !0),
this.actor.setAnimation('Turn'),
d.runLater(
80,
function (a) {
b.actor.setAnimation('Left');
},
this.actor
)),
this._FaceLeft
? this.actor.setXVelocity(-this._Speed)
: this.actor.setXVelocity(this._Speed));
a = 0;
for (c = d.getActorsOfType(d.getActorType(40)); a < c.length; )
if (
((e = c[a]),
++a,
null != e &&
!e.dead &&
!e.recycled &&
e.getValue('Button Block Logic', '_BossHoleSensor') &&
this.actor.getX() >= e.getX() - 1 &&
this.actor.getX() <= e.getX() + 1 &&
'Open' == e.getAnimation())
) {
this.actor.setX(e.getX());
this.actor.setXVelocity(0);
e = 0;
for (var f = d.getActorsOfType(d.getActorType(353)); e < f.length; ) {
var g = f[e];
++e;
null == g || g.dead || g.recycled || g.setValue('Button Logic', '_Disable', !0);
}
this._Fall ||
(this.actor.setYVelocity(0),
this._FaceLeft
? this.actor.setAnimation('Left Fall')
: this.actor.setAnimation('Right Fall'),
(this._NoGravity = this._Fall = !0),
d.runLater(
400,
function (a) {
b._FaceLeft
? b.actor.setAnimation('Left Fall 2')
: b.actor.setAnimation('Right Fall 2');
},
this.actor
),
d.runLater(
500,
function (a) {
b._NoGravity = !1;
b.actor.setYVelocity(100);
},
this.actor
),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(373)));
}
if (this._Hurt && this.actor.getY() < this._StartingY)
for (a = 0, c = d.getActorsOfType(d.getActorType(40)); a < c.length; )
(e = c[a]),
++a,
null == e ||
e.dead ||
e.recycled ||
e.say('Button Block Logic', '_customEvent_Reset');
}
this._ReadyToTalk &&
(k.engine.getGameAttribute('Boss 1 Dialog Read')
? ((this._ReadyToTalk = !1), this.actor.shout('_customEvent_dialogComplete'))
: ((a = this._Dude),
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getValue('Dude Logic', '_OnGround') &&
((this._ReadyToTalk = !1),
this._DialogComplete ||
((this._DialogComplete = !0),
d.stopSoundOnChannel(16),
d.createRecycledActor(d.getActorType(161), 0, d.getScreenHeight() - 96, 0),
'JP' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*\u30ae\u30e3\u30fc*|\u3042\u3042\u3001\u306a\u3093\u3066\u3053\u3063\u305f\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\u3042\u3001\u3053\u3093\u306b\u3061\u306f\uff01\u3042\u306a\u305f\u306e\u540d\u524d\u306f\u4f55\u3067\u3059\u304b\uff1f|\u79c1\u306f\u30d0\u30fc\u30ac\u30fc\u30b0\u30e9\u30fc\u3001\u30c0\u30fc\u30ca\u30c3\u30af\u537f\u306e\u7b2c3\u306e\u5b50\u5206\u3067\u3059\uff01|\u306a\u3093\u3066\u7d20\u6575\u306a\u540d\u524d\u3067\u3059\uff01\u3053\u3093\u306b\u3061\u306f\u30d0\u30fc\u30ac\u30fc\u30b0\u30e9\u30fc\u3001\u79c1\u306f\u30c0\u30c7\u30a3\u30c3\u30b7\u30e5\u3067\u3059\uff01\u79c1\u306f\u5b9f\u306f\u79c1\u306e\u5b50\u4f9b\u305f\u3061\u3092\u63a2\u3057\u3066\u3044\u307e\u3059\u3001\u3042\u306a\u305f\u306f\u305f\u307e\u305f\u307e\u3053\u3053\u3067\u5c0f\u3055\u306a\u30e9\u30c7\u30c3\u30b7\u30e5\u3092\u898b\u305f\u3053\u3068\u304c\u3042\u308a\u307e\u305b\u3093\u304b\uff1f|\u3042\u306a\u305f\u306f\u30c0\u30fc\u30ca\u30c3\u30af\u537f\u306b\u6c7a\u3057\u3066\u5c4a\u304b\u306a\u3044\u3067\u3057\u3087\u3046\uff01\u6b7b\u306c\u6e96\u5099\u3092\u3057\u306a\u3055\u3044\uff01|\u305d\u308c\u3067\u3001\u3048\u3048\u3068\u3001\u305d\u308c\u306f\u3044\u3044\u3048\u3067\u3059\u304b\uff1f'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: 'CN' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*SCREECH*|\u54e6\u5929\u54ea\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\u54e6\uff0c\u4f60\u597d\uff01\u4f60\u53eb\u4ec0\u4e48\u540d\u5b57\uff1f|\u6211\u662fBURGURGULAR\uff0c\u675c\u7eb3\u514b\u52cb\u7235\u7684\u7b2c\u4e09\u4e2a\u968f\u4ece\uff01|\u591a\u597d\u7684\u540d\u5b57\u554a\uff01\u55e8\uff0cBurgurgular\uff0c\u6211\u662f\u7238\u7238\u841d\u535c\uff01\u6211\u5b9e\u9645\u4e0a\u662f\u5728\u5bfb\u627e\u6211\u7684\u5b69\u5b50\uff0c\u4f60\u6ca1\u6709\u5728\u8fd9\u91cc\u78b0\u5230\u4efb\u4f55\u5c0f\u841d\u535c\u5417\uff1f|\u4f60\u6c38\u8fdc\u4e0d\u4f1a\u8d76\u4e0a\u675c\u7eb3\u514b\u52cb\u7235\uff01\u51c6\u5907\u53bb\u6b7b\uff01|\u90a3\u4e48\uff0c\u5443\uff0c\u53ef\u4ee5\u8bf4\u4e0d\u5417\uff1f'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: 'KR' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*\uaf64\uc561*|\uc5b4 \uc774\ub7f0.'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\uc548\ub155\ud558\uc138\uc694! \uc774\ub984\uc774 \uc5b4\ub5bb\uac8c \ub418\uc138\uc694?|\ub09c \uc704\ub300\ud558\uc2e0 \ub354\ub098\ud06c\ub2d8\uc758 \uc138 \ubc88\uc9f8 \uc218\ud558, \ubc84\uac70\uae00\ub7ec\ub2e4!|\uba4b\uc9c4 \uc774\ub984\uc774\ub124\uc694! \uc548\ub155\ud558\uc138\uc694 \ubc84\uac70\uae00\ub7ec\uc528, \uc804 \ub300\ub514\uc26c\uc5d0\uc694! \uc804 \uc0ac\uc2e4 \uc81c \uc544\uc774\ub4e4\uc744 \ucc3e\uace0 \uc788\uc5b4\uc694. \uc8fc\ubcc0\uc5d0\uc11c \ub354 \uc791\uc740 \ubb34\ub97c \ubcf8 \uc801 \uc5c6\uc73c\uc2dc\uaca0\uc8e0?|\ub10c \uc808\ub300 \ub354\ub098\ud06c\ub2d8\uaed8 \uac08 \uc218 \uc5c6\ub2e4! \uc8fd\uc744 \uc900\ube44\ub97c \ud574\ub77c!|\uc5b4, \ubabb \ubcf4\uc168\ub2e4\ub294 \uac70\uc8e0?'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_DialogText', '*SCREECH*|Oh my gosh'),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
"Oh, hello! What's your name?|I AM BURGURGULAR, THIRD HENCHMAN TO LORD DURNAK!|What a nice name! Hi Burgurgular, I'm Dadish! I'm actually looking for my kids, you haven't happened to have seen any smaller radishes around here have you?|YOU WILL NEVER REACH LORD DURNAK! PREPARE TO DIE!|So, uh, is that a no?"
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish')),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_Character2', 'Boss 1'),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_Parent', this.actor),
d.getLastCreatedActor().say('Dialog Box Logic', '_customEvent_Go')))));
}
},
_event_EntersScreen: function (a, b, c, e) {
var f = this;
this.wrapper.enabled &&
a &&
!this._HasEntered &&
!this._Go &&
((this._HasEntered = !0),
d.runLater(
700,
function (a) {
f._ReadyToTalk = !0;
},
this.actor
));
},
_event_HitsBlock: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(40);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b && a.thisFromBottom && (this._GroundCheck = !0);
},
_customEvent_dialogComplete: function () {
var a = this;
d.runLater(
200,
function (b) {
a._Go = !0;
k.engine.gameAttributes.h['Boss 1 Dialog Read'] = !0;
a.actor.setAnimation('Left');
d.loopSoundOnChannel(d.getSound(377), 16);
k.engine.getGameAttribute('Music Disabled')
? d.setVolumeForChannel(0, 16)
: k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16);
},
this.actor
);
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this._GroundCheck = this._OnGround = !0;
this._StartingY = this.actor.getY();
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHazard));
this.addListener(this.actor.whenUpdated, q(this, this._event_GroundandGravity));
this.addListener(this.actor.whenUpdated, q(this, this._event_Movement));
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_EntersScreen));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsBlock));
},
forwardMessage: function (a) {},
__class__: ku
});
var lu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Step Seconds'] = '_StepSeconds';
this._StepSeconds = 0;
this.nameMap.h['Distance X'] = '_DistanceX';
this._DistanceX = 0;
this.nameMap.h['Distance Y'] = '_DistanceY';
this._DistanceY = 0;
this.nameMap.h.Distance = '_Distance';
this._Distance = 0;
this.nameMap.h.Direction = '_Direction';
this._Direction = 0;
this.nameMap.h['Origin Actor'] = '_OriginActor';
this.nameMap.h['New Distance'] = '_NewDistance';
this._NewDistance = 0;
this.nameMap.h['Distance Threshold'] = '_DistanceThreshold';
this._DistanceThreshold = 10;
this.nameMap.h['Fixed Radius'] = '_FixedRadius';
this._FixedRadius = !0;
this.nameMap.h.Speed = '_Speed';
this._Speed = 10;
this.nameMap.h.Facing = '_Facing';
this._Facing = 0;
this.nameMap.h['Point Away'] = '_PointAway';
this._PointAway = !0;
this.nameMap.h.ActualX = '_ActualX';
this._ActualX = 0;
this.nameMap.h.ActualY = '_ActualY';
this._ActualY = 0;
this.nameMap.h['Speed Tracker'] = '_SpeedTracker';
this.nameMap.h['Tracker X Speed'] = '_TrackerXSpeed';
this._TrackerXSpeed = 0;
};
h['scripts.Design_18_18_RotatorObject'] = lu;
lu.__name__ = 'scripts.Design_18_18_RotatorObject';
lu.__super__ = u;
lu.prototype = r(u.prototype, {
_StepSeconds: null,
_DistanceX: null,
_DistanceY: null,
_Distance: null,
_Direction: null,
_OriginActor: null,
_NewDistance: null,
_DistanceThreshold: null,
_FixedRadius: null,
_Speed: null,
_Facing: null,
_PointAway: null,
_ActualX: null,
_ActualY: null,
_SpeedTracker: null,
_TrackerXSpeed: null,
_event_Updated: function (a) {
this.wrapper.enabled &&
((a = this._OriginActor),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._OriginActor.isAlive() &&
(this._FixedRadius ||
((this._DistanceX = this.actor.getXCenter() - this._OriginActor.getXCenter()),
(this._DistanceY = this.actor.getYCenter() - this._OriginActor.getYCenter()),
(this._NewDistance = Math.sqrt(
Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)
)),
Math.abs(this._NewDistance - this._Distance) > this._DistanceThreshold &&
((this._Distance = this._NewDistance),
(this._Direction = Math.atan2(this._DistanceY, this._DistanceX)))),
(this._Direction =
(this._Direction += 0.01745329251994278 * this._Speed * this._StepSeconds) -
2 * Math.PI * Math.floor(this._Direction / (2 * Math.PI))),
(this._ActualX =
this._OriginActor.getXCenter() +
this._Distance * Math.cos(this._Direction) -
this.actor.getWidth() / 2),
(this._ActualY =
this._OriginActor.getYCenter() +
this._Distance * Math.sin(this._Direction) -
this.actor.getHeight() / 2),
this.actor.setX(this._ActualX),
this.actor.setY(this._ActualY)));
},
_event_Updating: function (a) {
this.wrapper.enabled &&
((a = this._SpeedTracker),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
(this._TrackerXSpeed = this._SpeedTracker.getXVelocity());
},
_customEvent_Initialize: function () {
this.actor.makeAlwaysSimulate();
var a = this._OriginActor;
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._OriginActor.isAlive() &&
((this._DistanceX = this.actor.getXCenter() - this._OriginActor.getXCenter()),
(this._DistanceY = this.actor.getYCenter() - this._OriginActor.getYCenter()),
(this._Distance = Math.sqrt(
Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)
)),
(this._Direction = Math.atan2(this._DistanceY, this._DistanceX)));
},
init: function () {
this._StepSeconds = d.getStepSize() / 1e3;
this.actor.getGroup() == d.getActorGroup(5) &&
(d.createRecycledActor(
d.getActorType(64),
this.actor.getXCenter(),
this.actor.getYCenter(),
0
),
(this._SpeedTracker = d.getLastCreatedActor()),
this._SpeedTracker.disableActorDrawing(),
this._SpeedTracker.setValue('Follow Target', '_TargetActor', this.actor));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: lu
});
var mu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h['Can Make Noise'] = '_CanMakeNoise';
this._CanMakeNoise = !1;
this.nameMap.h['Face Left'] = '_FaceLeft';
this._FaceLeft = !0;
this.nameMap.h.Speed = '_Speed';
this._Speed = 12;
this.nameMap.h.Fall = '_Fall';
this._Fall = !1;
this.nameMap.h['No Gravity'] = '_NoGravity';
this._NoGravity = !1;
this.nameMap.h.Health = '_Health';
this._Health = 4;
this.nameMap.h.Hurt = '_Hurt';
this._Hurt = !1;
this.nameMap.h.Dead = '_Dead';
this._Dead = !1;
this.nameMap.h['Starting Y'] = '_StartingY';
this._StartingY = 0;
this.nameMap.h['Ground Amnesty'] = '_GroundAmnesty';
this._GroundAmnesty = 0;
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Ready To Talk'] = '_ReadyToTalk';
this._ReadyToTalk = !1;
this.nameMap.h['Has Entered'] = '_HasEntered';
this._HasEntered = !1;
this.nameMap.h['Dialog Complete'] = '_DialogComplete';
this._DialogComplete = !1;
this.nameMap.h['Dialog Text'] = '_DialogText';
this._DialogText = 'DEFAULT';
this.nameMap.h['Can Bounce'] = '_CanBounce';
this._CanBounce = !1;
};
h['scripts.Design_205_205_Boss2Logic'] = mu;
mu.__name__ = 'scripts.Design_205_205_Boss2Logic';
mu.__super__ = u;
mu.prototype = r(u.prototype, {
_GravitySpeed: null,
_OnGround: null,
_GroundCheck: null,
_CanMakeNoise: null,
_FaceLeft: null,
_Speed: null,
_Fall: null,
_NoGravity: null,
_Health: null,
_Hurt: null,
_Dead: null,
_StartingY: null,
_GroundAmnesty: null,
_Go: null,
_Dude: null,
_ReadyToTalk: null,
_HasEntered: null,
_DialogComplete: null,
_DialogText: null,
_CanBounce: null,
_event_HitsGround: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorGroup(1);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
this._Go &&
(this._Dead
? (d.createRecycledActorOnLayer(
d.getActorType(385),
this.actor.getX(),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105)),
d.startShakingScreen(0.006999999999999999, 0.15),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() / 2 - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('Dirt'),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() - 8,
this.actor.getY() + this.actor.getHeight() / 2 - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('Dirt'),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getY() + this.actor.getHeight() / 2 - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('Dirt'),
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut),
d.recycleActor(this.actor))
: (a.thisFromBottom && ((this._GroundCheck = !0), (this._GroundAmnesty = 4)),
a.thisFromLeft &&
((this._FaceLeft = !1),
this.actor.setAnimation('Turn'),
this.actor.setXVelocity(this._Speed),
d.runLater(
200,
function (a) {
b.actor.setAnimation('Right');
},
this.actor
)),
a.thisFromRight &&
((this._FaceLeft = !0),
this.actor.setAnimation('Turn'),
this.actor.setXVelocity(-this._Speed),
d.runLater(
200,
function (a) {
b.actor.setAnimation('Left');
},
this.actor
))));
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled && (this._OnGround || --this._GroundAmnesty);
},
_event_HitsHazard: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorGroup(4);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
if (
c &&
!this._Hurt &&
((this._Hurt = !0),
(this._Speed *= 1.3),
a.otherActor.getType() == d.getActorType(211) &&
a.otherActor.shout('_customEvent_Destroy'),
this.actor.setXVelocity(0),
this.actor.setYVelocity(0),
(this._NoGravity = !0),
--this._Health,
this.actor.setFilter([d.createBrightnessFilter(100)]),
d.runLater(
200,
function (a) {
b.actor.clearFilters();
},
this.actor
),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(378)),
0 < this._Health &&
(d.runLater(
400,
function (a) {
b._NoGravity = !1;
},
this.actor
),
this._FaceLeft
? this.actor.setAnimation('Left Hurt')
: this.actor.setAnimation('Right Hurt')),
0 == this._Health)
) {
d.runLater(
200,
function (a) {
b.actor.setAnimation('Dead Spin');
},
this.actor
);
d.runLater(
600,
function (a) {
b._NoGravity = !1;
},
this.actor
);
this._Dead = !0;
d.stopSoundOnChannel(16);
a = 0;
for (c = d.getActorsOfType(d.getActorType(353)); a < c.length; )
(e = c[a]),
++a,
null == e ||
e.dead ||
e.recycled ||
(e.moveBy(0, 32, 0.3, J.quadInOut), e.setValue('Button Logic', '_Hide', !0));
a = 0;
for (c = d.getActorsOfType(d.getActorType(208)); a < c.length; )
(e = c[a]),
++a,
null == e ||
e.dead ||
e.recycled ||
(e.moveBy(-32, 0, 0.3, J.quadInOut), e.setValue('Button Logic', '_Hide', !0));
a = 0;
for (c = d.getActorsOfType(d.getActorType(213)); a < c.length; )
(e = c[a]),
++a,
null == e ||
e.dead ||
e.recycled ||
(e.moveBy(32, 0, 0.3, J.quadInOut), e.setValue('Button Logic', '_Hide', !0));
}
},
_event_GroundandGravity: function (a) {
var b = this;
if (this.wrapper.enabled) {
if (this._Go)
if (this._GroundCheck) {
if (!this._OnGround) {
this._OnGround = !0;
this._Hurt = !1;
this.actor.setXVelocity(0);
this.actor.setYVelocity(0);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
a = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); a < c.length; ) {
var e = c[a];
++a;
null == e ||
e.dead ||
e.recycled ||
(this.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
}
d.startShakingScreen(0.004, 0.15);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
this._FaceLeft
? this.actor.setAnimation('Left Bounce')
: this.actor.setAnimation('Right Bounce');
this.actor.setCurrentFrame(0);
d.runLater(
100,
function (a) {
b._FaceLeft
? b.actor.setXVelocity(-b._Speed)
: b.actor.setXVelocity(b._Speed);
b.actor.setYVelocity(-90);
},
this.actor
);
}
} else this._OnGround = !1;
this._GroundCheck = !1;
this._Go &&
!this._NoGravity &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
}
},
_event_Movement: function (a) {
if (this.wrapper.enabled) {
a = this._Dude;
if (
!d.isPrimitive(a) &&
('string' == typeof a ? '' == x.__cast(a, String) : null == a)
) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(2)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Dude = c);
}
}
this._ReadyToTalk &&
(k.engine.getGameAttribute('Boss 2 Dialog Read')
? ((this._ReadyToTalk = !1), this.actor.shout('_customEvent_dialogComplete'))
: ((a = this._Dude),
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getValue('Dude Logic', '_OnGround') &&
((this._ReadyToTalk = !1),
this._DialogComplete ||
((this._DialogComplete = !0),
d.stopSoundOnChannel(16),
d.createRecycledActor(d.getActorType(161), 0, d.getScreenHeight() - 96, 0),
'JP' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*\u30ae\u30e3\u30fc*|\u3042\u3042\u3001\u306a\u3093\u3066\u3053\u3063\u305f\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\u3053\u3093\u306b\u3061\u306f\u3001\u30c0\u30c7\u30a3\u30c3\u30b7\u30e5\u3067\u3059\uff01\u79c1\u306e\u611a\u304b\u306a\u5b50\u4f9b\u305f\u3061\u3092\u898b\u305f\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u304b\uff1f|\u79c1\u306f\u30db\u30c3\u30c8\u30c9\u30c3\u30b0\u3001\u30c0\u30fc\u30ca\u30c3\u30af\u537f\u306e2 \u756a\u76ee\u306e\u5b50\u5206\u3067\u3059\uff01|\u3042\u306a\u305f\u306e\u540d\u524d\u306f... \u30db\u30c3\u30c8\u30c9\u30c3\u30b0..\uff1f\u672c\u5f53\u3067\u3059\u304b\uff1f|\u79c1\u306f\u30db\u30c3\u30c8\u30c9\u30c3\u30af\u3067\u3059\uff01\u6b7b\u306c\u6e96\u5099\u3092\u3057\u306a\u3055\u3044\uff01|\u4e86\u89e3\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: 'CN' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*SCREECH*|\u54e6\u5929\u54ea\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\u55e8\uff0c\u6211\u662f\u7238\u7238\u841d\u535c\uff01\u4f60\u770b\u5230\u6211\u90a3\u4e9b\u8822\u5b69\u5b50\u4e86\u5417\uff1f|\u6211\u662f\u70ed\u72d7\uff0c\u675c\u7eb3\u514b\u52cb\u7235\u7684\u7b2c\u4e8c\u4e2a\u968f\u4ece\uff01|\u70ed\u72d7\u2026\u2026\uff1f\u4f60\u5b8c\u5168\u786e\u5b9a\u5417\uff1f|\u6211\u662f\u70ed\u72d7\uff01\u51c6\u5907\u53bb\u6b7b\uff01|\u597d\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: 'KR' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*\uaf64\uc561*|\uc5b4 \uc774\ub7f0.'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\uc548\ub155\ud558\uc138\uc694, \uc804 \ub300\ub514\uc26c\uc5d0\uc694! \uc81c \uba4d\uccad\ud55c \uc544\uc774\ub4e4\uc744 \ubcf8 \uc801 \uc788\uc73c\uc138\uc694?|\ub09c \ud56b\ub3c4\uadf8\ub2e4. \ub354\ub098\ud06c\ub2d8\uc758 \ub450 \ubc88\uc9f8 \uc218\ud558\uc9c0!|\uadf8\ub7ec\ub2c8\uae4c \uc774\ub984\uc774... \ud56b\ub3c4\uadf8\uc2dc\ub77c\uad6c\uc694..? \uc9c4\uc9dc\ub85c\uc694?|\ub098\ub294 \ud56b\ub3c4\uadf8\ub2e4! \uc8fd\uc744 \uc900\ube44\ub97c \ud574\ub77c!|\uc54c\uc558\uc5b4\uc694.'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_DialogText', '*SCREECH*|Oh my gosh'),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
"Hi there, I'm Dadish! Have you seen my stupid children?|I AM HOTDOG, SECOND HENCHMAN TO LORD DURNAK!|Your name is... Hotdog..? Are you absolutely sure?|I AM HOTDOG! PREPARE TO DIE!|Righto."
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish')),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_Character2', 'Boss 2'),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_Parent', this.actor),
d.getLastCreatedActor().say('Dialog Box Logic', '_customEvent_Go')))));
}
},
_event_EntersScreen: function (a, b, c, e) {
var f = this;
this.wrapper.enabled &&
a &&
!this._HasEntered &&
!this._Go &&
((this._HasEntered = !0),
d.runLater(
700,
function (a) {
f._ReadyToTalk = !0;
},
this.actor
));
},
_customEvent_dialogComplete: function () {
var a = this;
d.runLater(
200,
function (b) {
a._Go = !0;
k.engine.gameAttributes.h['Boss 2 Dialog Read'] = !0;
a.actor.setAnimation('Left');
d.loopSoundOnChannel(d.getSound(377), 16);
k.engine.getGameAttribute('Music Disabled')
? d.setVolumeForChannel(0, 16)
: k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16);
},
this.actor
);
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this._StartingY = this.actor.getY();
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHazard));
this.addListener(this.actor.whenUpdated, q(this, this._event_GroundandGravity));
this.addListener(this.actor.whenUpdated, q(this, this._event_Movement));
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_EntersScreen));
},
forwardMessage: function (a) {},
__class__: mu
});
var nu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h['Can Make Noise'] = '_CanMakeNoise';
this._CanMakeNoise = !1;
this.nameMap.h['On Platform'] = '_OnPlatform';
this._OnPlatform = !1;
this.nameMap.h['Platform Check'] = '_PlatformCheck';
this._PlatformCheck = !1;
this.nameMap.h['Platform Release Delay'] = '_PlatformReleaseDelay';
this._PlatformReleaseDelay = 0;
this.nameMap.h['Current Platform'] = '_CurrentPlatform';
this.nameMap.h['Platform Pos X'] = '_PlatformPosX';
this._PlatformPosX = 0;
this.nameMap.h['Non Stick'] = '_NonStick';
this._NonStick = !1;
this.nameMap.h.Spring = '_Spring';
this.nameMap.h['Has Spring'] = '_HasSpring';
this._HasSpring = !1;
};
h['scripts.Design_209_209_PushableCrateLogic'] = nu;
nu.__name__ = 'scripts.Design_209_209_PushableCrateLogic';
nu.__super__ = u;
nu.prototype = r(u.prototype, {
_GravitySpeed: null,
_OnGround: null,
_GroundCheck: null,
_CanMakeNoise: null,
_OnPlatform: null,
_PlatformCheck: null,
_PlatformReleaseDelay: null,
_CurrentPlatform: null,
_PlatformPosX: null,
_NonStick: null,
_Spring: null,
_HasSpring: null,
_event_HitsGround: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b && a.thisFromBottom && (this._GroundCheck = !0);
},
_event_HitsPlatform: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(5);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
if (b && a.thisFromBottom) {
this._PlatformCheck = this._GroundCheck = !0;
if (0 == this._PlatformReleaseDelay || 0 != this.actor.getXVelocity())
this._PlatformPosX = this.actor.getX() - a.otherActor.getX();
this._PlatformReleaseDelay = 6;
this._CurrentPlatform = a.otherActor;
}
},
_event_Updating: function (a) {
if (this.wrapper.enabled) {
this._GroundCheck
? this._OnGround ||
((this._OnGround = !0),
this._CanMakeNoise && !this._OnPlatform
? k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(117))
: (this._CanMakeNoise = !0))
: this._OnGround && (this._OnGround = !1);
this._GroundCheck = !1;
this._PlatformCheck
? (this.actor.setYVelocity(40), this._OnPlatform || (this._OnPlatform = !0))
: this._OnPlatform && 0 == this._PlatformReleaseDelay && (this._OnPlatform = !1);
this._PlatformCheck = !1;
0 < this._PlatformReleaseDelay && --this._PlatformReleaseDelay;
if (this._OnPlatform) {
var b = this._CurrentPlatform;
a = d.isPrimitive(b)
? !0
: 'string' == typeof b
? '' != x.__cast(b, String)
: null != b;
} else a = !1;
a &&
!this._NonStick &&
(this._CurrentPlatform.hasBehavior('Rotator Object') &&
0 != this._CurrentPlatform.getValue('Rotator Object', '_Speed')
? (0 == this.actor.getXVelocity() &&
((a = this.actor),
(b = this._CurrentPlatform.getValue('Rotator Object', '_ActualX')),
a.setX(
(null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b))) + this._PlatformPosX
)),
(a = this.actor),
(b = this._CurrentPlatform.getValue('Rotator Object', '_ActualY')),
a.setY(
(null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b))) - this.actor.getHeight()
))
: (0 == this.actor.getXVelocity() &&
this.actor.setX(this._CurrentPlatform.getX() + this._PlatformPosX),
this.actor.setY(this._CurrentPlatform.getY() - this.actor.getHeight())));
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
0 < this.actor.getXVelocity()
? this.actor.setXVelocity(Math.max(0, this.actor.getXVelocity() - 1))
: 0 > this.actor.getXVelocity() &&
this.actor.setXVelocity(Math.min(0, this.actor.getXVelocity() + 1));
b = this._Spring;
if (d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b))
this._Spring.setX(this.actor.getX()), this._Spring.setY(this.actor.getY() - 32);
}
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this._GroundCheck = this._OnGround = !0;
this._CanMakeNoise = !1;
this._HasSpring &&
(d.createRecycledActorOnLayer(
d.getActorType(62),
this.actor.getX(),
this.actor.getY() - 32,
d.engine.getLayerById(this.actor.getLayerID())
),
(this._Spring = d.getLastCreatedActor()),
this._Spring.moveToBottom(),
this.actor.moveToBottom());
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsPlatform));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: nu
});
var ou = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Key Number'] = '_KeyNumber';
this._KeyNumber = 0;
this.nameMap.h.Unlocked = '_Unlocked';
this._Unlocked = !1;
this.nameMap.h['Lock list'] = '_Locklist';
};
h['scripts.Design_20_20_KeyLogic'] = ou;
ou.__name__ = 'scripts.Design_20_20_KeyLogic';
ou.__super__ = u;
ou.prototype = r(u.prototype, {
_KeyNumber: null,
_Unlocked: null,
_Locklist: null,
_customEvent_unlock: function () {
this._Locklist = [];
if (!this._Unlocked) {
this._Unlocked = !0;
d.setValueForScene('Stage Logic', '_RumbleName', 'Item');
d.sayToScene('Stage Logic', '_customEvent_rumble');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(110));
this.actor.disableActorDrawing();
for (var a = 0, b = d.getActorsOfType(d.getActorType(30)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
(c.getValue('Locked Block Logic', '_LockNumber') == this._KeyNumber &&
this._Locklist.push(c));
}
a = 0;
for (b = this._Locklist.length; a < b; )
(c = a++),
this._Locklist[c].setValue('Locked Block Logic', '_GoDelay', 0.2 * c + 0.4),
this._Locklist[c].shout('_customEvent_Go'),
c == this._Locklist.length - 1 && d.recycleActor(this.actor);
}
},
init: function () {},
forwardMessage: function (a) {},
__class__: ou
});
var pu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h['Can Make Noise'] = '_CanMakeNoise';
this._CanMakeNoise = !1;
this.nameMap.h['Face Left'] = '_FaceLeft';
this._FaceLeft = !0;
this.nameMap.h.Speed = '_Speed';
this._Speed = 6;
this.nameMap.h.Fall = '_Fall';
this._Fall = !1;
this.nameMap.h['No Gravity'] = '_NoGravity';
this._NoGravity = !1;
this.nameMap.h.Health = '_Health';
this._Health = 5;
this.nameMap.h.Hurt = '_Hurt';
this._Hurt = !1;
this.nameMap.h.Dead = '_Dead';
this._Dead = !1;
this.nameMap.h['Starting Y'] = '_StartingY';
this._StartingY = 0;
this.nameMap.h['Ground Amnesty'] = '_GroundAmnesty';
this._GroundAmnesty = 0;
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h.Dude = '_Dude';
this._Dude = d.getActor(0);
this.nameMap.h['Ready To Talk'] = '_ReadyToTalk';
this._ReadyToTalk = !1;
this.nameMap.h['Has Entered'] = '_HasEntered';
this._HasEntered = !1;
this.nameMap.h['Dialog Complete'] = '_DialogComplete';
this._DialogComplete = !1;
this.nameMap.h['Dialog Text'] = '_DialogText';
this._DialogText = '';
this.nameMap.h['Can Bounce'] = '_CanBounce';
this._CanBounce = !1;
};
h['scripts.Design_220_220_Boss3Logic'] = pu;
pu.__name__ = 'scripts.Design_220_220_Boss3Logic';
pu.__super__ = u;
pu.prototype = r(u.prototype, {
_GravitySpeed: null,
_OnGround: null,
_GroundCheck: null,
_CanMakeNoise: null,
_FaceLeft: null,
_Speed: null,
_Fall: null,
_NoGravity: null,
_Health: null,
_Hurt: null,
_Dead: null,
_StartingY: null,
_GroundAmnesty: null,
_Go: null,
_Dude: null,
_ReadyToTalk: null,
_HasEntered: null,
_DialogComplete: null,
_DialogText: null,
_CanBounce: null,
_event_HitsGround: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorGroup(1);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
!this._Hurt &&
this._Go &&
(a.thisFromBottom && ((this._GroundCheck = !0), (this._GroundAmnesty = 4)),
a.thisFromLeft &&
((this._FaceLeft = !1),
this.actor.setAnimation('Turn'),
this.actor.setXVelocity(this._Speed),
d.runLater(
200,
function (a) {
b.actor.setAnimation('Right');
},
this.actor
)),
a.thisFromRight &&
((this._FaceLeft = !0),
this.actor.setAnimation('Turn'),
this.actor.setXVelocity(-this._Speed),
d.runLater(
200,
function (a) {
b.actor.setAnimation('Left');
},
this.actor
)));
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled && (this._OnGround || --this._GroundAmnesty);
},
_event_FollowDude: function (a) {
var b = this;
this.wrapper.enabled &&
((a = this._Dude),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
(this._FaceLeft && this._Dude.getXCenter() > this.actor.getXCenter() + 64
? (this.actor.setXVelocity(0),
(this._FaceLeft = !1),
this.actor.setAnimation('Turn'),
d.runLater(
100,
function (a) {
b.actor.setAnimation('Right');
b.actor.setXVelocity(b._Speed);
},
this.actor
))
: !this._FaceLeft &&
this._Dude.getXCenter() < this.actor.getXCenter() - 64 &&
(this.actor.setXVelocity(0),
(this._FaceLeft = !0),
this.actor.setAnimation('Turn'),
d.runLater(
100,
function (a) {
b.actor.setXVelocity(-b._Speed);
b.actor.setAnimation('Left');
},
this.actor
)));
},
_event_HitsHazard: function (a) {
var b = this;
if (
this.wrapper.enabled &&
this.internalGetGroup(a.otherActor, a.otherShape, a) == d.getActorGroup(4) &&
!this._Hurt
) {
this._Hurt = !0;
this._Speed *= 1.1;
a.otherActor.getType() == d.getActorType(211) &&
a.otherActor.shout('_customEvent_Destroy');
this.actor.setXVelocity(0);
this.actor.setYVelocity(0);
--this._Health;
this.actor.setFilter([d.createBrightnessFilter(100)]);
a = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); a < c.length; ) {
var e = c[a];
++a;
null == e ||
e.dead ||
e.recycled ||
(this.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
}
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(378));
d.createRecycledActorOnLayer(
d.getActorType(395),
d.randomInt(this.actor.getX() | 0, (this.actor.getX() + 64) | 0),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().setYVelocity(d.randomInt(-50, -64));
d.getLastCreatedActor().setXVelocity(d.randomInt(-24, 24));
d.createRecycledActorOnLayer(
d.getActorType(395),
d.randomInt(this.actor.getX() | 0, (this.actor.getX() + 64) | 0),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().setYVelocity(d.randomInt(-50, -64));
d.getLastCreatedActor().setXVelocity(d.randomInt(-24, 24));
this._FaceLeft
? this.actor.setAnimation('Left Hurt')
: this.actor.setAnimation('Right Hurt');
d.runLater(
200,
function (a) {
b.actor.clearFilters();
b._Hurt = !1;
d.runLater(
800,
function (a) {
d.setValueForScene('Stage Logic', '_RumbleName', 'Boss Pop');
d.sayToScene('Stage Logic', '_customEvent_rumble');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(119));
d.startShakingScreen(0.006999999999999999, 0.15);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getY() + b.actor.getHeight() / 2 - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().setAnimation('Dirt');
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getX() - 8,
b.actor.getY() + b.actor.getHeight() / 2 - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().setAnimation('Dirt');
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getX() + b.actor.getWidth() - 8,
b.actor.getY() + b.actor.getHeight() / 2 - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().setAnimation('Dirt');
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
b._FaceLeft
? (b.actor.setAnimation('Left'), b.actor.setXVelocity(-b._Speed))
: (b.actor.setAnimation('Right'), b.actor.setXVelocity(b._Speed));
},
b.actor
);
},
this.actor
);
0 < this._Health &&
d.runLater(
400,
function (a) {
b._NoGravity = !1;
},
this.actor
);
if (0 == this._Health) {
d.runLater(
600,
function (a) {
b._NoGravity = !1;
},
this.actor
);
this._Dead = !0;
for (a = 0; 10 > a; )
a++,
d.createRecycledActorOnLayer(
d.getActorType(395),
d.randomInt(this.actor.getX() | 0, (this.actor.getX() + 64) | 0),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setYVelocity(d.randomInt(-50, -64)),
d.getLastCreatedActor().setXVelocity(d.randomInt(-24, 24));
d.runLater(
200,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(397),
b.actor.getX(),
b.actor.getY(),
d.engine.getLayerById(b.actor.getLayerID())
);
d.recycleActor(b.actor);
},
this.actor
);
d.stopSoundOnChannel(16);
a = 0;
for (c = d.getActorsOfType(d.getActorType(391)); a < c.length; )
if (((e = c[a]), ++a, null != e && !e.dead && !e.recycled)) {
var f = e.getValue('Crusher Logic', '_OriginY');
e.setValue(
'Crusher Logic',
'_OriginY',
(null == f
? 0
: 'number' == typeof f
? x.__cast(f, Nb)
: 'number' == typeof f && (f | 0) === f
? x.__cast(f, Ab)
: 'boolean' == typeof f
? x.__cast(f, Ob)
? 1
: 0
: 'string' == typeof f
? parseFloat(f)
: parseFloat(B.string(f))) - 96
);
}
a = 0;
for (c = d.getActorsOfType(d.getActorType(353)); a < c.length; )
(e = c[a]),
++a,
null == e ||
e.dead ||
e.recycled ||
(e.moveBy(0, 32, 0.3, J.quadInOut), e.setValue('Button Logic', '_Hide', !0));
a = 0;
for (c = d.getActorsOfType(d.getActorType(208)); a < c.length; )
(e = c[a]),
++a,
null == e ||
e.dead ||
e.recycled ||
(e.moveBy(-32, 0, 0.3, J.quadInOut), e.setValue('Button Logic', '_Hide', !0));
a = 0;
for (c = d.getActorsOfType(d.getActorType(213)); a < c.length; )
(e = c[a]),
++a,
null == e ||
e.dead ||
e.recycled ||
(e.moveBy(32, 0, 0.3, J.quadInOut), e.setValue('Button Logic', '_Hide', !0));
}
}
},
_event_GroundandGravity: function (a) {
this.wrapper.enabled &&
(this._Go &&
(this._GroundCheck ? this._OnGround || (this._OnGround = !0) : (this._OnGround = !1)),
(this._GroundCheck = !1),
this._Go &&
!this._NoGravity &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed)));
},
_event_Movement: function (a) {
if (this.wrapper.enabled) {
this._Hurt && this.actor.setXVelocity(0);
a = this._Dude;
if (
!d.isPrimitive(a) &&
('string' == typeof a ? '' == x.__cast(a, String) : null == a)
) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(2)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Dude = c);
}
}
this._ReadyToTalk &&
(k.engine.getGameAttribute('Boss 3 Dialog Read')
? ((this._ReadyToTalk = !1), this.actor.shout('_customEvent_dialogComplete'))
: ((a = this._Dude),
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getValue('Dude Logic', '_OnGround') &&
((this._ReadyToTalk = !1),
this._DialogComplete ||
((this._DialogComplete = !0),
d.stopSoundOnChannel(16),
d.createRecycledActor(d.getActorType(161), 0, d.getScreenHeight() - 96, 0),
'JP' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*\u30ae\u30e3\u30fc*|\u3042\u3042\u3001\u306a\u3093\u3066\u3053\u3063\u305f\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\u3053\u3093\u306b\u3061\u306f\uff01\u79c1\u306e\u99ac\u9e7f\u306a\u5b50\u4f9b\u305f\u3061\u3092\u898b\u305f\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u304b\uff1f|\u79c1\u306f\u30b7\u30e3\u30ed\u30f3\u3001\u30c0\u30fc\u30ca\u30c3\u30af\u537f\u306e\u6700\u521d\u306e\u5b50\u5206\u3067\u3059\uff01|\u307e\u305f\u304b......|\u3042\u306a\u305f\u306f\u611a\u304b\u306b\u3082\u3053\u3053\u306b\u6765\u305f\u3001\u6226\u58eb\u3088\uff01|\u3042\u3042\u3001\u79c1\u306f\u6226\u58eb\u3067\u306f\u306a\u304f\u3066\u3001\u30c0\u30c7\u30a3\u30c3\u30b7\u30e5\u3067\u3059\u3002\u3054\u5b58\u77e5\u306e\u3088\u3046\u306b\u3001\u79c1\u306f\u304a\u7236\u3055\u3093\u3067\u3059\u304c\u3001\u30e9\u30c7\u30c3\u30b7\u30e5\u3067\u3082\u3042\u308a\u307e\u3059\u3002|\u6b7b\u306c\u6e96\u5099\u3092\u3057\u306a\u3055\u3044\uff01'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: 'CN' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*SCREECH*|\u54e6\u5929\u54ea\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\u4f60\u597d\uff01\u4f60\u770b\u5230\u6211\u7684\u50bb\u5b69\u5b50\u4e86\u5417\uff1f|\u6211\u662f\u6c99\u9f99\uff0c\u675c\u7eb3\u514b\u52cb\u7235\u7684\u7b2c\u4e00\u4e2a\u968f\u4ece\uff01|\u4e0d\u8981\u518d\u8fd9\u6837\u2026\u2026|\u4f60\u6765\u8fd9\u513f\u771f\u662f\u592a\u8822\u4e86\uff0c\u52c7\u58eb\uff01|\u5662\uff0c\u6211\u4e0d\u662f\u52c7\u58eb\uff0c\u6211\u662f\u7238\u7238\u841d\u535c\u3002\u4f60\u770b\uff0c\u6211\u662f\u7238\u7238\uff0c\u4e5f\u662f\u841d\u535c\u3002|\u51c6\u5907\u53bb\u6b7b\uff01'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: 'KR' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*\uaf64\uc561*|\uc5b4 \uc774\ub7f0.'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\uc548\ub155\ud558\uc138\uc694! \uc81c \ubc14\ubcf4\uac19\uc740 \uc544\uc774\ub4e4\uc744 \ubcf8 \uc801 \uc788\uc73c\uc138\uc694?|\ub09c \uc0e4\ub860\uc774\ub2e4. \ub354\ub098\ud06c\ub2d8\uc758 \uccab \ubc88\uc9f8 \uc218\ud558\uc9c0!|\ub610\uc57c...|\uc5ec\uae30\uc5d0 \uc624\ub2e4\ub2c8 \uc815\ub9d0 \uba4d\uccad\ud558\uad70, \uc804\uc0ac\uc5ec!|\uc804 \uc804\uc0ac\uac00 \uc544\ub2c8\ub77c \ub300\ub514\uc26c\uc5d0\uc694. \ubcf4\uc2dc\ub2e4\uc2dc\ud53c, \uc804 \uc544\ube60(\ub300\ub514)\uc608\uc694. \uadf8\ub9ac\uace0 \ubb34(\ub798\ub514\uc26c)\uc8e0. \ub9d0\uc7a5\ub09c\uc774\uc5d0\uc694.|\uc7a5\ub09c\uc774\ub77c\uace0?|\ub124, \ub9d0\uc7a5\ub09c\uc774\uc694.|\uc8fd\uc744 \uc900\ube44\ub97c \ud574\ub77c!'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_DialogText', '*SCREECH*|Oh my gosh'),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
"Hello! Have you seen my idiot children?|I AM SHARON, FIRST HENCHMAN TO LORD DURNAK!|Not this again...|YOU WERE FOOLISH TO COME HERE, WARRIOR!|Oh I'm not a warrior, I'm Dadish. You see, I'm a Dad, but also a radish. It's a portmanteau.|A POOR MAN TOE?|Uh, yeah, sure.|PREPARE TO DIE!"
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish')),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_Character2', 'Boss 3'),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_Parent', this.actor),
d.getLastCreatedActor().say('Dialog Box Logic', '_customEvent_Go')))));
}
},
_event_EntersScreen: function (a, b, c, e) {
var f = this;
this.wrapper.enabled &&
a &&
!this._HasEntered &&
!this._Go &&
((this._HasEntered = !0),
d.runLater(
700,
function (a) {
f._ReadyToTalk = !0;
},
this.actor
));
},
_customEvent_dialogComplete: function () {
var a = this;
d.runLater(
200,
function (b) {
a._Go = !0;
k.engine.gameAttributes.h['Boss 3 Dialog Read'] = !0;
a.actor.setAnimation('Left');
a.actor.setXVelocity(-a._Speed);
d.loopSoundOnChannel(d.getSound(377), 16);
k.engine.getGameAttribute('Music Disabled')
? d.setVolumeForChannel(0, 16)
: k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16);
},
this.actor
);
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this._StartingY = this.actor.getY();
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
d.runPeriodically(1400, q(this, this._event_FollowDude), this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHazard));
this.addListener(this.actor.whenUpdated, q(this, this._event_GroundandGravity));
this.addListener(this.actor.whenUpdated, q(this, this._event_Movement));
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_EntersScreen));
},
forwardMessage: function (a) {},
__class__: pu
});
var qu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Button Number'] = '_ButtonNumber';
this._ButtonNumber = 0;
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h['Target Y'] = '_TargetY';
this._TargetY = 0;
this.nameMap.h.Fall = '_Fall';
this._Fall = !1;
this.nameMap.h['Origin Y'] = '_OriginY';
this._OriginY = 0;
this.nameMap.h.Pole = '_Pole';
};
h['scripts.Design_222_222_CrusherLogic'] = qu;
qu.__name__ = 'scripts.Design_222_222_CrusherLogic';
qu.__super__ = u;
qu.prototype = r(u.prototype, {
_ButtonNumber: null,
_Go: null,
_TargetY: null,
_Fall: null,
_OriginY: null,
_Pole: null,
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled &&
(this._Fall &&
(this.actor.setYVelocity(Math.min(48, this.actor.getYVelocity() + 2)),
this.actor.getY() >= this._TargetY &&
((this._Fall = !1),
this.actor.setYVelocity(0),
this.actor.setY(this._TargetY),
d.startShakingScreen(0.02, 0.05),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105)),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut),
d.runLater(
2e3,
function (a) {
b.actor.moveTo(b.actor.getX(), b._OriginY, 0.3, J.quadInOut);
d.runLater(
320,
function (a) {
b._Go = !1;
},
b.actor
);
},
this.actor
))),
(a = this._Pole),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Pole.setY(this.actor.getY() - 254));
},
_event_ActorType: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(389);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
this._Fall &&
((this._Fall = !1),
this.actor.setYVelocity(0),
this.actor.setY(a.otherActor.getY() - 128),
d.startShakingScreen(0.02, 0.05),
this.actor.moveTo(this.actor.getX(), this._OriginY, 0.3, J.quadInOut),
d.runLater(
320,
function (a) {
b._Go = !1;
},
this.actor
));
},
_customEvent_Go: function () {
this._Go ||
((this._Fall = this._Go = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(106)));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._OriginY = this.actor.getY();
this._TargetY = this.actor.getY() + 224;
d.createRecycledActorOnLayer(
d.getActorType(393),
this.actor.getXCenter() - 29,
this.actor.getY() - 254,
d.engine.getLayerById(this.actor.getLayerID())
);
this._Pole = d.getLastCreatedActor();
this._Pole.moveToBottom();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_ActorType));
},
forwardMessage: function (a) {},
__class__: qu
});
var ru = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Lock Number'] = '_LockNumber';
this._LockNumber = 0;
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h['Go Delay'] = '_GoDelay';
this._GoDelay = 0;
this.nameMap.h['Turn Block'] = '_TurnBlock';
};
h['scripts.Design_22_22_LockedBlockLogic'] = ru;
ru.__name__ = 'scripts.Design_22_22_LockedBlockLogic';
ru.__super__ = u;
ru.prototype = r(u.prototype, {
_LockNumber: null,
_Go: null,
_GoDelay: null,
_TurnBlock: null,
_customEvent_Go: function () {
var a = this;
this._Go ||
((this._Go = !0),
d.runLater(
1e3 * this._GoDelay,
function (b) {
a.actor.setAnimation('Turn');
b = 0;
for (var c = d.getActorsOfType(d.getActorType(607)); b < c.length; ) {
var e = c[b];
++b;
null == e || e.dead || e.recycled || d.recycleActor(e);
}
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(111));
b = 0;
for (c = d.getActorsOfType(d.getActorType(2)); b < c.length; )
(e = c[b]),
++b,
null == e ||
e.dead ||
e.recycled ||
(a.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Block Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Block Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
d.createRecycledActorOnLayer(
d.getActorType(381),
a.actor.getX(),
a.actor.getY(),
d.engine.getLayerById(a.actor.getLayerID())
);
a._TurnBlock = d.getLastCreatedActor();
a._TurnBlock.spinBy(180, 0.2, J.quadInOut);
d.runLater(
100,
function (a) {
d.startShakingScreen(0.005, 0.05);
},
a.actor
);
d.runLater(
200,
function (b) {
d.recycleActor(a._TurnBlock);
d.recycleActor(a.actor);
},
a.actor
);
},
this.actor
));
},
init: function () {
this.actor.makeAlwaysSimulate();
},
forwardMessage: function (a) {},
__class__: ru
});
var su = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h['Can Make Noise'] = '_CanMakeNoise';
this._CanMakeNoise = !1;
this.nameMap.h['Face Left'] = '_FaceLeft';
this._FaceLeft = !0;
this.nameMap.h.Speed = '_Speed';
this._Speed = 10;
this.nameMap.h.Fall = '_Fall';
this._Fall = !1;
this.nameMap.h['No Gravity'] = '_NoGravity';
this._NoGravity = !1;
this.nameMap.h.Health = '_Health';
this._Health = 4;
this.nameMap.h.Hurt = '_Hurt';
this._Hurt = !1;
this.nameMap.h.Dead = '_Dead';
this._Dead = !1;
this.nameMap.h['Starting Y'] = '_StartingY';
this._StartingY = 0;
this.nameMap.h['Ground Amnesty'] = '_GroundAmnesty';
this._GroundAmnesty = 0;
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Ready To Talk'] = '_ReadyToTalk';
this._ReadyToTalk = !1;
this.nameMap.h['Has Entered'] = '_HasEntered';
this._HasEntered = !1;
this.nameMap.h['Dialog Complete'] = '_DialogComplete';
this._DialogComplete = !1;
this.nameMap.h['Dialog Text'] = '_DialogText';
this._DialogText = 'DEFAULT';
this.nameMap.h['Can Bounce'] = '_CanBounce';
this._CanBounce = !1;
this.nameMap.h['Dead On Ground'] = '_DeadOnGround';
this._DeadOnGround = !1;
};
h['scripts.Design_246_246_Boss4Logic'] = su;
su.__name__ = 'scripts.Design_246_246_Boss4Logic';
su.__super__ = u;
su.prototype = r(u.prototype, {
_GravitySpeed: null,
_OnGround: null,
_GroundCheck: null,
_CanMakeNoise: null,
_FaceLeft: null,
_Speed: null,
_Fall: null,
_NoGravity: null,
_Health: null,
_Hurt: null,
_Dead: null,
_StartingY: null,
_GroundAmnesty: null,
_Go: null,
_Dude: null,
_ReadyToTalk: null,
_HasEntered: null,
_DialogComplete: null,
_DialogText: null,
_CanBounce: null,
_DeadOnGround: null,
_event_HitsGround: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorGroup(1);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
this._Go &&
(this._Dead && a.thisFromBottom
? this._DeadOnGround ||
((this._DeadOnGround = !0),
this.actor.setFilter([d.createBrightnessFilter(100)]),
d.runLater(
100,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(28),
b.actor.getXCenter() - 16,
b.actor.getYCenter() - 16,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
for (a = 0; 20 > a; )
a++,
d.createRecycledActorOnLayer(
d.getActorType(427),
d.randomInt(
b.actor.getX() | 0,
(b.actor.getX() + (b.actor.getWidth() - 16)) | 0
),
d.randomInt(
b.actor.getY() | 0,
(b.actor.getY() + (b.actor.getHeight() - 16)) | 0
),
d.engine.getLayerById(b.actor.getLayerID())
),
d.getLastCreatedActor().setYVelocity(1.6 * d.randomInt(-50, -64)),
d.getLastCreatedActor().setXVelocity(1.6 * d.randomInt(-24, 24));
for (a = 0; 20 > a; )
a++,
d.createRecycledActorOnLayer(
d.getActorType(425),
d.randomInt(
b.actor.getX() | 0,
(b.actor.getX() + (b.actor.getWidth() - 16)) | 0
),
d.randomInt(
b.actor.getY() | 0,
(b.actor.getY() + (b.actor.getHeight() - 16)) | 0
),
d.engine.getLayerById(b.actor.getLayerID())
),
d.getLastCreatedActor().setYVelocity(d.randomInt(-50, -64)),
d.getLastCreatedActor().setXVelocity(d.randomInt(-24, 24));
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(430));
d.startShakingScreen(0.006999999999999999, 0.15);
d.recycleActor(b.actor);
},
this.actor
))
: (a.thisFromBottom && ((this._GroundCheck = !0), (this._GroundAmnesty = 4)),
a.thisFromLeft &&
((this._FaceLeft = !1),
this.actor.setAnimation('Turn'),
this.actor.setXVelocity(this._Speed),
d.runLater(
200,
function (a) {
b.actor.setAnimation('Right');
},
this.actor
)),
a.thisFromRight &&
((this._FaceLeft = !0),
this.actor.setAnimation('Turn'),
this.actor.setXVelocity(-this._Speed),
d.runLater(
200,
function (a) {
b.actor.setAnimation('Left');
},
this.actor
))));
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled && (this._OnGround || --this._GroundAmnesty);
},
_event_HitsHazard: function (a) {
var b = this;
if (
this.wrapper.enabled &&
this.internalGetGroup(a.otherActor, a.otherShape, a) == d.getActorGroup(4) &&
!this._Hurt &&
((this._Hurt = !0),
(this._Speed *= 1.15),
this.actor.setXVelocity(0),
this.actor.setYVelocity(-60),
--this._Health,
this.actor.setFilter([d.createBrightnessFilter(100)]),
d.runLater(
200,
function (a) {
b.actor.clearFilters();
},
this.actor
),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(378)),
0 < this._Health &&
(d.runLater(
400,
function (a) {
b._NoGravity = !1;
},
this.actor
),
this._FaceLeft
? this.actor.setAnimation('Left Hurt')
: this.actor.setAnimation('Right Hurt')),
0 == this._Health)
) {
this._FaceLeft
? this.actor.setAnimation('Left Hurt')
: this.actor.setAnimation('Right Hurt');
this._Dead = !0;
d.stopSoundOnChannel(16);
a = 0;
for (var c = d.getActorsOfType(d.getActorType(353)); a < c.length; ) {
var e = c[a];
++a;
null == e ||
e.dead ||
e.recycled ||
(e.moveBy(0, 32, 0.3, J.quadInOut), e.setValue('Button Logic', '_Hide', !0));
}
}
},
_event_GroundandGravity: function (a) {
var b = this;
if (this.wrapper.enabled) {
if (this._Go && !this._Dead)
if (this._GroundCheck) {
if (!this._OnGround) {
this._OnGround = !0;
this._Hurt = !1;
this.actor.setXVelocity(0);
this.actor.setYVelocity(0);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
a = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); a < c.length; ) {
var e = c[a];
++a;
null == e ||
e.dead ||
e.recycled ||
(this.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
}
d.startShakingScreen(0.004, 0.15);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
this._FaceLeft
? this.actor.setAnimation('Left Bounce')
: this.actor.setAnimation('Right Bounce');
this.actor.setCurrentFrame(0);
d.runLater(
100,
function (a) {
b._FaceLeft
? b.actor.setXVelocity(-b._Speed)
: b.actor.setXVelocity(b._Speed);
b.actor.setYVelocity(-90);
},
this.actor
);
}
} else this._OnGround = !1;
this._GroundCheck = !1;
this._Go &&
!this._NoGravity &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
}
},
_event_Movement: function (a) {
if (this.wrapper.enabled) {
a = this._Dude;
if (
!d.isPrimitive(a) &&
('string' == typeof a ? '' == x.__cast(a, String) : null == a)
) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(2)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Dude = c);
}
}
this._ReadyToTalk &&
(k.engine.getGameAttribute('Boss 4 Dialog Read')
? ((this._ReadyToTalk = !1), this.actor.shout('_customEvent_dialogComplete'))
: ((a = this._Dude),
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getValue('Dude Logic', '_OnGround') &&
((this._ReadyToTalk = !1),
this._DialogComplete ||
((this._DialogComplete = !0),
d.stopSoundOnChannel(16),
d.createRecycledActor(d.getActorType(161), 0, d.getScreenHeight() - 96, 0),
'JP' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*\u30ae\u30e3\u30fc*|\u3042\u3042\u3001\u306a\u3093\u3066\u3053\u3063\u305f\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\u3053\u3093\u306b\u3061\u306f\uff01\u79c1\u306f\u30c0\u30c7\u30a3\u30c3\u30b7\u30e5\u3067\u3059\uff01|\u79c1\u306e\u8981\u585e\u3001\u30c0\u30c7\u30a3\u30c3\u30b7\u30e5\u3078\u3088\u3046\u3053\u305d\uff01\u79c1\u306f\u30c0\u30fc\u30ca\u30c3\u30af\u537f\u3067\u3059\uff01\u3088\u3046\u3084\u304f\u304a\u4f1a\u3044\u3067\u304d\u3066\u3046\u308c\u3057\u3044\u3067\u3059\u3002\u79c1\u306f\u7d20\u6674\u3089\u3057\u3044\u3053\u3068\u3092\u805e\u3044\u305f\u3002|\u672c\u5f53\u306b\uff1f|\u3044\u3044\u3048\u3002|\u3042\u3042\u3002|\u79c1\u306e\u5b50\u5206\u305f\u3061\u304c\u3042\u306a\u305f\u306b\u53d7\u3051\u3055\u305b\u305f\u3059\u3079\u3066\u306e\u9762\u5012\u306b\u3064\u3044\u3066\u8b1d\u308a\u305f\u3044\u3002\u3053\u306e\u3088\u3046\u306a\u4e0d\u5e78\u306a\u8aa4\u89e3\u3002|\u5927\u4e08\u592b\u3001\u5fc3\u914d\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u6700\u5f8c\u306e\u884c\u65b9\u4e0d\u660e\u306b\u306a\u3063\u305f\u5b50\u4f9b\u3092\u898b\u3064\u3051\u3066\u5bb6\u306b\u5e30\u308a\u305f\u3044\u3060\u3051\u3067\u3059\u3002|\u7406\u89e3\u3067\u304d\u307e\u3059\u3002\u3057\u304b\u3057\u3001\u6700\u521d\u306b\u3001\u305d\u308c\u304c\u3042\u307e\u308a\u9762\u5012\u3067\u306a\u3044\u306a\u3089...|\u4f55\u3067\u3059\u304b\uff1f|\u6b7b\u306c\u6e96\u5099\u3092\u3057\u306a\u3055\u3044\uff01|\u3042\u3042\u3001\u52d8\u5f01\u3057\u3066\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: 'CN' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*SCREECH*|\u54e6\u5929\u54ea\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\u4f60\u597d\uff01\u6211\u662f\u7238\u7238\u841d\u535c\uff01|\u6b22\u8fce\u6765\u5230\u6211\u7684\u57ce\u5821\uff0c\u7238\u7238\u841d\u535c\uff01\u6211\u662f\u675c\u7eb3\u514b\u52cb\u7235\uff01\u5f88\u9ad8\u5174\u7ec8\u4e8e\u89c1\u5230\u4f60\u3002\u6211\u542c\u8bf4\u4e86\u5f88\u68d2\u7684\u4e8b\u60c5\u3002|\u771f\u7684\u5417?|\u4e0d\u3002|\u54e6\u3002|\u4e0d\u8fc7\u6211\u8fd8\u662f\u8981\u4e3a\u6211\u7684\u968f\u4ece\u7ed9\u4f60\u5e26\u6765\u7684\u9ebb\u70e6\u9053\u6b49\u3002\u8fd9\u662f\u4e2a\u4ee4\u4eba\u9057\u61be\u7684\u8bef\u4f1a\u3002|\u563f\uff0c\u5f88\u597d\uff0c\u4e0d\u7528\u62c5\u5fc3\u3002\u6211\u53ea\u60f3\u627e\u5230\u6211\u6700\u540e\u4e00\u4e2a\u5931\u8e2a\u7684\u5b69\u5b50\uff0c\u7136\u540e\u56de\u5bb6\u3002|\u53ef\u4ee5\u7406\u89e3\u3002\u4f46\u662f\u9996\u5148\uff0c\u5982\u679c\u4e0d\u662f\u5f88\u9ebb\u70e6\u2026\u2026|\u662f\u4ec0\u4e48\uff1f|\u51c6\u5907\u53bb\u6b7b\uff01|\u54e6\uff0c\u6765\u5427\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: 'KR' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*\uaf64\uc561*|\uc5b4 \uc774\ub7f0.'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\uc548\ub155\ud558\uc138\uc694! \uc804 \ub300\ub514\uc26c\uc5d0\uc694|\ub0b4 \uc694\uc0c8\uc5d0 \uc628 \uac78 \ud658\uc601\ud55c\ub2e4, \ub300\ub514\uc26c! \ub09c \ub85c\ub4dc \ub354\ub098\ud06c\ub2e4! \ub4dc\ub514\uc5b4 \ub9cc\ub098\uac8c \ub418\uc11c \ubc18\uac00\uc6cc\uc694. \uc9c0\uae08\uae4c\uc9c0 \uad49\uc7a5\ud55c \uc774\uc57c\uae30\ub97c \ub4e4\uc5c8\uc9c0.|\uc815\ub9d0\uc694?|\uc544\ub2c8.|\uc5b4..|\uadf8\ub807\uc9c0\ub9cc \ub0b4 \uc218\ud558\ub4e4\uc774 \ub110 \ubc29\ud574\ud55c \uac78 \ubaa8\ub450 \uc0ac\uacfc\ud558\uace0 \uc2f6\uad70. \ubd88\ud589\ud788\ub3c4 \uc624\ud574\uac00 \uc788\uc5c8\uc5b4.|\uad1c\ucc2e\uc544\uc694. \uac71\uc815\ud558\uc9c0 \ub9c8\uc138\uc694. \uc804 \uadf8\ub0e5 \uc2e4\uc885\ub41c \ub9c8\uc9c0\ub9c9 \uc544\uc774\ub97c \ucc3e\uc544 \uc9d1\uc5d0 \uac00\uace0 \uc2f6\uc5b4\uc694.|\uadf8\ub807\uad70. \ud558\uc9c0\ub9cc \uba3c\uc800 \ub108\ubb34 \ud3d0\uac00 \ub418\uc9c0 \uc54a\ub294\ub2e4\uba74...|\ubb34\uc2a8 \uc77c\uc774\uc138\uc694?|\uc8fd\uc744 \uc900\ube44\ub97c \ud574\ub77c!|\uc544 \uc81c\ubc1c.'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_DialogText', '*SCREECH*|Oh my gosh'),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
"Hello! I'm Dadish!|Welcome to my fortress, Dadish! I am Lord Durnak! It's nice to finally meet you. I've heard great things.|Really?|No.|Oh.|Though I do wish to apologize for all the bother my henchmen put you through. Such an unfortunate misunderstanding.|Hey that's all good, no worries. I just want to find my last missing kid and go home.|Understandable. But first, if it's not too much trouble...|What is it?|PREPARE TO DIE!|Oh come on."
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish')),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_Character2', 'Boss 4'),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_Parent', this.actor),
d.getLastCreatedActor().say('Dialog Box Logic', '_customEvent_Go')))));
}
},
_event_EntersScreen: function (a, b, c, e) {
var f = this;
this.wrapper.enabled &&
a &&
!this._HasEntered &&
!this._Go &&
((this._HasEntered = !0),
d.runLater(
700,
function (a) {
f._ReadyToTalk = !0;
},
this.actor
));
},
_event_FollowDude: function (a) {
var b = this;
this.wrapper.enabled &&
!this._Dead &&
((a = this._Dude),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
(this._FaceLeft && this._Dude.getXCenter() > this.actor.getXCenter() + 64
? (this.actor.setXVelocity(0),
(this._FaceLeft = !1),
this.actor.setAnimation('Turn'),
d.runLater(
100,
function (a) {
b.actor.setAnimation('Right');
b.actor.setXVelocity(b._Speed);
},
this.actor
))
: !this._FaceLeft &&
this._Dude.getXCenter() < this.actor.getXCenter() - 64 &&
(this.actor.setXVelocity(0),
(this._FaceLeft = !0),
this.actor.setAnimation('Turn'),
d.runLater(
100,
function (a) {
b.actor.setXVelocity(-b._Speed);
b.actor.setAnimation('Left');
},
this.actor
)));
},
_customEvent_dialogComplete: function () {
this._Go = !0;
k.engine.gameAttributes.h['Boss 4 Dialog Read'] = !0;
this.actor.setAnimation('Left');
d.loopSoundOnChannel(d.getSound(377), 16);
k.engine.getGameAttribute('Music Disabled')
? d.setVolumeForChannel(0, 16)
: k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16);
},
init: function () {
var a = this;
d.runLater(
200,
function (b) {
a.actor.makeAlwaysSimulate();
a._GravitySpeed = 48;
a._StartingY = a.actor.getY();
},
this.actor
);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHazard));
this.addListener(this.actor.whenUpdated, q(this, this._event_GroundandGravity));
this.addListener(this.actor.whenUpdated, q(this, this._event_Movement));
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_EntersScreen));
d.runPeriodically(1800, q(this, this._event_FollowDude), this.actor);
},
forwardMessage: function (a) {},
__class__: su
});
var tu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Button Number'] = '_ButtonNumber';
this._ButtonNumber = 0;
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h['Target Y'] = '_TargetY';
this._TargetY = 0;
this.nameMap.h.Fall = '_Fall';
this._Fall = !1;
this.nameMap.h['Origin Y'] = '_OriginY';
this._OriginY = 0;
this.nameMap.h.Pole = '_Pole';
this.nameMap.h['Origin X'] = '_OriginX';
this._OriginX = 0;
this.nameMap.h.Delay = '_Delay';
this._Delay = 0;
};
h['scripts.Design_248_248_BossSpikesLogic'] = tu;
tu.__name__ = 'scripts.Design_248_248_BossSpikesLogic';
tu.__super__ = u;
tu.prototype = r(u.prototype, {
_ButtonNumber: null,
_Go: null,
_TargetY: null,
_Fall: null,
_OriginY: null,
_Pole: null,
_OriginX: null,
_Delay: null,
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled &&
this._Fall &&
(this.actor.setYVelocity(Math.max(-48, this.actor.getYVelocity() - 2)),
this.actor.getY() <= this._TargetY &&
((this._Fall = !1),
this.actor.setYVelocity(0),
this.actor.setY(this._TargetY),
d.startShakingScreen(0.02, 0.05),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105)),
d.runLater(
500,
function (a) {
b.actor.moveTo(b.actor.getX(), b._OriginY, 0.3, J.quadInOut);
d.runLater(
320,
function (a) {
b._Go = !1;
},
b.actor
);
},
this.actor
)));
},
_event_ActorType: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(389);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
this._Fall &&
((this._Fall = !1),
this.actor.setYVelocity(0),
this.actor.setY(a.otherActor.getY() - 128),
d.startShakingScreen(0.02, 0.05),
this.actor.moveTo(this.actor.getX(), this._OriginY, 0.3, J.quadInOut),
d.runLater(
320,
function (a) {
b._Go = !1;
},
this.actor
));
},
_customEvent_Go: function () {
var a = this;
this._Go ||
((this._Go = !0),
this.actor.setAnimation('Shake'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(423)),
this.actor.getType() == d.getActorType(694)
? (d.createRecycledActor(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 68,
this.actor.getYCenter() - 8,
0
),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.createRecycledActor(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 68,
this.actor.getYCenter() - 8,
0
),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.createRecycledActor(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 68,
this.actor.getYCenter() - 8,
0
))
: this.actor.getType() == d.getActorType(696)
? (d.createRecycledActor(
d.getActorType(94),
this.actor.getX() + 64 - 8,
this.actor.getYCenter() - 8,
0
),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.createRecycledActor(
d.getActorType(94),
this.actor.getX() + 64 - 8,
this.actor.getYCenter() - 8,
0
),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.createRecycledActor(
d.getActorType(94),
this.actor.getX() + 64 - 8,
this.actor.getYCenter() - 8,
0
))
: (d.createRecycledActor(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + 64 - 8,
0
),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.createRecycledActor(
d.getActorType(94),
this.actor.getX() - 8,
this.actor.getY() + 64 - 8,
0
),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.createRecycledActor(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getY() + 64 - 8,
0
)),
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut),
d.runLater(
1e3 * this._Delay,
function (b) {
a.actor.setAnimation('Normal');
a.actor.getType() == d.getActorType(694) || a.actor.getType() == d.getActorType(696)
? (k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(424)),
a.actor.setX(a._OriginX),
a.actor.setY(a._OriginY),
a.actor.getType() == d.getActorType(694)
? (a.actor.moveTo(a._OriginX + 48, a._OriginY, 0.2, J.elasticOut),
d.runLater(
1e3,
function (b) {
a.actor.say('Boss Spikes Logic', '_customEvent_return');
},
a.actor
))
: (a.actor.moveTo(a._OriginX - 48, a._OriginY, 0.2, J.elasticOut),
d.runLater(
1e3,
function (b) {
a.actor.say('Boss Spikes Logic', '_customEvent_return');
},
a.actor
)))
: ((a._Fall = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(424)));
},
this.actor
));
},
_customEvent_return: function () {
var a = this;
this.actor.moveTo(this._OriginX, this._OriginY, 0.1, J.linear);
d.runLater(
400,
function (b) {
a._Go = !1;
},
this.actor
);
},
init: function () {
this.actor.makeAlwaysSimulate();
this._OriginY = this.actor.getY();
this._OriginX = this.actor.getX();
this._TargetY = this.actor.getY() - 64;
this.actor.getType() == d.getActorType(694) || this.actor.getType() == d.getActorType(696)
? (this._Delay = 0.6)
: (this._Delay = 0.3);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_ActorType));
},
forwardMessage: function (a) {},
__class__: tu
});
var uu = function (a, b) {
d.call(this);
this.nameMap.h['Left Text'] = '_LeftText';
this._LeftText = '';
this.nameMap.h['Right Text'] = '_RightText';
this._RightText = '';
this.nameMap.h['Bottom Letterbox'] = '_BottomLetterbox';
this.nameMap.h['Top Letterbox'] = '_TopLetterbox';
this.nameMap.h['Title Left'] = '_TitleLeft';
this.nameMap.h['Title Right'] = '_TitleRight';
this.nameMap.h['Font To Use'] = '_FontToUse';
this.nameMap.h['Show Skip Text'] = '_ShowSkipText';
this._ShowSkipText = !1;
this.nameMap.h['Can Skip'] = '_CanSkip';
this._CanSkip = !1;
this.nameMap.h['Button Input'] = '_ButtonInput';
this._ButtonInput = '';
this.nameMap.h['Button Pressed'] = '_ButtonPressed';
this._ButtonPressed = !1;
this.nameMap.h['Skip Text Mid Y'] = '_SkipTextMidY';
this._SkipTextMidY = 0;
this.nameMap.h['No Skip'] = '_NoSkip';
this._NoSkip = !1;
this.nameMap.h.Finished = '_Finished';
this._Finished = !1;
};
h['scripts.Design_255_255_CutsceneLogic'] = uu;
uu.__name__ = 'scripts.Design_255_255_CutsceneLogic';
uu.__super__ = sa;
uu.prototype = r(sa.prototype, {
_LeftText: null,
_RightText: null,
_BottomLetterbox: null,
_TopLetterbox: null,
_TitleLeft: null,
_TitleRight: null,
_FontToUse: null,
_ShowSkipText: null,
_CanSkip: null,
_ButtonInput: null,
_ButtonPressed: null,
_SkipTextMidY: null,
_NoSkip: null,
_Finished: null,
_event_AnyButton: function (a) {
var b = this;
!this.wrapper.enabled ||
((this._ButtonInput = a),
('0' != this._ButtonInput &&
'1' != this._ButtonInput &&
'2' != this._ButtonInput &&
'3' != this._ButtonInput) ||
this._NoSkip ||
this._ButtonPressed) ||
(this._CanSkip
? this._CanSkip &&
'0' == this._ButtonInput &&
((this._ButtonPressed = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(119)),
d.sayToScene('Cutscene Logic', '_customEvent_Finished'))
: ((this._ShowSkipText = this._ButtonPressed = !0),
d.runLater(
100,
function (a) {
b._ButtonPressed = !1;
b._CanSkip = !0;
},
null
)));
},
_event_MultiTouch: function (a) {
var b = this;
!this.wrapper.enabled ||
this._NoSkip ||
this._ButtonPressed ||
(this._CanSkip
? this._CanSkip &&
((this._ButtonPressed = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(119)),
d.sayToScene('Cutscene Logic', '_customEvent_Finished'))
: ((this._ShowSkipText = this._ButtonPressed = !0),
d.runLater(
100,
function (a) {
b._ButtonPressed = !1;
b._CanSkip = !0;
},
null
)));
},
_event_Keyboard: function (a, b) {
var c = this;
this.wrapper.enabled &&
a &&
!this._NoSkip &&
!this._ButtonPressed &&
(this._CanSkip
? this._CanSkip &&
((this._ButtonPressed = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(119)),
d.sayToScene('Cutscene Logic', '_customEvent_Finished'))
: ((this._ShowSkipText = this._ButtonPressed = !0),
d.runLater(
100,
function (a) {
c._ButtonPressed = !1;
c._CanSkip = !0;
},
null
)));
},
_event_Drawing: function (a, b, c) {
if (
this.wrapper.enabled &&
((b = this._BottomLetterbox),
(d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
this._CanSkip &&
!this._ButtonPressed)
) {
b = d.getFont(526);
null != b && b != a.font && (a.font = b);
if (k.engine.getGameAttribute('MOBILE MODE')) {
c = this._SkipTextMidY - d.getFont(441).getHeight() / k.SCALE / 2;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + 42 * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + 42 * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + 42 * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
var e = null,
f = a.font;
f = 'TAP TO SKIP:' + f.ID + ':' + a.alpha + ':' + f.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)) {
var g = W.drawnStringCache.h[f];
g.lifetime = 5;
e = g.img;
} else {
g = a.font.font.getTextWidth('TAP TO SKIP', a.font.letterSpacing, a.font.fontScale);
var h = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < g &&
0 < h &&
((e = new ja(g, h, !0, 0)),
a.font.font.renderToImg(
e,
'TAP TO SKIP',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f));
}
} else
(c = this._SkipTextMidY - 12),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + 42 * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + 42 * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + 42 * a.scaleX), (c = a.y + c * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, c),
(e = null),
(f = a.font),
(f = '-:' + f.ID + ':' + a.alpha + ':' + f.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)
? ((g = W.drawnStringCache.h[f]), (g.lifetime = 5), (e = g.img))
: ((g = a.font.font.getTextWidth('-', a.font.letterSpacing, a.font.fontScale)),
(h = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < g &&
0 < h &&
((e = new ja(g, h, !0, 0)),
a.font.font.renderToImg(
e,
'-',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f))),
null != e &&
(a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, e.width, e.height),
a.graphics.endFill()),
(b = 42 + a.font.getTextWidth('- ') / k.SCALE),
(c = this._SkipTextMidY - d.getFont(441).getHeight() / k.SCALE / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, c),
(e = null),
(f = a.font),
(f = 'SKIP:' + f.ID + ':' + a.alpha + ':' + f.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)
? ((g = W.drawnStringCache.h[f]), (g.lifetime = 5), (e = g.img))
: ((g = a.font.font.getTextWidth('SKIP', a.font.letterSpacing, a.font.fontScale)),
(h = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < g &&
0 < h &&
((e = new ja(g, h, !0, 0)),
a.font.font.renderToImg(
e,
'SKIP',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f)));
null != e &&
(a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, e.width, e.height),
a.graphics.endFill());
}
},
_customEvent_Finished: function () {
var a = this;
this._Finished ||
((this._Finished = !0),
d.runLater(
200,
function (b) {
a._TopLetterbox.moveBy(0, 0.309 * d.getScreenHeight(), 0.4, J.quadIn);
a._BottomLetterbox.moveBy(0, -(0.309 * d.getScreenHeight()), 0.4, J.quadIn);
b = a._TitleLeft;
if (
d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)
)
a._TitleLeft.moveBy(
-(a._FontToUse.getTextWidth(a._LeftText) / k.SCALE + 42),
0,
0.4,
J.quadIn
),
a._TitleRight.moveBy(
a._FontToUse.getTextWidth(a._RightText) / k.SCALE + 42,
0,
0.4,
J.quadIn
);
d.runLater(
700,
function (a) {
if ('Forest Cutscene' == d.getCurrentSceneName())
gb.commercialBreak(function () {
var a = Fa.get().scenes.h[13].getID(),
b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e));
});
else if ('Beach Cutscene' == d.getCurrentSceneName()) {
a = Fa.get().scenes.h[23].getID();
var b = 0,
c = 0,
g = 0;
null == g && (g = 0);
null == c && (c = 0);
null == b && (b = 0);
var k = d.createFadeOut(0.1, (b << 16) | (c << 8) | g);
g = c = b = 0;
null == g && (g = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | g));
} else
'Snow Cutscene' == d.getCurrentSceneName()
? ((a = Fa.get().scenes.h[33].getID()),
(g = c = b = 0),
null == g && (g = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | g)),
(g = c = b = 0),
null == g && (g = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | g)))
: 'Cave Cutscene' == d.getCurrentSceneName()
? ((a = Fa.get().scenes.h[14].getID()),
(g = c = b = 0),
null == g && (g = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | g)),
(g = c = b = 0),
null == g && (g = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | g)))
: 'Castle Cutscene' == d.getCurrentSceneName()
? ((a = Fa.get().scenes.h[43].getID()),
(g = c = b = 0),
null == g && (g = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | g)),
(g = c = b = 0),
null == g && (g = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | g)))
: 'Intro Cutscene' == d.getCurrentSceneName() &&
((a = Fa.get().scenes.h[53].getID()),
(g = c = b = 0),
null == g && (g = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | g)),
(g = c = b = 0),
null == g && (g = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.1, (b << 16) | (c << 8) | g)));
},
null
);
},
null
));
},
init: function () {
var a = this;
d.engine.unpause();
this._NoSkip = !0;
d.runLater(
400,
function (b) {
a._NoSkip = !1;
a._CanSkip = !0;
},
null
);
'JP' == k.engine.getGameAttribute('Language')
? ((this._FontToUse = d.getFont(606)),
'Forest Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\u30a8\u30ea\u30a2 1'),
(this._RightText = '\u30a2\u30d0\u30ed\u306e\u68ee'))
: 'Beach Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\u30a8\u30ea\u30a2 2'),
(this._RightText = '\u30b9\u30c8\u30e9\u30f3\u30c9\u30d3\u30fc\u30c1'))
: 'Snow Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\u30a8\u30ea\u30a2 3'),
(this._RightText = '\u30e2\u30f3\u30c8\u5c71'))
: 'Cave Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\u30a8\u30ea\u30a2 4'),
(this._RightText = '\u30d5\u30a1\u30f3\u30b4\u6d1e\u7a9f'))
: 'Castle Cutscene' == d.getCurrentSceneName() &&
((this._LeftText = '\u30a8\u30ea\u30a2 5'),
(this._RightText = '\u30ab\u30b9\u30c6\u30ed\u57ce')))
: 'CN' == k.engine.getGameAttribute('Language')
? ((this._FontToUse = d.getFont(604)),
'Forest Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\u533a\u57df 1'),
(this._RightText = '\u963f\u5df4\u7f57\u68ee\u6797'))
: 'Beach Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\u533a\u57df 2'),
(this._RightText = '\u65af\u7279\u5170\u591a\u6d77\u6ee9'))
: 'Snow Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\u533a\u57df 3'), (this._RightText = '\u8499\u6258\u5c71'))
: 'Cave Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\u533a\u57df 4'), (this._RightText = '\u771f\u83cc\u6d1e'))
: 'Castle Cutscene' == d.getCurrentSceneName() &&
((this._LeftText = '\u533a\u57df 5'),
(this._RightText = '\u5361\u65af\u7279\u6d1b\u57ce\u5821')))
: 'KR' == k.engine.getGameAttribute('Language')
? ((this._FontToUse = d.getFont(605)),
'Forest Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\uc9c0\uc5ed 1'),
(this._RightText = '\uc544\ubc14\ub85c \uc232'))
: 'Beach Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\uc9c0\uc5ed 2'),
(this._RightText = '\uc2a4\ud2b8 \ub780\ub3c4 \ube44\uce58'))
: 'Snow Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\uc9c0\uc5ed 3'),
(this._RightText = '\ubaac\ud1a0 \ub9c8\uc6b4\ud2f4'))
: 'Cave Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = '\uc9c0\uc5ed 4'),
(this._RightText = '\ud391\uace0 \ub3d9\uad74'))
: 'Castle Cutscene' == d.getCurrentSceneName() &&
((this._LeftText = '\uc9c0\uc5ed 5'),
(this._RightText = '\uce74\uc2a4\ud154\ub85c \uc131')))
: ((this._FontToUse = d.getFont(441)),
'Forest Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = 'WORLD 1'), (this._RightText = 'ABARO WOODS'))
: 'Beach Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = 'WORLD 2'), (this._RightText = 'STRANDO BEACH'))
: 'Snow Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = 'WORLD 3'), (this._RightText = 'MONTO MOUNTAIN'))
: 'Cave Cutscene' == d.getCurrentSceneName()
? ((this._LeftText = 'WORLD 4'), (this._RightText = 'FUNGO CAVE'))
: 'Castle Cutscene' == d.getCurrentSceneName() &&
((this._LeftText = 'WORLD 5'), (this._RightText = 'KASTELO FORTRESS')));
d.engine.moveCamera(d.getSceneWidth() / 2, d.getSceneHeight() / 2);
d.createRecycledActor(d.getActorType(437), d.getScreenX() - 5, d.getScreenY() - 5, 0);
this._TopLetterbox = d.getLastCreatedActor();
d.createRecycledActor(
d.getActorType(437),
d.getScreenX() - 5,
d.getScreenY() + d.getScreenHeight() / 2,
0
);
this._BottomLetterbox = d.getLastCreatedActor();
this._SkipTextMidY = d.getScreenHeight() - 48;
d.runLater(
300,
function (b) {
a._TopLetterbox.moveBy(0, -(0.309 * d.getScreenHeight()), 0.4, J.backOut);
a._BottomLetterbox.moveBy(0, 0.309 * d.getScreenHeight(), 0.4, J.backOut);
},
null
);
d.runLater(
900,
function (b) {
'NONE' != a._LeftText &&
(d.createRecycledActor(
d.getActorType(435),
d.getScreenX() - 199,
d.getScreenY() + ((0.191 * d.getScreenHeight()) / 2 - 11),
0
),
(a._TitleLeft = d.getLastCreatedActor()),
a._TitleLeft.setValue('Cutscene Title Logic', '_Text', a._LeftText),
a._TitleLeft.moveBy(
a._FontToUse.getTextWidth(a._LeftText) / k.SCALE + 42,
0,
0.4,
J.quadOut
),
'Beach Cutscene' == d.getCurrentSceneName()
? a._TitleLeft.setAnimation('Yellow')
: 'Snow Cutscene' == d.getCurrentSceneName()
? a._TitleLeft.setAnimation('Blue')
: 'Cave Cutscene' == d.getCurrentSceneName()
? a._TitleLeft.setAnimation('Brown')
: 'Castle Cutscene' == d.getCurrentSceneName() &&
a._TitleLeft.setAnimation('Grey'),
d.createRecycledActor(
d.getActorType(439),
d.getScreenX() + d.getScreenWidth(),
a._BottomLetterbox.getY() + (0.191 * d.getScreenHeight()) / 2 - 11,
0
),
(a._TitleRight = d.getLastCreatedActor()),
a._TitleRight.setValue('Cutscene Title Logic', '_Text', a._RightText),
a._TitleRight.moveBy(
-(a._FontToUse.getTextWidth(a._RightText) / k.SCALE + 42),
0,
0.4,
J.quadOut
),
'Beach Cutscene' == d.getCurrentSceneName()
? a._TitleRight.setAnimation('Yellow')
: 'Snow Cutscene' == d.getCurrentSceneName()
? a._TitleRight.setAnimation('Blue')
: 'Cave Cutscene' == d.getCurrentSceneName()
? a._TitleRight.setAnimation('Brown')
: 'Castle Cutscene' == d.getCurrentSceneName() &&
a._TitleRight.setAnimation('Grey'));
},
null
);
this.addListener(d.engine.whenAnyGamepadPressed, q(this, this._event_AnyButton));
this.addListener(d.engine.whenMTStarted, q(this, this._event_MultiTouch));
this.addListener(
d.engine.whenKeyPressedEvents.getOrCreateEvent('enter'),
q(this, this._event_Keyboard)
);
this.addListener(d.engine.whenDrawing, q(this, this._event_Drawing));
},
forwardMessage: function (a) {},
__class__: uu
});
var vu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h.Text = '_Text';
this._Text = '';
};
h['scripts.Design_258_258_CutsceneTitleLogic'] = vu;
vu.__name__ = 'scripts.Design_258_258_CutsceneTitleLogic';
vu.__super__ = u;
vu.prototype = r(u.prototype, {
_Text: null,
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
var e =
'JP' == k.engine.getGameAttribute('Language')
? d.getFont(606)
: 'CN' == k.engine.getGameAttribute('Language')
? d.getFont(604)
: 'KR' == k.engine.getGameAttribute('Language')
? d.getFont(605)
: d.getFont(441);
null != e && e != a.font && (a.font = e);
if (this.actor.getType() == d.getActorType(435)) {
e = this._Text;
b = this.actor.getWidth() - (a.font.getTextWidth(this._Text) / k.SCALE + 14);
c = this.actor.getHeight() / 2 - a.font.getHeight() / k.SCALE / 2;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
var f = null,
g = a.font;
g = e + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g))
(e = W.drawnStringCache.h[g]), (e.lifetime = 5), (f = e.img);
else {
var h = a.font.font.getTextWidth(e, a.font.letterSpacing, a.font.fontScale),
l = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
e,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(e = new Mb()),
(e.img = f),
(e.lifetime = 5),
(W.drawnStringCache.h[g] = e),
W.drawnStringCacheKeys.push(g));
}
} else
(e = this._Text),
(c = this.actor.getHeight() / 2 - a.font.getHeight() / k.SCALE / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + 14 * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + 14 * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + 14 * a.scaleX), (c = a.y + c * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, c),
(f = null),
(g = a.font),
(g = e + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((e = W.drawnStringCache.h[g]), (e.lifetime = 5), (f = e.img))
: ((h = a.font.font.getTextWidth(e, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
e,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(e = new Mb()),
(e.img = f),
(e.lifetime = 5),
(W.drawnStringCache.h[g] = e),
W.drawnStringCacheKeys.push(g)));
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, f.width, f.height),
a.graphics.endFill());
}
},
init: function () {
this.actor.makeAlwaysSimulate();
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
},
forwardMessage: function (a) {},
__class__: vu
});
var wu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h.Speed = '_Speed';
this._Speed = 0;
this.nameMap.h['Path String'] = '_PathString';
this._PathString = '';
this.nameMap.h['Move Count'] = '_MoveCount';
this._MoveCount = 0;
this.nameMap.h['Current Move'] = '_CurrentMove';
this._CurrentMove = '';
this.nameMap.h['Current Direction'] = '_CurrentDirection';
this._CurrentDirection = '';
this.nameMap.h['Current Distance'] = '_CurrentDistance';
this._CurrentDistance = 0;
this.nameMap.h.Ease = '_Ease';
this._Ease = !1;
this.nameMap.h['Target X'] = '_TargetX';
this._TargetX = 0;
this.nameMap.h['Target Y'] = '_TargetY';
this._TargetY = 0;
this.nameMap.h['Current Distance String'] = '_CurrentDistanceString';
this._CurrentDistanceString = '';
this.nameMap.h['Speed Tracker'] = '_SpeedTracker';
this.nameMap.h['Tracker X Speed'] = '_TrackerXSpeed';
this._TrackerXSpeed = 0;
this.nameMap.h['Previous Direction'] = '_PreviousDirection';
this._PreviousDirection = '';
this.nameMap.h.Delay = '_Delay';
this._Delay = 0;
this.nameMap.h['Touch To Start'] = '_TouchToStart';
this._TouchToStart = !1;
this.nameMap.h['Touch To Start Reset'] = '_TouchToStartReset';
this._TouchToStartReset = !1;
};
h['scripts.Design_25_25_SetPath'] = wu;
wu.__name__ = 'scripts.Design_25_25_SetPath';
wu.__super__ = u;
wu.prototype = r(u.prototype, {
_Speed: null,
_PathString: null,
_MoveCount: null,
_CurrentMove: null,
_CurrentDirection: null,
_CurrentDistance: null,
_Ease: null,
_TargetX: null,
_TargetY: null,
_CurrentDistanceString: null,
_SpeedTracker: null,
_TrackerXSpeed: null,
_PreviousDirection: null,
_Delay: null,
_TouchToStart: null,
_TouchToStartReset: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
'' != this._PathString &&
((a = this._SpeedTracker),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
(this._TrackerXSpeed = this._SpeedTracker.getXVelocity());
},
_event_TouchToStart: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorType(2);
var e = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == e || c == a;
} else c = !1;
c &&
this._TouchToStart &&
((this._TouchToStart = !1),
d.runLater(
1e3 * this._Delay,
function (a) {
b.actor.say('Set Path', '_customEvent_Move');
},
this.actor
));
},
_event_TouchToStartTrigger: function (a) {
var b = this;
this.wrapper.enabled &&
this._TouchToStart &&
((this._TouchToStart = !1),
d.runLater(
1e3 * this._Delay,
function (a) {
b.actor.say('Set Path', '_customEvent_Move');
},
this.actor
));
},
_customEvent_Move: function () {
var a = this;
if ('' != this._PathString) {
this._CurrentMove = '' + this._PathString.split('|')[this._MoveCount | 0];
var b = this._CurrentDirection;
if (d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b))
this._PreviousDirection = this._CurrentDirection;
this._CurrentDirection = this._CurrentMove.charAt(0);
b = this._CurrentDistanceString =
2 < this._CurrentMove.length
? this._CurrentMove.charAt(1) + this._CurrentMove.charAt(2)
: this._CurrentMove.charAt(1);
this._CurrentDistance =
null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b));
'U' == this._CurrentDirection
? ((this._TargetX = 0), (this._TargetY = -32 * this._CurrentDistance))
: 'D' == this._CurrentDirection
? ((this._TargetX = 0), (this._TargetY = 32 * this._CurrentDistance))
: 'L' == this._CurrentDirection
? ((this._TargetX = -32 * this._CurrentDistance), (this._TargetY = 0))
: 'R' == this._CurrentDirection &&
((this._TargetX = 32 * this._CurrentDistance), (this._TargetY = 0));
'P' != this._CurrentDirection &&
'T' != this._CurrentDirection &&
(this._Ease
? this.actor.moveBy(
this._TargetX,
this._TargetY,
this._Speed * this._CurrentDistance,
J.quadInOut
)
: this.actor.moveBy(
this._TargetX,
this._TargetY,
this._Speed * this._CurrentDistance,
J.linear
));
if ('T' == this._CurrentDirection)
if ('U' == this._PreviousDirection) {
if (this.actor.isOnScreen()) {
b = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); b < c.length; ) {
var e = c[b];
++b;
}
d.startShakingScreen(0.005, 0.05);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, 32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() - 8,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
}
} else if ('D' == this._PreviousDirection) {
if (this.actor.isOnScreen()) {
b = 0;
for (c = d.getActorsOfType(d.getActorType(2)); b < c.length; )
(e = c[b]),
++b,
null == e ||
e.dead ||
e.recycled ||
(this.actor.getXCenter(),
e.getXCenter(),
d.runLater(150, function (a) {}, this.actor));
d.startShakingScreen(0.005, 0.05);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
}
} else if ('L' == this._PreviousDirection) {
if (this.actor.isOnScreen()) {
b = 0;
for (c = d.getActorsOfType(d.getActorType(2)); b < c.length; )
(e = c[b]),
++b,
null == e ||
e.dead ||
e.recycled ||
(this.actor.getXCenter(),
e.getXCenter(),
d.runLater(150, function (a) {}, this.actor));
d.startShakingScreen(0.005, 0.05);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX(),
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 0, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX(),
this.actor.getY() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX(),
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
}
} else if ('R' == this._PreviousDirection && this.actor.isOnScreen()) {
b = 0;
for (c = d.getActorsOfType(d.getActorType(2)); b < c.length; )
(e = c[b]),
++b,
null == e ||
e.dead ||
e.recycled ||
(this.actor.getXCenter(),
e.getXCenter(),
d.runLater(150, function (a) {}, this.actor));
d.startShakingScreen(0.005, 0.05);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 0, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getY() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
}
d.runLater(
1e3 * (this._Speed * Math.max(1, this._CurrentDistance) + 0.04),
function (b) {
a.actor.say('Set Path', '_customEvent_Move');
},
this.actor
);
this._MoveCount == this._PathString.split('|').length - 1
? (this._MoveCount = 0)
: (this._MoveCount += 1);
}
},
init: function () {
var a = this;
'' != this._PathString &&
0 < this._Speed &&
(d.createRecycledActor(
d.getActorType(64),
this.actor.getXCenter(),
this.actor.getYCenter(),
0
),
(this._SpeedTracker = d.getLastCreatedActor()),
this._SpeedTracker.disableActorDrawing(),
this._SpeedTracker.setValue('Follow Target', '_TargetActor', this.actor),
this._TouchToStart ||
d.runLater(
1e3 * this._Delay,
function (b) {
a.actor.say('Set Path', '_customEvent_Move');
},
this.actor
));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_TouchToStart));
this.addListenerWithKey2(
d.engine.whenCollidedEvents,
d.getActorType(2).ID,
d.getActorType(417).ID,
q(this, this._event_TouchToStartTrigger)
);
},
forwardMessage: function (a) {},
__class__: wu
});
var xu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h.Bounce = '_Bounce';
this._Bounce = !1;
this.nameMap.h['Back and Forth'] = '_BackandForth';
this._BackandForth = !1;
this.nameMap.h.Left = '_Left';
this._Left = !1;
this.nameMap.h['Set Colour'] = '_SetColour';
this._SetColour = !1;
this.nameMap.h.Colour = '_Colour';
this._Colour = 0;
this.nameMap.h['High Jump'] = '_HighJump';
this._HighJump = !1;
this.nameMap.h.Surprised = '_Surprised';
this._Surprised = !1;
this.nameMap.h.Balloon = '_Balloon';
this.nameMap.h.Exclamation = '_Exclamation';
this.nameMap.h['Exclamation Created'] = '_ExclamationCreated';
this._ExclamationCreated = !1;
this.nameMap.h['Off Screen'] = '_OffScreen';
this._OffScreen = !1;
this.nameMap.h.Stop = '_Stop';
this._Stop = !1;
this.nameMap.h.Stopped = '_Stopped';
this._Stopped = !1;
this.nameMap.h['Delay Bounce'] = '_DelayBounce';
this._DelayBounce = !1;
this.nameMap.h['Go Right'] = '_GoRight';
this._GoRight = !1;
};
h['scripts.Design_266_266_CutsceneBabyLogic'] = xu;
xu.__name__ = 'scripts.Design_266_266_CutsceneBabyLogic';
xu.__super__ = u;
xu.prototype = r(u.prototype, {
_GravitySpeed: null,
_Bounce: null,
_BackandForth: null,
_Left: null,
_SetColour: null,
_Colour: null,
_HighJump: null,
_Surprised: null,
_Balloon: null,
_Exclamation: null,
_ExclamationCreated: null,
_OffScreen: null,
_Stop: null,
_Stopped: null,
_DelayBounce: null,
_GoRight: null,
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled &&
(!this._OffScreen &&
this.actor.getX() > d.getScreenX() + d.getScreenWidth() &&
'Ending' != d.getCurrentSceneName() &&
((this._OffScreen = !0),
d.runLater(
500,
function (a) {
d.recycleActor(b.actor);
},
this.actor
)),
this._Stop && this.actor.setXVelocity(0));
},
_event_ActorGroup: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorGroup(1);
var e = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == e || c == a;
} else c = !1;
c &&
(this._DelayBounce ||
(this._Surprised
? (this.actor.setXVelocity(0),
this._ExclamationCreated ||
(this.actor.setXVelocity(0),
this.actor.setYVelocity(0),
this.actor.setAnimation(
'' + this.actor.getAnimation().split(' ')[0] + ' Right'
),
(this._ExclamationCreated = !0),
d.createRecycledActor(
d.getActorType(131),
this.actor.getXCenter() - 14,
this.actor.getY() - 28,
0
),
(this._Exclamation = d.getLastCreatedActor()),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(183)),
d.runLater(
500,
function (a) {
d.recycleActor(b._Exclamation);
},
this.actor
)))
: this._Stop
? this._Stopped ||
((this._Stopped = !0), this.actor.setXVelocity(0), this.actor.setYVelocity(0))
: this._Bounce ||
((this._Bounce = !0),
this.actor.isOnScreen() &&
(k.engine.getGameAttribute('Sound Disabled') ||
this._BackandForth ||
'Ending' == d.getCurrentSceneName() ||
d.playSound(d.getSound(220))),
this.actor.setXVelocity(0),
this.actor.setYVelocity(0),
this._Left
? this.actor.setAnimation(
'' + this.actor.getAnimation().split(' ')[0] + ' Left Crouch'
)
: this.actor.setAnimation(
'' + this.actor.getAnimation().split(' ')[0] + ' Right Crouch'
),
d.runLater(
100,
function (a) {
'Castle Cutscene' == d.getCurrentSceneName()
? b.actor.setXVelocity(40)
: b._BackandForth
? b._Left
? (b.actor.setXVelocity(10), (b._Left = !1))
: ((b._Left = !0), b.actor.setXVelocity(-10))
: 'Ending' == d.getCurrentSceneName()
? b.actor.setXVelocity(15.5)
: (b.actor.setXVelocity(30),
'Intro Cutscene' == d.getCurrentSceneName() && (b._GoRight = !0));
b._HighJump ? b.actor.setYVelocity(-40) : b.actor.setYVelocity(-30);
b._Left
? b.actor.setAnimation(
'' + b.actor.getAnimation().split(' ')[0] + ' Left Jump'
)
: b.actor.setAnimation(
'' + b.actor.getAnimation().split(' ')[0] + ' Right Jump'
);
d.runLater(
100,
function (a) {
b._Bounce = !1;
},
b.actor
);
},
this.actor
))),
this._GoRight && this.actor.setXVelocity(30));
},
_event_Balloon: function (a) {
this.wrapper.enabled &&
(this._Surprised
? (a = !1)
: ((a = this._Balloon),
(a = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a)),
a &&
this._Balloon.getX() > this.actor.getXCenter() &&
((this._Balloon = d.getDefaultValue(this._Balloon)),
(this._Surprised = !0),
this.actor.setXVelocity(0)));
},
_event_Gravity: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
k.engine.getGameAttribute('Possum Mode') && ((this._SetColour = !0), (this._Colour = 6));
this._SetColour &&
(this._Left
? this.actor.setAnimation('' + this._Colour + ' Left Jump')
: this.actor.setAnimation('' + this._Colour + ' Right Jump'));
this._DelayBounce &&
(this.actor.setXVelocity(15.5),
d.runLater(
300,
function (b) {
a._DelayBounce = !1;
},
this.actor
));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_ActorGroup));
d.runPeriodically(50, q(this, this._event_Balloon), this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Gravity));
},
forwardMessage: function (a) {},
__class__: xu
});
var yu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Button Number'] = '_ButtonNumber';
this._ButtonNumber = 0;
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h['Go Delay'] = '_GoDelay';
this._GoDelay = 0;
this.nameMap.h['Lock list'] = '_Locklist';
this.nameMap.h['Boss Hole Sensor'] = '_BossHoleSensor';
this._BossHoleSensor = !1;
this.nameMap.h.Reset = '_Reset';
this._Reset = !1;
this.nameMap.h['Turn Block'] = '_TurnBlock';
};
h['scripts.Design_28_28_ButtonBlockLogic'] = yu;
yu.__name__ = 'scripts.Design_28_28_ButtonBlockLogic';
yu.__super__ = u;
yu.prototype = r(u.prototype, {
_ButtonNumber: null,
_Go: null,
_GoDelay: null,
_Locklist: null,
_BossHoleSensor: null,
_Reset: null,
_TurnBlock: null,
_customEvent_Go: function () {
var a = this;
this._Go ||
((this._Go = !0),
d.runLater(
1e3 * this._GoDelay,
function (b) {
a.actor.setAnimation('Turn');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(111));
b = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); b < c.length; ) {
var e = c[b];
++b;
null == e ||
e.dead ||
e.recycled ||
(a.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Block Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Block Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
}
d.createRecycledActorOnLayer(
d.getActorType(381),
a.actor.getX(),
a.actor.getY(),
d.engine.getLayerById(a.actor.getLayerID())
);
a._TurnBlock = d.getLastCreatedActor();
a._TurnBlock.spinBy(180, 0.2, J.quadInOut);
if ('Level 12' == d.getCurrentSceneName())
for (b = 0, c = d.getActorsOfType(d.getActorType(609)); b < c.length; )
(e = c[b]), ++b, null == e || e.dead || e.recycled || d.recycleActor(e);
d.runLater(
100,
function (a) {
d.startShakingScreen(0.005, 0.05);
},
a.actor
);
d.runLater(
200,
function (b) {
d.recycleActor(a._TurnBlock);
a.actor.setAnimation('Open');
},
a.actor
);
},
this.actor
));
},
_customEvent_Reset: function () {
var a = this;
this._Go &&
!this._Reset &&
((this._Reset = !0),
(this._Go = !1),
this.actor.setAnimation('Turn'),
this.actor.setFilter([d.createBrightnessFilter(100)]),
this.actor.spinTo(0, 0.2, J.quadInOut),
d.runLater(
210,
function (b) {
a.actor.clearFilters();
a.actor.setAnimation('Closed');
a._Reset = !1;
},
this.actor
));
},
init: function () {
this.actor.makeAlwaysSimulate();
},
forwardMessage: function (a) {},
__class__: yu
});
var zu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Button Number'] = '_ButtonNumber';
this._ButtonNumber = 0;
this.nameMap.h.Unlocked = '_Unlocked';
this._Unlocked = !1;
this.nameMap.h['Lock list'] = '_Locklist';
this.nameMap.h['Dude Check'] = '_DudeCheck';
this._DudeCheck = !1;
this.nameMap.h['Button Is Pressed'] = '_ButtonIsPressed';
this._ButtonIsPressed = !1;
this.nameMap.h['Button List'] = '_ButtonList';
this.nameMap.h['All Buttons Are Down'] = '_AllButtonsAreDown';
this._AllButtonsAreDown = !1;
this.nameMap.h.Hide = '_Hide';
this._Hide = !1;
this.nameMap.h.Disable = '_Disable';
this._Disable = !1;
this.nameMap.h['Boss 5 Left'] = '_Boss5Left';
this._Boss5Left = !1;
};
h['scripts.Design_29_29_ButtonLogic'] = zu;
zu.__name__ = 'scripts.Design_29_29_ButtonLogic';
zu.__super__ = u;
zu.prototype = r(u.prototype, {
_ButtonNumber: null,
_Unlocked: null,
_Locklist: null,
_DudeCheck: null,
_ButtonIsPressed: null,
_ButtonList: null,
_AllButtonsAreDown: null,
_Hide: null,
_Disable: null,
_Boss5Left: null,
_event_HitsDude: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(2);
var c = a.otherActor.getType();
a = a.otherActor.getGroup();
b = b == c || b == a;
} else b = !1;
!b || this._Hide || this._Disable || (this._DudeCheck = !0);
},
_event_HitsCrate: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(32);
var c = a.otherActor.getType();
a = a.otherActor.getGroup();
b = b == c || b == a;
} else b = !1;
b && !this._Hide && (this._DudeCheck = !0);
},
_event_HitsBigCrate: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(379);
var c = a.otherActor.getType();
a = a.otherActor.getGroup();
b = b == c || b == a;
} else b = !1;
b && !this._Hide && (this._DudeCheck = !0);
},
_event_Updating: function (a) {
if (this.wrapper.enabled && !this._Hide && !this._Unlocked) {
if (this._DudeCheck) {
if (!this._ButtonIsPressed) {
this._ButtonIsPressed = !0;
k.engine.getGameAttribute('Sound Disabled') ||
(d.playSound(d.getSound(107)),
d.setValueForScene('Stage Logic', '_RumbleName', 'Item'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
a = 0;
for (var b = d.getActorsOfType(d.getActorType(38)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
(c.getValue('Button Logic', '_ButtonNumber') == this._ButtonNumber &&
this._ButtonList.push(c));
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(40)); a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
(c.getValue('Button Block Logic', '_ButtonNumber') == this._ButtonNumber &&
this._Locklist.push(c));
this.actor.setAnimation('Down');
this._AllButtonsAreDown = !0;
a = 0;
for (b = x.__cast(this._ButtonList, Array); a < b.length; )
(c = b[a]),
++a,
0 == c.getValue('Button Logic', '_ButtonIsPressed') &&
(this._AllButtonsAreDown = !1);
if (this._AllButtonsAreDown) {
this._Unlocked = !0;
a = 0;
for (b = x.__cast(this._ButtonList, Array); a < b.length; )
(c = b[a]),
++a,
c.setAnimation('Down'),
c.setValue('Button Logic', '_Unlocked', !0);
d.startShakingScreen(0.005, 0.05);
a = 0;
for (b = this._Locklist.length; a < b; )
(c = a++),
this._Locklist[c].setValue('Button Block Logic', '_GoDelay', 0.2 * c + 0.4),
this._Locklist[c].shout('_customEvent_Go');
if (this.actor.getType() == d.getActorType(353)) {
this._Hide = !0;
this.actor.moveBy(0, 32, 0.4, J.quadInOut);
a = 0;
for (b = d.getActorsOfType(d.getActorType(208)); a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
(c.getValue('Cannon Logic', '_BossCannonNumber') == this._ButtonNumber &&
c.say('Cannon Logic', '_customEvent_Shoot'));
a = 0;
for (b = d.getActorsOfType(d.getActorType(213)); a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
(c.getValue('Cannon Logic', '_BossCannonNumber') == this._ButtonNumber &&
c.say('Cannon Logic', '_customEvent_Shoot'));
a = 0;
for (b = d.getActorsOfType(d.getActorType(391)); a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
(c.getValue('Crusher Logic', '_ButtonNumber') == this._ButtonNumber &&
c.say('Crusher Logic', '_customEvent_Go'));
a = 0;
for (b = d.getActorsOfType(d.getActorType(421)); a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
(c.getValue('Boss Spikes Logic', '_ButtonNumber') == this._ButtonNumber &&
c.say('Boss Spikes Logic', '_customEvent_Go'));
a = 0;
for (b = d.getActorsOfType(d.getActorType(696)); a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
(c.getValue('Boss Spikes Logic', '_ButtonNumber') == this._ButtonNumber &&
c.say('Boss Spikes Logic', '_customEvent_Go'));
a = 0;
for (b = d.getActorsOfType(d.getActorType(694)); a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
(c.getValue('Boss Spikes Logic', '_ButtonNumber') == this._ButtonNumber &&
c.say('Boss Spikes Logic', '_customEvent_Go'));
a = 0;
for (b = d.getActorsOfType(d.getActorType(353)); a < b.length; )
if (
((c = [b[a]]),
++a,
null != c[0] &&
!c[0].dead &&
!c[0].recycled &&
c[0] != this.actor &&
c[0].getValue('Button Logic', '_Hide'))
) {
c[0].moveBy(0, -32, 0.4, J.quadInOut);
c[0].setAnimation('Normal');
if (c[0].getValue('Button Logic', '_ButtonIsPressed'))
for (
var e = 0, f = d.getActorsOfType(d.getActorType(40));
e < f.length;
) {
var g = f[e];
++e;
null == g ||
g.dead ||
g.recycled ||
X.contains(this._Locklist, g) ||
g.shout('_customEvent_Reset');
}
d.runLater(
400,
(function (a) {
return function (b) {
a[0].setValue('Button Logic', '_Hide', !1);
a[0].setValue('Button Logic', '_Unlocked', !1);
a[0].setValue('Button Logic', '_ButtonIsPressed', !1);
};
})(c),
this.actor
);
}
}
}
}
} else
this._ButtonIsPressed &&
((this._ButtonIsPressed = !1), this._Unlocked || this.actor.setAnimation('Normal'));
this._DudeCheck = !1;
}
},
init: function () {
this.actor.makeAlwaysSimulate();
this._ButtonList = [];
this._Locklist = [];
this._Hide && this.actor.setY(this.actor.getY() + 32);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsDude));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsCrate));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsBigCrate));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: zu
});
var Au = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Left Touch Is Down'] = '_LeftTouchIsDown';
this._LeftTouchIsDown = !1;
this.nameMap.h['Right Touch Is Down'] = '_RightTouchIsDown';
this._RightTouchIsDown = !1;
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Jump Touch ID'] = '_JumpTouchID';
this._JumpTouchID = '';
this.nameMap.h['Jump Speed'] = '_JumpSpeed';
this._JumpSpeed = 0;
this.nameMap.h['Left Touch ID'] = '_LeftTouchID';
this._LeftTouchID = '';
this.nameMap.h['Right Touch ID'] = '_RightTouchID';
this._RightTouchID = '';
this.nameMap.h['Run Speed'] = '_RunSpeed';
this._RunSpeed = 0;
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['Left Button'] = '_LeftButton';
this.nameMap.h['Right Button'] = '_RightButton';
this.nameMap.h['Jump Button'] = '_JumpButton';
this.nameMap.h['Distance X'] = '_DistanceX';
this._DistanceX = 0;
this.nameMap.h['Camera Target'] = '_CameraTarget';
this.nameMap.h['Distance Y'] = '_DistanceY';
this._DistanceY = 0;
this.nameMap.h.Distance = '_Distance';
this._Distance = 0;
this.nameMap.h['Camera X'] = '_CameraX';
this._CameraX = 0;
this.nameMap.h['Camera Y'] = '_CameraY';
this._CameraY = 0;
this.nameMap.h.Dead = '_Dead';
this._Dead = !1;
this.nameMap.h.Hurt = '_Hurt';
this._Hurt = !1;
this.nameMap.h['Jump Hang'] = '_JumpHang';
this._JumpHang = 0;
this.nameMap.h['Jump Amnesty'] = '_JumpAmnesty';
this._JumpAmnesty = 0;
this.nameMap.h['Camera Boundaries Found'] = '_CameraBoundariesFound';
this._CameraBoundariesFound = !1;
this.nameMap.h['Left Boundary'] = '_LeftBoundary';
this.nameMap.h['Right Boundary'] = '_RightBoundary';
this.nameMap.h['Top Boundary'] = '_TopBoundary';
this.nameMap.h['Bottom Boundary'] = '_BottomBoundary';
this.nameMap.h['Boundary X Distance'] = '_BoundaryXDistance';
this._BoundaryXDistance = 0;
this.nameMap.h['Boundary Y Distance'] = '_BoundaryYDistance';
this._BoundaryYDistance = 0;
this.nameMap.h['Left Boundary X'] = '_LeftBoundaryX';
this._LeftBoundaryX = 0;
this.nameMap.h['Right Boundary X'] = '_RightBoundaryX';
this._RightBoundaryX = 0;
this.nameMap.h['Top Boundary Y'] = '_TopBoundaryY';
this._TopBoundaryY = 0;
this.nameMap.h['Bottom Boundary Y'] = '_BottomBoundaryY';
this._BottomBoundaryY = 0;
this.nameMap.h.Exiting = '_Exiting';
this._Exiting = !1;
this.nameMap.h['Platform Check'] = '_PlatformCheck';
this._PlatformCheck = !1;
this.nameMap.h['Current Platform'] = '_CurrentPlatform';
this.nameMap.h['Platform Pos X'] = '_PlatformPosX';
this._PlatformPosX = 0;
this.nameMap.h['On Platform'] = '_OnPlatform';
this._OnPlatform = !1;
this.nameMap.h.Jumping = '_Jumping';
this._Jumping = !1;
this.nameMap.h['Platform Release Delay'] = '_PlatformReleaseDelay';
this._PlatformReleaseDelay = 0;
this.nameMap.h['Camera Target X'] = '_CameraTargetX';
this._CameraTargetX = 0;
this.nameMap.h['Camera Target Y'] = '_CameraTargetY';
this._CameraTargetY = 0;
this.nameMap.h['Jump Touch Timer'] = '_JumpTouchTimer';
this._JumpTouchTimer = 0;
this.nameMap.h['Crate Check'] = '_CrateCheck';
this._CrateCheck = !1;
this.nameMap.h['Pushing Crate'] = '_PushingCrate';
this._PushingCrate = !1;
this.nameMap.h['Crate Release Delay'] = '_CrateReleaseDelay';
this._CrateReleaseDelay = 0;
this.nameMap.h['Bottom Was Hit'] = '_BottomWasHit';
this._BottomWasHit = !1;
this.nameMap.h['Top Was Hit'] = '_TopWasHit';
this._TopWasHit = !1;
this.nameMap.h['Left Was Hit'] = '_LeftWasHit';
this._LeftWasHit = !1;
this.nameMap.h['Right Was Hit'] = '_RightWasHit';
this._RightWasHit = !1;
this.nameMap.h['Platform X Speed Offset'] = '_PlatformXSpeedOffset';
this._PlatformXSpeedOffset = 0;
this.nameMap.h['Camera Boundary Type'] = '_CameraBoundaryType';
this.nameMap.h['Camera Transition'] = '_CameraTransition';
this._CameraTransition = !1;
this.nameMap.h['Camera Transition Finished'] = '_CameraTransitionFinished';
this._CameraTransitionFinished = !1;
this.nameMap.h['Camera Transition Top'] = '_CameraTransitionTop';
this._CameraTransitionTop = !1;
this.nameMap.h['Camera Transition Bottom'] = '_CameraTransitionBottom';
this._CameraTransitionBottom = !1;
this.nameMap.h['Camera Transition Left'] = '_CameraTransitionLeft';
this._CameraTransitionLeft = !1;
this.nameMap.h['Camera Transition Right'] = '_CameraTransitionRight';
this._CameraTransitionRight = !1;
this.nameMap.h['Right Boundary Offset'] = '_RightBoundaryOffset';
this._RightBoundaryOffset = 0;
this.nameMap.h['Left Boundary Offset'] = '_LeftBoundaryOffset';
this._LeftBoundaryOffset = 0;
this.nameMap.h['Bottom Boundary Offset'] = '_BottomBoundaryOffset';
this._BottomBoundaryOffset = 0;
this.nameMap.h['Top Boundary Offset'] = '_TopBoundaryOffset';
this._TopBoundaryOffset = 0;
this.nameMap.h['Bottom Transition Speed'] = '_BottomTransitionSpeed';
this._BottomTransitionSpeed = 0;
this.nameMap.h['Top Transition Speed'] = '_TopTransitionSpeed';
this._TopTransitionSpeed = 0;
this.nameMap.h['Left Transition Speed'] = '_LeftTransitionSpeed';
this._LeftTransitionSpeed = 0;
this.nameMap.h['Right Transition Speed'] = '_RightTransitionSpeed';
this._RightTransitionSpeed = 0;
this.nameMap.h['Left Trans Mid'] = '_LeftTransMid';
this._LeftTransMid = 0;
this.nameMap.h['Right Trans Mid'] = '_RightTransMid';
this._RightTransMid = 0;
this.nameMap.h['Top Trans Mid'] = '_TopTransMid';
this._TopTransMid = 0;
this.nameMap.h['Bottom Trans Mid'] = '_BottomTransMid';
this._BottomTransMid = 0;
this.nameMap.h['Sensor Row Count'] = '_SensorRowCount';
this._SensorRowCount = 0;
this.nameMap.h['Sensor Column Count'] = '_SensorColumnCount';
this._SensorColumnCount = 0;
this.nameMap.h['Facing Right'] = '_FacingRight';
this._FacingRight = !1;
this.nameMap.h['Fall Timer'] = '_FallTimer';
this._FallTimer = 0;
this.nameMap.h['Has Entered'] = '_HasEntered';
this._HasEntered = !1;
this.nameMap.h['Entrance Tween'] = '_EntranceTween';
this._EntranceTween = !1;
this.nameMap.h['Can Start'] = '_CanStart';
this._CanStart = !1;
this.nameMap.h.Arrow = '_Arrow';
this.nameMap.h['Transitioned In'] = '_TransitionedIn';
this._TransitionedIn = !1;
this.nameMap.h['Step 1'] = '_Step1';
this._Step1 = !1;
this.nameMap.h['Can Double Jump'] = '_CanDoubleJump';
this._CanDoubleJump = !1;
this.nameMap.h['Touch X'] = '_TouchX';
this._TouchX = 0;
this.nameMap.h['Previous Direction'] = '_PreviousDirection';
this._PreviousDirection = '';
this.nameMap.h['Touch X Sensor'] = '_TouchXSensor';
this.nameMap.h['Changed Direction'] = '_ChangedDirection';
this._ChangedDirection = !1;
this.nameMap.h['Last Touch ID'] = '_LastTouchID';
this._LastTouchID = '';
this.nameMap.h['Has Hit Baby'] = '_HasHitBaby';
this._HasHitBaby = !1;
this.nameMap.h['Move To Baby Position'] = '_MoveToBabyPosition';
this._MoveToBabyPosition = !1;
this.nameMap.h['Baby X Pos'] = '_BabyXPos';
this._BabyXPos = 0;
this.nameMap.h.Baby = '_Baby';
this.nameMap.h['Exit Animation'] = '_ExitAnimation';
this._ExitAnimation = !1;
this.nameMap.h['Screen X'] = '_ScreenX';
this._ScreenX = 0;
this.nameMap.h['Screen Y'] = '_ScreenY';
this._ScreenY = 0;
this.nameMap.h['Exit Camera X'] = '_ExitCameraX';
this._ExitCameraX = 0;
this.nameMap.h['Exit Camera Y'] = '_ExitCameraY';
this._ExitCameraY = 0;
this.nameMap.h['Exit Origin Y'] = '_ExitOriginY';
this._ExitOriginY = 0;
this.nameMap.h['Origin Y'] = '_OriginY';
this._OriginY = 0;
this.nameMap.h.Anchored = '_Anchored';
this._Anchored = !1;
this.nameMap.h['Baby Exit Origin Y'] = '_BabyExitOriginY';
this._BabyExitOriginY = 0;
this.nameMap.h['Fly Off Screen'] = '_FlyOffScreen';
this._FlyOffScreen = !1;
this.nameMap.h['Baby Type'] = '_BabyType';
this._BabyType = '';
this.nameMap.h['Direction RN'] = '_DirectionRN';
this._DirectionRN = 1;
this.nameMap.h['Star Collected'] = '_StarCollected';
this._StarCollected = !1;
this.nameMap.h['Exit Go'] = '_ExitGo';
this._ExitGo = !1;
this.nameMap.h.Springing = '_Springing';
this._Springing = !1;
this.nameMap.h['Baby Type Number'] = '_BabyTypeNumber';
this._BabyTypeNumber = 0;
this.nameMap.h['Left Touch Margin'] = '_LeftTouchMargin';
this._LeftTouchMargin = 0;
this.nameMap.h['First Touch'] = '_FirstTouch';
this._FirstTouch = !1;
this.nameMap.h['First Touch X'] = '_FirstTouchX';
this._FirstTouchX = 0;
this.nameMap.h['Go Button'] = '_GoButton';
this.nameMap.h['Possum Sprite'] = '_PossumSprite';
this.nameMap.h.DELETEME = '_DELETEME';
this._DELETEME = 'FART';
this.nameMap.h['Direction Hint'] = '_DirectionHint';
this.nameMap.h["Touch Wasn't Jump"] = '_TouchWasntJump';
this._TouchWasntJump = !1;
this.nameMap.h['Touch Drag Threshold'] = '_TouchDragThreshold';
this._TouchDragThreshold = 0;
this.nameMap.h['Touch Tap Threshold'] = '_TouchTapThreshold';
this._TouchTapThreshold = 0;
this.nameMap.h['Up Touch Is Down'] = '_UpTouchIsDown';
this._UpTouchIsDown = !1;
this.nameMap.h['Down Touch Is Down'] = '_DownTouchIsDown';
this._DownTouchIsDown = !1;
this.nameMap.h['Ground Sensor'] = '_GroundSensor';
this.nameMap.h['Sensor Check'] = '_SensorCheck';
this._SensorCheck = !1;
this.nameMap.h['Sensor On Ground'] = '_SensorOnGround';
this._SensorOnGround = !1;
this.nameMap.h['Mushroom Timer'] = '_MushroomTimer';
this._MushroomTimer = 0;
this.nameMap.h['Big Spring'] = '_BigSpring';
this._BigSpring = !1;
this.nameMap.h['Button Input'] = '_ButtonInput';
this._ButtonInput = '';
this.nameMap.h['Z Button Indicator'] = '_ZButtonIndicator';
};
h['scripts.Design_2_2_DudeLogic'] = Au;
Au.__name__ = 'scripts.Design_2_2_DudeLogic';
Au.__super__ = u;
Au.prototype = r(u.prototype, {
_LeftTouchIsDown: null,
_RightTouchIsDown: null,
_GroundCheck: null,
_OnGround: null,
_JumpTouchID: null,
_JumpSpeed: null,
_LeftTouchID: null,
_RightTouchID: null,
_RunSpeed: null,
_GravitySpeed: null,
_LeftButton: null,
_RightButton: null,
_JumpButton: null,
_DistanceX: null,
_CameraTarget: null,
_DistanceY: null,
_Distance: null,
_CameraX: null,
_CameraY: null,
_Dead: null,
_Hurt: null,
_JumpHang: null,
_JumpAmnesty: null,
_CameraBoundariesFound: null,
_LeftBoundary: null,
_RightBoundary: null,
_TopBoundary: null,
_BottomBoundary: null,
_BoundaryXDistance: null,
_BoundaryYDistance: null,
_LeftBoundaryX: null,
_RightBoundaryX: null,
_TopBoundaryY: null,
_BottomBoundaryY: null,
_Exiting: null,
_PlatformCheck: null,
_CurrentPlatform: null,
_PlatformPosX: null,
_OnPlatform: null,
_Jumping: null,
_PlatformReleaseDelay: null,
_CameraTargetX: null,
_CameraTargetY: null,
_JumpTouchTimer: null,
_CrateCheck: null,
_PushingCrate: null,
_CrateReleaseDelay: null,
_BottomWasHit: null,
_TopWasHit: null,
_LeftWasHit: null,
_RightWasHit: null,
_PlatformXSpeedOffset: null,
_CameraBoundaryType: null,
_CameraTransition: null,
_CameraTransitionFinished: null,
_CameraTransitionTop: null,
_CameraTransitionBottom: null,
_CameraTransitionLeft: null,
_CameraTransitionRight: null,
_RightBoundaryOffset: null,
_LeftBoundaryOffset: null,
_BottomBoundaryOffset: null,
_TopBoundaryOffset: null,
_BottomTransitionSpeed: null,
_TopTransitionSpeed: null,
_LeftTransitionSpeed: null,
_RightTransitionSpeed: null,
_LeftTransMid: null,
_RightTransMid: null,
_TopTransMid: null,
_BottomTransMid: null,
_SensorRowCount: null,
_SensorColumnCount: null,
_FacingRight: null,
_FallTimer: null,
_HasEntered: null,
_EntranceTween: null,
_CanStart: null,
_Arrow: null,
_TransitionedIn: null,
_Step1: null,
_CanDoubleJump: null,
_TouchX: null,
_PreviousDirection: null,
_TouchXSensor: null,
_ChangedDirection: null,
_LastTouchID: null,
_HasHitBaby: null,
_MoveToBabyPosition: null,
_BabyXPos: null,
_Baby: null,
_ExitAnimation: null,
_ScreenX: null,
_ScreenY: null,
_ExitCameraX: null,
_ExitCameraY: null,
_ExitOriginY: null,
_OriginY: null,
_Anchored: null,
_BabyExitOriginY: null,
_FlyOffScreen: null,
_BabyType: null,
_DirectionRN: null,
_StarCollected: null,
_ExitGo: null,
_Springing: null,
_BabyTypeNumber: null,
_LeftTouchMargin: null,
_FirstTouch: null,
_FirstTouchX: null,
_GoButton: null,
_PossumSprite: null,
_DELETEME: null,
_DirectionHint: null,
_TouchWasntJump: null,
_TouchDragThreshold: null,
_TouchTapThreshold: null,
_UpTouchIsDown: null,
_DownTouchIsDown: null,
_GroundSensor: null,
_SensorCheck: null,
_SensorOnGround: null,
_MushroomTimer: null,
_BigSpring: null,
_ButtonInput: null,
_ZButtonIndicator: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
!k.engine.getGameAttribute('MOBILE MODE') &&
(k.engine.getGameAttribute('Left Button Down')
? ((this._LeftTouchIsDown = !0), (this._RightTouchIsDown = !1))
: (this._LeftTouchIsDown = !1),
k.engine.getGameAttribute('Right Button Down')
? ((this._RightTouchIsDown = !0), (this._LeftTouchIsDown = !1))
: (this._RightTouchIsDown = !1));
},
_event_KeyboardStarted: function (a, b) {
this.wrapper.enabled &&
a &&
(this._HasEntered ||
this._EntranceTween ||
d.engine.isPaused() ||
(this._CanStart && this.actor.say('Dude Logic', '_customEvent_Enter')),
this._Dead ||
this._Exiting ||
(this._FirstTouch && (this._FirstTouch = !1),
d.engine.isPaused() ||
((0 < this._JumpAmnesty || this._OnPlatform || this._OnGround) &&
(this._HasEntered || this._EntranceTween)
? (this.actor.setYVelocity(Math.min(this.actor.getYVelocity(), -this._JumpSpeed)),
(this._JumpAmnesty = 0),
(this._JumpHang = 6),
(this._Jumping = !0),
(this._OnPlatform = this._OnGround = !1),
(this._JumpTouchTimer = 0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(109)))
: this._CanDoubleJump &&
!this._SensorOnGround &&
(this._HasEntered || this._EntranceTween)
? ((this._CanDoubleJump = !1),
this.actor.setYVelocity(Math.min(this.actor.getYVelocity(), -this._JumpSpeed)),
(this._JumpAmnesty = 0),
(this._JumpHang = 6),
(this._Jumping = !0),
(this._JumpTouchTimer = 0),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, 0, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, 0, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(120)))
: (this._JumpTouchTimer = 16))));
},
_event_KeyboardReleased: function (a, b) {
this.wrapper.enabled &&
b &&
-20 > this.actor.getYVelocity() &&
!this._Springing &&
this.actor.setYVelocity(-20);
},
_event_HitsGround: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b && a.thisFromBottom && (this._GroundCheck = !0);
},
_event_HitsPlatform: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(5);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
if (b && a.thisFromBottom && !this._Jumping) {
this._PlatformCheck = this._GroundCheck = !0;
if (0 == this._PlatformReleaseDelay || 0 != this.actor.getXVelocity())
this._PlatformPosX = this.actor.getX() - a.otherActor.getX();
this._PlatformReleaseDelay = 6;
this._CurrentPlatform = a.otherActor;
}
},
_event_HitsHazard: function (a) {
this.wrapper.enabled &&
this.internalGetGroup(a.otherActor, a.otherShape, a) == d.getActorGroup(4) &&
(a.thisFromBottom
? (this._BottomWasHit = !0)
: a.thisFromTop
? (this._TopWasHit = !0)
: a.thisFromLeft
? (this._LeftWasHit = !0)
: a.thisFromRight && (this._RightWasHit = !0),
this.actor.say('Dude Logic', '_customEvent_Die'));
},
_event_HitsBaby: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(159);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b &&
(gb.gameplayStop(),
this._HasHitBaby ||
this._Exiting ||
(gb.happyTime(0.2),
k.engine.getGameAttribute('Timer Mode') &&
d.sayToScene('Stage Logic', '_customEvent_timerStop'),
(b = this._DirectionHint),
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
this._DirectionHint.disableActorDrawing(),
(b = this._JumpButton),
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
this._JumpButton.disableActorDrawing(),
(this._Exiting = this._HasHitBaby = !0),
(this._RightTouchIsDown = this._LeftTouchIsDown = !1),
(this._Baby = a.otherActor),
this.actor.setXVelocity(0),
this.actor.setYVelocity(0),
(this._MoveToBabyPosition = !0),
(this._ExitCameraY = a.otherActor.getYCenter()),
a.otherActor.getValue('Baby Logic', '_Left')
? ((this._BabyXPos = a.otherActor.getXCenter() - 64),
(this._ExitCameraX = a.otherActor.getXCenter() - 32))
: ('6 Right' == a.otherActor.getAnimation()
? (this._BabyXPos = a.otherActor.getXCenter() + 96)
: (this._BabyXPos = a.otherActor.getXCenter() + 64),
(this._ExitCameraX = a.otherActor.getXCenter() + 32)),
this.actor.setYVelocity(-this._JumpSpeed),
(this._JumpAmnesty = 0),
(this._JumpHang = 6),
(this._Jumping = !0),
(this._OnPlatform = !1),
(this._JumpTouchTimer = 0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(109))));
},
_event_MoveToBabyPos: function (a) {
var b = this;
this.wrapper.enabled &&
!this._ExitGo &&
(this._MoveToBabyPosition
? ((a = this._Baby),
(a = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a))
: (a = !1),
a &&
(this._BabyXPos > this.actor.getXCenter() + 4
? this._OnGround || this._OnPlatform
? this.actor.setXVelocity(this._RunSpeed)
: this.actor.setXVelocity(this._RunSpeed + 2)
: this._BabyXPos < this.actor.getXCenter() - 4
? this._OnGround || this._OnPlatform
? this.actor.setXVelocity(-this._RunSpeed)
: this.actor.setXVelocity(-(this._RunSpeed + 2))
: (this.actor.setXVelocity(0),
this._OnGround &&
!this._ExitAnimation &&
((this._MoveToBabyPosition = this._OnPlatform = this._Jumping = !1),
(this._ExitAnimation = !0),
d.runLater(
600,
function (a) {
b._Baby.say('Baby Logic', '_customEvent_Dialog');
},
this.actor
),
this._Baby.getX() > this.actor.getX()
? this.actor.setAnimation('Idle Right')
: this.actor.setAnimation('Idle Left')))));
},
_event_HitsKey: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(28);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b && a.otherActor.say('Key Logic', '_customEvent_unlock');
},
_event_HitsCrate: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(32);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b &&
((a.thisFromLeft && this._LeftTouchIsDown) ||
(a.thisFromRight && this._RightTouchIsDown)) &&
((this._CrateCheck = !0), (this._CrateReleaseDelay = 6));
},
_event_HitsBigCrate: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(379);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b &&
((a.thisFromLeft && this._LeftTouchIsDown) ||
(a.thisFromRight && this._RightTouchIsDown)) &&
((this._CrateCheck = !0), (this._CrateReleaseDelay = 6));
},
_event_HitsCameraSensor: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(78);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b &&
(1 == a.otherActor.getValue('Camera Sensor Logic', '_CameraNumber') &&
this._CameraBoundaryType != d.getActorType(18)
? ((k.engine.gameAttributes.h['Camera Boundary Number'] = 1),
this.actor.say('Dude Logic', '_customEvent_setCameraBounds'))
: 2 == a.otherActor.getValue('Camera Sensor Logic', '_CameraNumber') &&
this._CameraBoundaryType != d.getActorType(80)
? ((k.engine.gameAttributes.h['Camera Boundary Number'] = 2),
this.actor.say('Dude Logic', '_customEvent_setCameraBounds'))
: 3 == a.otherActor.getValue('Camera Sensor Logic', '_CameraNumber') &&
this._CameraBoundaryType != d.getActorType(82) &&
((k.engine.gameAttributes.h['Camera Boundary Number'] = 3),
this.actor.say('Dude Logic', '_customEvent_setCameraBounds')));
},
_event_Camera: function (a) {
if (this.wrapper.enabled)
if (this._CameraBoundariesFound)
!this._Hurt &&
((e = this._CameraTarget),
d.isPrimitive(e) ||
('string' == typeof e ? '' != x.__cast(e, String) : null != e)) &&
(this._Exiting
? ((this._DistanceX = Math.ceil(this._ExitCameraX - this._CameraX)),
(this._DistanceY = Math.ceil(this._ExitCameraY - this._CameraY)),
(this._Distance = Math.sqrt(
Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)
)),
this._ExitCameraX > this._CameraX
? (this._CameraX = Math.min(
this._ExitCameraX,
this._CameraX + Math.abs(this._DistanceX) / 32
))
: this._ExitCameraX < this._CameraX &&
(this._CameraX = Math.max(
this._ExitCameraX,
this._CameraX - Math.abs(this._DistanceX) / 32
)),
this._CameraY > this._ExitCameraY
? (this._CameraY = Math.max(
this._CameraY - Math.abs(this._DistanceY) / 16,
this._ExitCameraY
))
: this._CameraY < this._ExitCameraY &&
(this._CameraY = Math.min(
this._CameraY + Math.abs(this._DistanceY) / 16,
this._ExitCameraY
)))
: ((this._DistanceX = Math.ceil(
this.actor.getXCenter() + 4 * this.actor.getXVelocity() - this._CameraX
)),
(this._DistanceY = Math.ceil(this.actor.getYCenter() - this._CameraY)),
(this._Distance = Math.sqrt(
Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)
)),
this.actor.getXCenter() + 4 * this.actor.getXVelocity() > this._CameraX
? (this._CameraX = Math.min(
this.actor.getXCenter() + 4 * this.actor.getXVelocity(),
this._CameraX + Math.abs(this._DistanceX) / 32
))
: this.actor.getXCenter() + 4 * this.actor.getXVelocity() < this._CameraX &&
(this._CameraX = Math.max(
this.actor.getXCenter() + 4 * this.actor.getXVelocity(),
this._CameraX - Math.abs(this._DistanceX) / 32
)),
this._CameraY > this.actor.getYCenter()
? (this._CameraY = Math.max(
this._CameraY - Math.abs(this._DistanceY) / 8,
this.actor.getYCenter()
))
: this._CameraY < this.actor.getYCenter() &&
(this._CameraY = Math.min(
this._CameraY + Math.abs(this._DistanceY) / 8,
this.actor.getYCenter()
))),
this._CameraX < this._LeftBoundaryX && !this._Exiting
? this._CameraTransitionLeft
? ((this._CameraX = this._LeftBoundaryX - this._LeftBoundaryOffset),
(this._LeftTransitionSpeed =
this._LeftBoundaryOffset < this._LeftTransMid
? Math.max(1, Math.min(32, this._LeftBoundaryOffset / 8))
: Math.max(
1,
Math.min(32, (2 * this._LeftTransMid - this._LeftBoundaryOffset) / 8)
)),
(this._LeftBoundaryOffset = Math.max(
0,
this._LeftBoundaryOffset - this._LeftTransitionSpeed
)))
: (this._CameraX = this._LeftBoundaryX)
: this._CameraTransitionLeft && (this._CameraTransitionLeft = !1),
this._CameraX > this._RightBoundaryX && !this._Exiting
? this._CameraTransitionRight
? ((this._CameraX = this._RightBoundaryX + this._RightBoundaryOffset),
(this._RightTransitionSpeed =
this._RightBoundaryOffset < this._RightTransMid
? Math.max(1, Math.min(32, this._RightBoundaryOffset / 8))
: Math.max(
1,
Math.min(
32,
(2 * this._RightTransMid - this._RightBoundaryOffset) / 8
)
)),
(this._RightBoundaryOffset = Math.max(
0,
this._RightBoundaryOffset - this._RightTransitionSpeed
)))
: (this._CameraX = this._RightBoundaryX)
: this._CameraTransitionRight && (this._CameraTransitionRight = !1),
this._CameraY < this._TopBoundaryY && !this._Exiting
? this._CameraTransitionTop
? ((this._CameraY = this._TopBoundaryY - this._TopBoundaryOffset),
(this._TopTransitionSpeed =
this._TopBoundaryOffset < this._TopTransMid
? Math.max(1, Math.min(32, this._TopBoundaryOffset / 8))
: Math.max(
1,
Math.min(32, (2 * this._TopTransMid - this._TopBoundaryOffset) / 8)
)),
(this._TopBoundaryOffset = Math.max(
0,
this._TopBoundaryOffset - this._TopTransitionSpeed
)))
: (this._CameraY = this._TopBoundaryY)
: this._CameraTransitionTop && (this._CameraTransitionTop = !1),
this._CameraY > this._BottomBoundaryY && !this._Exiting
? this._CameraTransitionBottom
? ((this._CameraY = this._BottomBoundaryY + this._BottomBoundaryOffset),
(this._BottomTransitionSpeed =
this._BottomBoundaryOffset < this._BottomTransMid
? Math.max(1, Math.min(32, this._BottomBoundaryOffset / 8))
: Math.max(
1,
Math.min(
32,
(2 * this._BottomTransMid - this._BottomBoundaryOffset) / 8
)
)),
(this._BottomBoundaryOffset = Math.max(
0,
this._BottomBoundaryOffset - this._BottomTransitionSpeed
)))
: (this._CameraY = this._BottomBoundaryY)
: this._CameraTransitionBottom && (this._CameraTransitionBottom = !1),
(this._CameraTargetX = this._CameraX),
(this._CameraTargetY = this._CameraY),
d.engine.moveCamera(this._CameraTargetX, this._CameraTargetY),
this._TransitionedIn ||
((this._TransitionedIn = !0),
d.sayToScene('Transitions', '_customEvent_transitionIn'),
d.recycleActor(d.getValueForScene('Stage Logic', '_Overlay'))));
else {
this._CameraBoundariesFound = !0;
a = 0;
for (var b = d.getActorsOfType(this._CameraBoundaryType); a < b.length; ) {
var c = b[a];
++a;
if (null != c && !c.dead && !c.recycled) {
var e = this._TopBoundary;
d.isPrimitive(e) || ('string' == typeof e ? '' != x.__cast(e, String) : null != e)
? c.getY() < this._TopBoundary.getY() && (this._TopBoundary = c)
: (this._TopBoundary = c);
e = this._BottomBoundary;
d.isPrimitive(e) || ('string' == typeof e ? '' != x.__cast(e, String) : null != e)
? c.getY() > this._BottomBoundary.getY() && (this._BottomBoundary = c)
: (this._BottomBoundary = c);
e = this._LeftBoundary;
d.isPrimitive(e) || ('string' == typeof e ? '' != x.__cast(e, String) : null != e)
? c.getX() < this._LeftBoundary.getX() && (this._LeftBoundary = c)
: (this._LeftBoundary = c);
e = this._RightBoundary;
d.isPrimitive(e) || ('string' == typeof e ? '' != x.__cast(e, String) : null != e)
? c.getX() > this._RightBoundary.getX() && (this._RightBoundary = c)
: (this._RightBoundary = c);
}
}
this._BoundaryXDistance =
this._RightBoundary.getXCenter() - this._LeftBoundary.getXCenter();
this._BoundaryYDistance =
this._BottomBoundary.getYCenter() - this._TopBoundary.getYCenter();
this._BoundaryXDistance < d.getScreenWidth() &&
(this._LeftBoundary.setX(
this._LeftBoundary.getX() - (d.getScreenWidth() - this._BoundaryXDistance) / 2
),
this._RightBoundary.setX(
this._RightBoundary.getX() + (d.getScreenWidth() - this._BoundaryXDistance) / 2
));
this._BoundaryYDistance < d.getScreenHeight() &&
(this._TopBoundary.setY(
this._TopBoundary.getY() - (d.getScreenHeight() - this._BoundaryYDistance) / 2
),
this._BottomBoundary.setY(
this._BottomBoundary.getY() + (d.getScreenHeight() - this._BoundaryYDistance) / 2
));
this._TopBoundaryY = this._TopBoundary.getYCenter() + d.getScreenHeight() / 2;
this._BottomBoundaryY = this._BottomBoundary.getYCenter() - d.getScreenHeight() / 2;
this._LeftBoundaryX = this._LeftBoundary.getXCenter() + d.getScreenWidth() / 2;
this._RightBoundaryX = this._RightBoundary.getXCenter() - d.getScreenWidth() / 2;
'Endless Mode' == d.getCurrentSceneName() &&
((this._TopBoundaryY = d.getScreenHeight() / 2),
(this._BottomBoundaryY = d.getSceneHeight() - d.getScreenHeight() / 2),
(this._LeftBoundaryX = d.getScreenWidth() / 2),
(this._RightBoundaryX = d.getSceneWidth() - d.getScreenWidth() / 2));
this._CameraTransitionTop &&
((this._TopBoundaryOffset =
Math.max(this._CameraY, this._TopBoundaryY) -
Math.min(this._CameraY, this._TopBoundaryY)),
(this._TopTransMid = this._TopBoundaryOffset / 2));
this._CameraTransitionBottom &&
((this._BottomBoundaryOffset =
Math.max(this._CameraY, this._BottomBoundaryY) -
Math.min(this._CameraY, this._BottomBoundaryY)),
(this._BottomTransMid = this._BottomBoundaryOffset / 2));
this._CameraTransitionLeft &&
((this._LeftBoundaryOffset =
Math.max(this._CameraX, this._LeftBoundaryX) -
Math.min(this._CameraX, this._LeftBoundaryX)),
(this._LeftTransMid = this._LeftBoundaryOffset / 2));
this._CameraTransitionRight &&
((this._RightBoundaryOffset =
Math.max(this._CameraX, this._RightBoundaryX) -
Math.min(this._CameraX, this._RightBoundaryX)),
(this._RightTransMid = this._RightBoundaryOffset / 2));
}
},
_event_Movement: function (a) {
var b = this;
if (this.wrapper.enabled) {
a = this._GroundSensor;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
this._GroundSensor.setX(this.actor.getXCenter() - 32),
this._GroundSensor.setY(this.actor.getY() + this.actor.getHeight()),
this._SensorCheck
? (this._SensorOnGround || (this._SensorOnGround = !0), (this._SensorCheck = !1))
: !this._SensorCheck && this._SensorOnGround && (this._SensorOnGround = !1);
if (!this._ExitAnimation) {
k.engine.getGameAttribute('MOBILE MODE') &&
!this._HasEntered &&
!this._EntranceTween &&
this._CanStart &&
((a = this._GoButton),
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._GoButton.isMousePressed() &&
(d.stopAllSounds(),
'JP' == k.engine.getGameAttribute('Language') ||
'CN' == k.engine.getGameAttribute('Language') ||
'KR' == k.engine.getGameAttribute('Language')
? this._GoButton.setAnimation('WW Down')
: this._GoButton.setAnimation('Down'),
d.runLater(
200,
function (a) {
k.engine.getGameAttribute('Timer Mode') &&
d.sayToScene('Stage Logic', '_customEvent_timerStart');
d.recycleActor(b._GoButton);
b._GoButton = d.getDefaultValue(b._GoButton);
d.createRecycledActor(d.getActorType(582), 24, d.getScreenHeight() - 116, 0);
b._DirectionHint = d.getLastCreatedActor();
b._DirectionHint.anchorToScreen();
d.createRecycledActor(
d.getActorType(770),
d.getScreenWidth() - 110,
d.getScreenHeight() - 100,
0
);
b._JumpButton = d.getLastCreatedActor();
b._JumpButton.anchorToScreen();
k.engine.getGameAttribute('Direction Hint') ||
(b._DirectionHint.disableActorDrawing(),
b._JumpButton.disableActorDrawing());
},
this.actor
),
k.engine.getGameAttribute('Direction Hint')
? (this._TouchX = 2 * Math.round((0.1428 * d.getScreenWidth()) / 2) - 16)
: (this._TouchX = d.getMouseX()),
(this._EntranceTween = this._FirstTouch = !0),
this.actor.setAnimation('Emerge'),
this.actor.moveBy(0, -64, 0.3, J.backOut),
(a = this._Arrow),
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
d.recycleActor(this._Arrow),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Dirt'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Dirt'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Dirt'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(119)),
k.engine.getGameAttribute('Music Disabled') && d.setVolumeForChannel(0, 16),
k.engine.getGameAttribute('Sound Disabled') && d.setVolumeForChannel(0, 15),
d.runLater(
310,
function (a) {
b._CanDoubleJump = !0;
'Grasslands' == k.engine.getGameAttribute('Stage Type')
? (d.loopSoundOnChannel(d.getSound(133), 16),
d.loopSoundOnChannel(d.getSound(135), 15))
: 'Seaside' == k.engine.getGameAttribute('Stage Type')
? (d.loopSoundOnChannel(d.getSound(147), 16),
d.loopSoundOnChannel(d.getSound(148), 15))
: 'Snow' == k.engine.getGameAttribute('Stage Type')
? (d.loopSoundOnChannel(d.getSound(158), 16),
d.loopSoundOnChannel(d.getSound(157), 15))
: 'Castle' == k.engine.getGameAttribute('Stage Type') &&
(d.loopSoundOnChannel(d.getSound(195), 16),
d.loopSoundOnChannel(d.getSound(196), 15));
k.engine.getGameAttribute('Sound Disabled')
? d.setVolumeForChannel(0, 15)
: k.engine.getGameAttribute('Sound Disabled') ||
d.setVolumeForChannel(1, 15);
k.engine.getGameAttribute('Music Disabled')
? d.setVolumeForChannel(0, 16)
: k.engine.getGameAttribute('Music Disabled') ||
d.setVolumeForChannel(1, 16);
b._HasEntered = !0;
a = 0;
for (var c = d.getActorsOfType(d.getActorType(550)); a < c.length; ) {
var e = c[a];
++a;
null == e || e.dead || e.recycled || e.setAnimation('Turn On');
}
d.runLater(
200,
function (a) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(345)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.setAnimation('Normal');
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(548)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.setAnimation('Normal');
a = 0;
for (b = d.getActorsOfType(d.getActorType(347)); a < b.length; )
(c = b[a]),
++a,
null == c || c.dead || c.recycled || c.setAnimation('Normal');
},
b.actor
);
},
this.actor
)));
if (this._HasEntered && !this._Hurt) {
this._GroundCheck
? this._OnGround ||
((this._OnGround = !0),
(this._Springing = this._BigSpring = !1),
(this._CanDoubleJump = !0),
(this._JumpHang = 0),
(this._JumpAmnesty = 8),
30 < this._FallTimer
? (d.setValueForScene('Stage Logic', '_RumbleName', 'Thud'),
d.sayToScene('Stage Logic', '_customEvent_rumble'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(117)),
d.startShakingScreen(0.005, 0.05),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut),
'Fall Left' == this.actor.getAnimation()
? this.actor.setAnimation('Ground Left')
: 'Fall Right' == this.actor.getAnimation() &&
this.actor.setAnimation('Ground Right'))
: 12 < this._FallTimer &&
(d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud'),
d.sayToScene('Stage Logic', '_customEvent_rumble'),
k.engine.getGameAttribute('Sound Disabled') ||
d.playSound(d.getSound(112))),
(this._FallTimer = 0))
: (this._OnGround && (this._OnGround = !1),
0 < this.actor.getYVelocity() ? (this._FallTimer += 1) : (this._FallTimer = 0));
this._GroundCheck = !1;
!this._OnGround &&
0 < this._JumpAmnesty &&
(14 > Math.abs(this.actor.getXVelocity())
? (this._JumpAmnesty = 0)
: --this._JumpAmnesty);
this._PlatformCheck
? (this._Jumping || this.actor.setYVelocity(40),
this._OnPlatform ||
((this._OnPlatform = !0), (this._JumpHang = 0), (this._JumpAmnesty = 8)))
: this._OnPlatform && 0 == this._PlatformReleaseDelay && (this._OnPlatform = !1);
this._PlatformCheck = !1;
0 < this._PlatformReleaseDelay && --this._PlatformReleaseDelay;
if (this._CrateCheck) {
if (!this._PushingCrate) {
this._PushingCrate = !0;
this._RunSpeed = 6;
var c = 0 < this.actor.getXVelocity();
}
} else
this._PushingCrate &&
0 == this._CrateReleaseDelay &&
((this._PushingCrate = !1), (this._RunSpeed = 16));
this._CrateCheck = !1;
0 < this._CrateReleaseDelay && --this._CrateReleaseDelay;
this._OnPlatform
? ((a = this._CurrentPlatform),
(c = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a))
: (c = !1);
c
? this._CurrentPlatform.hasBehavior('Set Path')
? ((a = this._CurrentPlatform.getValue('Set Path', '_TrackerXSpeed')),
(this._PlatformXSpeedOffset =
null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a))))
: this._CurrentPlatform.hasBehavior('Rotator Object')
? ((a = this._CurrentPlatform.getValue('Rotator Object', '_TrackerXSpeed')),
(this._PlatformXSpeedOffset =
null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a))))
: (this._PlatformXSpeedOffset = 0)
: (this._PlatformXSpeedOffset = 0);
this._HasHitBaby ||
(this._LeftTouchIsDown
? Math.abs(this.actor.getXVelocity()) >
this._PlatformXSpeedOffset + (this._RunSpeed + 2) && !this._OnPlatform
? 0 < this.actor.getXVelocity()
? this.actor.setXVelocity(Math.max(0, this.actor.getXVelocity() - 0.1))
: 0 > this.actor.getXVelocity() &&
this.actor.setXVelocity(Math.min(0, this.actor.getXVelocity() + 0.1))
: this._OnGround || this._OnPlatform
? this.actor.setXVelocity(this._PlatformXSpeedOffset + -this._RunSpeed)
: this.actor.setXVelocity(this._PlatformXSpeedOffset + -(this._RunSpeed + 2))
: this._RightTouchIsDown
? this._BigSpring &&
Math.abs(this.actor.getXVelocity()) >
this._PlatformXSpeedOffset + (this._RunSpeed + 2) &&
!this._OnPlatform
? 0 < this.actor.getXVelocity()
? this.actor.setXVelocity(Math.max(0, this.actor.getXVelocity() - 0.1))
: 0 > this.actor.getXVelocity() &&
this.actor.setXVelocity(Math.min(0, this.actor.getXVelocity() + 0.1))
: ((this._BigSpring = !1),
this._OnGround || this._OnPlatform
? this.actor.setXVelocity(this._PlatformXSpeedOffset + this._RunSpeed)
: this.actor.setXVelocity(
this._PlatformXSpeedOffset + (this._RunSpeed + 2)
))
: this._BigSpring &&
Math.abs(this.actor.getXVelocity()) >
this._PlatformXSpeedOffset + (this._RunSpeed + 2) &&
!this._OnPlatform
? 0 < this.actor.getXVelocity()
? this.actor.setXVelocity(Math.max(0, this.actor.getXVelocity() - 0.2))
: 0 > this.actor.getXVelocity() &&
this.actor.setXVelocity(Math.min(0, this.actor.getXVelocity() + 0.2))
: ((this._BigSpring = !1),
0 < this.actor.getXVelocity()
? this.actor.setXVelocity(Math.max(0, this.actor.getXVelocity() - 2))
: 0 > this.actor.getXVelocity() &&
this.actor.setXVelocity(Math.min(0, this.actor.getXVelocity() + 2))));
0 < this._JumpHang && 0 == Math.round(this.actor.getYVelocity())
? (this.actor.setYVelocity(0), --this._JumpHang)
: this._Dead
? this.actor.setYVelocity(
Math.min(this.actor.getYVelocity() + 0.5, this._GravitySpeed)
)
: this.actor.setYVelocity(
Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed)
);
0 < this.actor.getYVelocity() && (this._Jumping = !1);
this._Jumping
? (c = !1)
: this._OnPlatform
? ((a = this._CurrentPlatform),
(c = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a))
: (c = !1);
c &&
(this._CurrentPlatform.hasBehavior('Rotator Object') &&
0 != this._CurrentPlatform.getValue('Rotator Object', '_Speed')
? (0 != this.actor.getXVelocity() ||
this._LeftTouchIsDown ||
this._RightTouchIsDown ||
((c = this.actor),
(a = this._CurrentPlatform.getValue('Rotator Object', '_ActualX')),
c.setX(
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a))) + this._PlatformPosX
)),
this._Jumping ||
((c = this.actor),
(a = this._CurrentPlatform.getValue('Rotator Object', '_ActualY')),
c.setY(
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a))) - this.actor.getHeight()
)))
: (0 == this.actor.getXVelocity() &&
this.actor.setX(this._CurrentPlatform.getX() + this._PlatformPosX),
this._Jumping ||
this.actor.setY(this._CurrentPlatform.getY() - this.actor.getHeight())));
0 < this._JumpTouchTimer &&
(0 < this._JumpAmnesty || this._OnPlatform
? (this.actor.setYVelocity(
Math.min(this.actor.getYVelocity(), -this._JumpSpeed)
),
(this._JumpAmnesty = 0),
(this._JumpHang = 6),
(this._Jumping = !0),
(this._OnPlatform = !1),
(this._JumpTouchTimer = 0))
: --this._JumpTouchTimer);
}
this._Dead &&
this.actor.setYVelocity(
Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed)
);
}
0 != this._ExitOriginY &&
!this._FlyOffScreen &&
this._ExitAnimation &&
(this.actor.getY() < this._ExitOriginY
? this.actor.setYVelocity(
Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed)
)
: this.actor.getY() > this._ExitOriginY &&
0 < this.actor.getYVelocity() &&
(this.actor.setYVelocity(0),
this.actor.setXVelocity(0),
this.actor.setY(this._ExitOriginY)),
(a = this._Baby),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
(this._Baby.getY() < this._BabyExitOriginY
? this._Baby.setYVelocity(
Math.min(this._Baby.getYVelocity() + 2, this._GravitySpeed)
)
: this._Baby.getY() > this._BabyExitOriginY &&
0 < this._Baby.getYVelocity() &&
(this._Baby.setYVelocity(0),
this._Baby.setXVelocity(0),
this._Baby.setY(this._BabyExitOriginY)));
}
},
_event_Sweat: function (a) {
this.wrapper.enabled &&
this._PushingCrate &&
(0 < this.actor.getXVelocity()
? (d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 4,
this.actor.getY() + 4,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Sweat'))
: 0 > this.actor.getXVelocity() &&
(d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 4,
this.actor.getY() + 4,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, -16, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Sweat')));
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this._FlyOffScreen &&
(d.createRecycledActorOnLayer(
d.getActorType(223),
this.actor.getXCenter() - 16,
this.actor.getYCenter() - 16,
d.engine.getLayerById(0)
),
(this._DirectionRN = 3 > this._DirectionRN ? this._DirectionRN + 1 : 1),
1 == this._DirectionRN
? d.getLastCreatedActor().moveBy(-32, 32, 0.6, J.backOut)
: 2 == this._DirectionRN
? d.getLastCreatedActor().moveBy(32, 32, 0.6, J.backOut)
: 3 == this._DirectionRN && d.getLastCreatedActor().moveBy(0, 32, 0.6, J.backOut));
},
_event_Steps: function (a) {
this.wrapper.enabled &&
this._PushingCrate &&
this._OnGround &&
(this._LeftTouchIsDown || this._RightTouchIsDown) &&
(this.actor.getXVelocity(),
k.engine.getGameAttribute('Sound Disabled') ||
(this._Step1
? ((this._Step1 = !1), d.playSound(d.getSound(116)))
: ((this._Step1 = !0), d.playSound(d.getSound(115)))));
},
_event_Animations: function (a) {
this.wrapper.enabled &&
(k.engine.getGameAttribute('Possum Mode')
? ((a = this._PossumSprite),
(a = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a))
: (a = !1),
a &&
(this._PossumSprite.setX(this.actor.getX()),
this._PossumSprite.setY(this.actor.getY() - 2),
this._PossumSprite.getAnimation() != this.actor.getAnimation() &&
this._PossumSprite.setAnimation(this.actor.getAnimation())),
!this._HasEntered ||
this._Dead ||
this._Hurt ||
this._ExitAnimation ||
('Ground Left' != this.actor.getAnimation() &&
'Ground Right' != this.actor.getAnimation()
? (0 < this.actor.getXVelocity()
? (this._FacingRight = !0)
: 0 > this.actor.getXVelocity() && (this._FacingRight = !1),
this._OnGround || 0 < this._JumpAmnesty || this._OnPlatform
? this._LeftTouchIsDown ||
(this._MoveToBabyPosition && 0 > this.actor.getXVelocity())
? 'Walk Left' != this.actor.getAnimation() &&
this.actor.setAnimation('Walk Left')
: this._RightTouchIsDown ||
(this._MoveToBabyPosition && 0 < this.actor.getXVelocity())
? 'Walk Right' != this.actor.getAnimation() &&
this.actor.setAnimation('Walk Right')
: this._RightTouchIsDown ||
this._LeftTouchIsDown ||
(this._FacingRight && 'Idle Right' != this.actor.getAnimation()
? this.actor.setAnimation('Idle Right')
: this._FacingRight ||
'Idle Left' == this.actor.getAnimation() ||
this.actor.setAnimation('Idle Left'))
: 0 > this.actor.getYVelocity()
? 'Flip Left' != this.actor.getAnimation() &&
'Flip Right' != this.actor.getAnimation()
? this._FacingRight && 'Jump Right' != this.actor.getAnimation()
? this.actor.setAnimation('Jump Right')
: this._FacingRight ||
'Jump Left' == this.actor.getAnimation() ||
this.actor.setAnimation('Jump Left')
: this._FacingRight && 9 == this.actor.getCurrentFrame()
? this.actor.setAnimation('Jump Right')
: this._FacingRight ||
9 != this.actor.getCurrentFrame() ||
this.actor.setAnimation('Jump Left')
: 0 < this.actor.getYVelocity()
? 'Flip Left' != this.actor.getAnimation() &&
'Flip Right' != this.actor.getAnimation() &&
(this._FacingRight && 'Fall Right' != this.actor.getAnimation()
? this.actor.setAnimation('Fall Right')
: this._FacingRight ||
'Fall Left' == this.actor.getAnimation() ||
this.actor.setAnimation('Fall Left'))
: this._FacingRight && 9 == this.actor.getCurrentFrame()
? this.actor.setAnimation('Fall Right')
: this._FacingRight ||
9 != this.actor.getCurrentFrame() ||
this.actor.setAnimation('Fall Left'))
: 'Ground Left' == this.actor.getAnimation()
? 4 == this.actor.getCurrentFrame() && this.actor.setAnimation('Idle Left')
: 'Ground Right' == this.actor.getAnimation() &&
4 == this.actor.getCurrentFrame() &&
this.actor.setAnimation('Idle Right')),
this._ExitAnimation &&
(0 < this.actor.getYVelocity() && 'Jump Right' == this.actor.getAnimation()
? this.actor.setAnimation('Fall Right')
: 0 < this.actor.getYVelocity() && 'Jump Left' == this.actor.getAnimation()
? this.actor.setAnimation('Fall Left')
: 0 == this.actor.getYVelocity() && 'Fall Right' == this.actor.getAnimation()
? this.actor.setAnimation('Idle Right')
: 0 == this.actor.getYVelocity() && 'Fall Left' == this.actor.getAnimation()
? this.actor.setAnimation('Idle Left')
: 0 == this.actor.getYVelocity() && 'Flip Right' == this.actor.getAnimation()
? this.actor.setAnimation('Idle Right')
: 0 == this.actor.getYVelocity() &&
'Flip Left' == this.actor.getAnimation() &&
this.actor.setAnimation('Idle Left')));
},
_event_SensorHitsTiles: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(1);
var c = a.otherActor.getType();
a = a.otherActor.getGroup();
b = b == c || b == a;
} else b = !1;
b &&
((b = this._GroundSensor),
d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
(this._SensorCheck = !0);
},
_event_SensorHitsPlatform: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorGroup(5);
var c = a.otherActor.getType();
a = a.otherActor.getGroup();
b = b == c || b == a;
} else b = !1;
b &&
((b = this._GroundSensor),
d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
(this._SensorCheck = !0);
},
_event_TouchStarted: function (a) {
!this.wrapper.enabled ||
this._Dead ||
this._Exiting ||
((this._LastTouchID = '' + a.touchPointID),
this._FirstTouch && (this._FirstTouch = !1),
(this._HasEntered || this._EntranceTween) &&
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) <
d.getScreenWidth() / 2 - 16 &&
'' + a.touchPointID != this._LeftTouchID &&
('Right' == this._PreviousDirection
? (a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) <
this._TouchX - this._TouchTapThreshold
? ((this._LeftTouchIsDown = !0), (this._PreviousDirection = 'Left'))
: (a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) >=
this._TouchX - this._TouchTapThreshold && (this._RightTouchIsDown = !0)
: 'Left' == this._PreviousDirection
? (a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) <=
this._TouchX + this._TouchTapThreshold
? (this._LeftTouchIsDown = !0)
: (a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) >
this._TouchX + this._TouchTapThreshold &&
((this._RightTouchIsDown = !0), (this._PreviousDirection = 'Right'))
: (a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) <= this._TouchX - 1
? ((this._LeftTouchIsDown = !0), (this._PreviousDirection = 'Left'))
: (a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) >= this._TouchX + 1 &&
((this._RightTouchIsDown = !0), (this._PreviousDirection = 'Right')),
k.engine.getGameAttribute('Direction Hint') ||
(this._TouchX = Math.max(
this._LeftTouchMargin,
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE)
)),
(this._LeftTouchID = '' + a.touchPointID)));
},
_event_Jump: function (a) {
!this.wrapper.enabled ||
this._Dead ||
this._Exiting ||
((this._LastTouchID = '' + a.touchPointID),
this._FirstTouch && (this._FirstTouch = !1),
(this._HasEntered || this._EntranceTween) &&
!d.engine.isPaused() &&
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) >= d.getScreenWidth() / 2 &&
((this._JumpTouchID = '' + a.touchPointID),
0 < this._JumpAmnesty || this._OnPlatform || this._OnGround
? (this.actor.setYVelocity(Math.min(this.actor.getYVelocity(), -this._JumpSpeed)),
(this._JumpAmnesty = 0),
(this._JumpHang = 6),
(this._Jumping = !0),
(this._OnPlatform = !1),
(this._JumpTouchTimer = 0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(109)))
: this._CanDoubleJump && !this._SensorOnGround
? ((this._CanDoubleJump = !1),
this.actor.setYVelocity(Math.min(this.actor.getYVelocity(), -this._JumpSpeed)),
(this._JumpAmnesty = 0),
(this._JumpHang = 6),
(this._Jumping = !0),
(this._JumpTouchTimer = 0),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(-16, 0, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveBy(16, 0, 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Small'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(120)))
: (this._JumpTouchTimer = 16)));
},
_event_TouchDragged: function (a) {
if (
this.wrapper.enabled &&
!this._Dead &&
!this._Exiting &&
!d.engine.isPaused() &&
this._HasEntered &&
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) < d.getScreenWidth() / 2
) {
k.engine.getGameAttribute('Direction Hint') ||
((a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) > this._TouchX + 32
? (this._TouchX = Math.max(
this._LeftTouchMargin,
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE)
))
: (a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) < this._TouchX - 32 &&
(this._TouchX = Math.max(
this._LeftTouchMargin,
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE)
)));
if (
!this._LeftTouchIsDown &&
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) <
this._TouchX - this._TouchDragThreshold
) {
this._LeftTouchIsDown = !0;
this._RightTouchIsDown = !1;
this._PreviousDirection = 'Left';
var b = this._LeftTouchID;
d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b) ||
(this._LeftTouchID = this._LastTouchID);
this._ChangedDirection = this._ChangedDirection ? !1 : !0;
}
!this._RightTouchIsDown &&
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) >
this._TouchX + this._TouchDragThreshold &&
((this._RightTouchIsDown = !0),
(this._LeftTouchIsDown = !1),
(this._PreviousDirection = 'Right'),
(b = this._LeftTouchID),
d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b) ||
(this._LeftTouchID = this._LastTouchID),
(this._ChangedDirection = this._ChangedDirection ? !1 : !0));
}
},
_event_TouchReleased: function (a) {
if (this.wrapper.enabled) {
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) < d.getScreenWidth() / 2 &&
((this._RightTouchIsDown = this._LeftTouchIsDown = !1),
this._ChangedDirection &&
((this._ChangedDirection = !1),
(('Left' == this._PreviousDirection &&
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) < this._TouchX) ||
('Right' == this._PreviousDirection &&
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE) > this._TouchX)) &&
!k.engine.getGameAttribute('Direction Hint') &&
(this._TouchX = Math.max(
(a.stageX - k.screenOffsetX) / (k.screenScaleX * k.SCALE),
this._LeftTouchMargin
))),
(this._LeftTouchID = d.getDefaultValue(this._LeftTouchID)));
var b = this._JumpTouchID;
(!d.isPrimitive(b) && ('string' == typeof b ? '' == x.__cast(b, String) : null == b)) ||
this._JumpTouchID != '' + a.touchPointID ||
this._Springing ||
(-20 > this.actor.getYVelocity() && this.actor.setYVelocity(-20),
(this._JumpTouchID = d.getDefaultValue(this._JumpTouchID)));
}
},
_event_DirectionHint: function (a) {
if (this.wrapper.enabled) {
k.engine.getGameAttribute('Direction Hint')
? ((a = this._DirectionHint),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)
? (this._TouchX = this._DirectionHint.getX() + this._DirectionHint.getWidth() / 2)
: (this._TouchX = Math.max(
90,
2 * Math.round((0.1428 * d.getScreenWidth()) / 2) - 16
)),
(this._TouchTapThreshold = this._TouchDragThreshold = 0))
: ((this._TouchDragThreshold = 12), (this._TouchTapThreshold = 24));
a = this._JumpButton;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
(a = this._JumpTouchID),
(!d.isPrimitive(a) &&
('string' == typeof a ? '' == x.__cast(a, String) : null == a)) ||
'Down' == this._JumpButton.getAnimation()
? ((a = this._JumpTouchID),
d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a) ||
'Down' != this._JumpButton.getAnimation() ||
this._JumpButton.setAnimation('Normal'))
: this._JumpButton.setAnimation('Down');
a = this._DirectionHint;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
'Snow' == k.engine.getGameAttribute('Stage Type')
? this._LeftTouchIsDown
? 'SnowLeft' != this._DirectionHint.getAnimation() &&
this._DirectionHint.setAnimation('SnowLeft')
: this._RightTouchIsDown
? 'SnowRight' != this._DirectionHint.getAnimation() &&
this._DirectionHint.setAnimation('SnowRight')
: 'SnowNormal' != this._DirectionHint.getAnimation() &&
this._DirectionHint.setAnimation('SnowNormal')
: this._LeftTouchIsDown
? 'Left' != this._DirectionHint.getAnimation() &&
this._DirectionHint.setAnimation('Left')
: this._RightTouchIsDown
? 'Right' != this._DirectionHint.getAnimation() &&
this._DirectionHint.setAnimation('Right')
: 'Normal' != this._DirectionHint.getAnimation() &&
this._DirectionHint.setAnimation('Normal');
}
},
_event_Updating2: function (a) {
this.wrapper.enabled &&
(this._TouchXSensor.setX(this._TouchX),
this._TouchXSensor.setY(d.getScreenHeight() / 2));
},
_customEvent_Enter: function () {
var a = this;
d.stopAllSounds();
var b = this._Arrow;
(d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
d.recycleActor(this._Arrow);
d.runLater(
200,
function (a) {
k.engine.getGameAttribute('Timer Mode') &&
d.sayToScene('Stage Logic', '_customEvent_timerStart');
},
this.actor
);
this._EntranceTween = this._FirstTouch = !0;
this.actor.setAnimation('Emerge');
this.actor.moveBy(0, -64, 0.3, J.backOut);
b = this._Arrow;
(d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
d.recycleActor(this._Arrow);
b = this._ZButtonIndicator;
(d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
d.recycleActor(this._ZButtonIndicator);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Dirt');
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Dirt');
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Dirt');
d.setValueForScene('Stage Logic', '_RumbleName', 'Emerge');
d.sayToScene('Stage Logic', '_customEvent_rumble');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(119));
k.engine.getGameAttribute('Music Disabled') && d.setVolumeForChannel(0, 16);
k.engine.getGameAttribute('Sound Disabled') && d.setVolumeForChannel(0, 15);
d.runLater(
310,
function (b) {
a._CanDoubleJump = !0;
'Grasslands' == k.engine.getGameAttribute('Stage Type')
? (d.loopSoundOnChannel(d.getSound(133), 16),
d.loopSoundOnChannel(d.getSound(135), 15))
: 'Seaside' == k.engine.getGameAttribute('Stage Type')
? (d.loopSoundOnChannel(d.getSound(147), 16),
d.loopSoundOnChannel(d.getSound(148), 15))
: 'Snow' == k.engine.getGameAttribute('Stage Type')
? (d.loopSoundOnChannel(d.getSound(158), 16),
d.loopSoundOnChannel(d.getSound(157), 15))
: 'Castle' == k.engine.getGameAttribute('Stage Type')
? (d.loopSoundOnChannel(d.getSound(195), 16),
d.loopSoundOnChannel(d.getSound(196), 15))
: 'Cave' == k.engine.getGameAttribute('Stage Type') &&
(d.loopSoundOnChannel(d.getSound(748), 16),
d.loopSoundOnChannel(d.getSound(747), 15));
k.engine.getGameAttribute('Sound Disabled')
? d.setVolumeForChannel(0, 15)
: k.engine.getGameAttribute('Sound Disabled') || d.setVolumeForChannel(1, 15);
k.engine.getGameAttribute('Music Disabled')
? d.setVolumeForChannel(0, 16)
: k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16);
a._HasEntered = !0;
b = 0;
for (var c = d.getActorsOfType(d.getActorType(550)); b < c.length; ) {
var f = c[b];
++b;
null == f || f.dead || f.recycled || f.setAnimation('Turn On');
}
d.runLater(
200,
function (a) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(345)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.setAnimation('Normal');
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(548)); a < b.length; )
(c = b[a]), ++a, null == c || c.dead || c.recycled || c.setAnimation('Normal');
a = 0;
for (b = d.getActorsOfType(d.getActorType(347)); a < b.length; )
(c = b[a]), ++a, null == c || c.dead || c.recycled || c.setAnimation('Normal');
},
a.actor
);
},
this.actor
);
},
_customEvent_Exit: function () {
var a = this;
if (!this._ExitGo) {
this._CurrentPlatform = d.getDefaultValue(this._CurrentPlatform);
this._OnPlatform = !1;
this._ExitGo = !0;
k.engine.getGameAttribute('Timer Mode') &&
d.sayToScene('Stage Logic', '_customEvent_timerHide');
var b = this._Baby;
if (
d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)
) {
d.getCurrentSceneName();
var c = 0;
for (b = d.getActorsOfType(d.getActorType(234)); c < b.length; ) {
var e = b[c];
++c;
null == e || e.dead || e.recycled || d.recycleActor(e);
}
d.stopAllSounds();
if (k.engine.getGameAttribute('Star Collected') || this._StarCollected)
(k.engine.gameAttributes.h['Star Collected'] = !1),
d.sayToScene('Stage Logic', '_customEvent_starGet');
b = d.getCurrentSceneName().split(' ')[1];
(null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b))) > k.engine.getGameAttribute('Highest Level') &&
((c = k.engine),
(b = d.getCurrentSceneName().split(' ')[1]),
(b =
null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b))),
(c.gameAttributes.h['Highest Level'] = b));
d.saveGame('mySave', function (a) {});
this._ScreenX = this.actor.getScreenX();
this._ScreenY = this.actor.getScreenY();
this.actor.anchorToScreen();
this.actor.setX(this._ScreenX);
this.actor.setY(this._ScreenY);
b = this._PossumSprite;
if (
d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)
)
this._PossumSprite.anchorToScreen(),
this._PossumSprite.setX(this._ScreenX),
this._PossumSprite.setY(this._ScreenY);
this._ScreenX = this._Baby.getScreenX();
this._ScreenY = this._Baby.getScreenY();
this._Baby.anchorToScreen();
this._Baby.setX(this._ScreenX);
this._Baby.setY(this._ScreenY);
this._ExitOriginY = Math.floor(this.actor.getY() - 1);
this._BabyExitOriginY = this._Baby.getY();
this._BabyType = this._Baby.getAnimation();
b = this._Baby.getValue('Baby Logic', '_BabyTypeNumber');
this._BabyTypeNumber =
null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b));
this._Baby.getX() > this.actor.getX()
? (d.runLater(
500,
function (b) {
a.actor.setY(a._ExitOriginY);
a.actor.setAnimation('Jump Right');
a._Baby.setAnimation('' + a._BabyTypeNumber + ' Left Jump');
a._Baby.setCurrentFrame(0);
a.actor.setYVelocity(-a._JumpSpeed);
a._JumpAmnesty = 0;
a._JumpHang = 6;
a._Jumping = !0;
a._OnPlatform = !1;
a._JumpTouchTimer = 0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(109));
a.actor.setXVelocity(5);
a._Baby.setXVelocity(-5);
a._Baby.setYVelocity(-a._JumpSpeed);
},
this.actor
),
d.runLater(
1e3,
function (b) {
a.actor.setY(a._ExitOriginY);
d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud');
d.sayToScene('Stage Logic', '_customEvent_rumble');
a._Baby.setAnimation('' + a._BabyTypeNumber + ' Left Jump');
a._Baby.setCurrentFrame(0);
a.actor.setAnimation('Flip Right');
a.actor.setYVelocity(-a._JumpSpeed);
a._JumpAmnesty = 0;
a._JumpHang = 6;
a._Jumping = !0;
a._OnPlatform = !1;
a._JumpTouchTimer = 0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(109));
a.actor.setXVelocity(-5);
a._Baby.setXVelocity(5);
a._Baby.setYVelocity(-a._JumpSpeed);
},
this.actor
),
d.runLater(
1500,
function (b) {
a.actor.setY(a._ExitOriginY);
d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud');
d.sayToScene('Stage Logic', '_customEvent_rumble');
a.actor.setAnimation('Jump Right');
a._Baby.setAnimation('' + a._BabyTypeNumber + ' Left Jump');
a._Baby.setCurrentFrame(0);
a.actor.setYVelocity(-a._JumpSpeed);
a._JumpAmnesty = 0;
a._JumpHang = 6;
a._Jumping = !0;
a._OnPlatform = !1;
a._JumpTouchTimer = 0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(109));
a.actor.setXVelocity(5);
a._Baby.setXVelocity(-5);
a._Baby.setYVelocity(-a._JumpSpeed);
},
this.actor
))
: (d.runLater(
500,
function (b) {
a.actor.setY(a._ExitOriginY);
a.actor.setAnimation('Jump Left');
a._Baby.setAnimation('' + a._BabyTypeNumber + ' Right Jump');
a._Baby.setCurrentFrame(0);
a.actor.setYVelocity(-a._JumpSpeed);
a._JumpAmnesty = 0;
a._JumpHang = 6;
a._Jumping = !0;
a._OnPlatform = !1;
a._JumpTouchTimer = 0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(109));
a.actor.setXVelocity(-5);
a._Baby.setXVelocity(5);
a._Baby.setYVelocity(-a._JumpSpeed);
},
this.actor
),
d.runLater(
1e3,
function (b) {
a.actor.setY(a._ExitOriginY);
d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud');
d.sayToScene('Stage Logic', '_customEvent_rumble');
a.actor.setAnimation('Flip Left');
a.actor.setYVelocity(-a._JumpSpeed);
a._Baby.setAnimation('' + a._BabyTypeNumber + ' Right Jump');
a._Baby.setCurrentFrame(0);
a._JumpAmnesty = 0;
a._JumpHang = 6;
a._Jumping = !0;
a._OnPlatform = !1;
a._JumpTouchTimer = 0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(109));
a.actor.setXVelocity(5);
a._Baby.setXVelocity(-5);
a._Baby.setYVelocity(-a._JumpSpeed);
},
this.actor
),
d.runLater(
1500,
function (b) {
a.actor.setY(a._ExitOriginY);
d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud');
d.sayToScene('Stage Logic', '_customEvent_rumble');
a.actor.setAnimation('Jump Left');
a.actor.setYVelocity(-a._JumpSpeed);
a._Baby.setAnimation('' + a._BabyTypeNumber + ' Right Jump');
a._Baby.setCurrentFrame(0);
a._JumpAmnesty = 0;
a._JumpHang = 6;
a._Jumping = !0;
a._OnPlatform = !1;
a._JumpTouchTimer = 0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(109));
a.actor.setXVelocity(-5);
a._Baby.setXVelocity(5);
a._Baby.setYVelocity(-a._JumpSpeed);
},
this.actor
));
d.runLater(
2e3,
function (b) {
d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud');
d.sayToScene('Stage Logic', '_customEvent_rumble');
'Idle Left' == a.actor.getAnimation()
? a.actor.setAnimation('Ground Left')
: a.actor.setAnimation('Ground Right');
a._Baby.setAnimation(a._BabyType + ' Crouch');
},
this.actor
);
d.runLater(
2500,
function (b) {
a.actor.setAnimation('Jump Right');
a._Baby.setAnimation(a._BabyType + ' Jump');
a._FlyOffScreen = !0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(225));
d.setValueForScene('Stage Logic', '_RumbleName', 'Exit');
d.sayToScene('Stage Logic', '_customEvent_rumble');
a.actor.moveBy(0, -d.getScreenHeight(), 0.5, J.linear);
a._Baby.moveBy(0, -d.getScreenHeight(), 0.5, J.linear);
},
this.actor
);
d.runLater(
1e3,
function (a) {
d.sayToScene('Transitions', '_customEvent_transitionOut');
},
this.actor
);
d.runLater(
4400,
function (a) {
k.engine.gameAttributes.h['Checkpoint Passed'] = !1;
gb.commercialBreak(function () {
if ('Level' == d.getCurrentSceneName().split(' ')[0]) {
var a = d.getCurrentSceneName().split(' ')[1];
if (
10 ==
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a)))
) {
var b = Fa.get().scenes.h[54].getID(),
c = (a = 0),
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == a && (a = 0);
var f = d.createFadeOut(0.3, (a << 16) | (c << 8) | e);
} else
(a = d.getCurrentSceneName().split(' ')[1]),
20 ==
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a)))
? (b = Fa.get().scenes.h[55].getID())
: ((a = d.getCurrentSceneName().split(' ')[1]),
30 ==
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a)))
? (b = Fa.get().scenes.h[56].getID())
: ((a = d.getCurrentSceneName().split(' ')[1]),
40 ==
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a)))
? (b = Fa.get().scenes.h[59].getID())
: ((b = Fa.get().scenes),
(a = d.getCurrentSceneName().split(' ')[1]),
(a = d.getIDForScene(
'Level ' +
((null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a))) +
1)
)),
(b = b.h[a].getID())))),
(e = c = a = 0),
null == e && (e = 0),
null == c && (c = 0),
null == a && (a = 0),
(f = d.createFadeOut(0.3, (a << 16) | (c << 8) | e));
e = c = a = 0;
null == e && (e = 0);
null == c && (c = 0);
null == a && (a = 0);
d.switchScene(b, f, d.createFadeIn(0.3, (a << 16) | (c << 8) | e));
}
});
},
this.actor
);
}
}
},
_customEvent_setCameraBounds: function () {
0 == k.engine.getGameAttribute('Camera Boundary Number')
? (this._CameraBoundaryType = d.getActorType(455))
: 1 == k.engine.getGameAttribute('Camera Boundary Number')
? (this._CameraBoundaryType = d.getActorType(18))
: 2 == k.engine.getGameAttribute('Camera Boundary Number')
? (this._CameraBoundaryType = d.getActorType(80))
: 3 == k.engine.getGameAttribute('Camera Boundary Number') &&
(this._CameraBoundaryType = d.getActorType(82));
this._TopBoundary = d.getDefaultValue(this._TopBoundary);
this._BottomBoundary = d.getDefaultValue(this._BottomBoundary);
this._RightBoundary = d.getDefaultValue(this._RightBoundary);
this._LeftBoundary = d.getDefaultValue(this._LeftBoundary);
this._HasEntered &&
((this._CameraTransitionRight =
this._CameraTransitionLeft =
this._CameraTransitionBottom =
this._CameraTransitionTop =
!0),
(this._CameraBoundariesFound = !1));
},
_customEvent_Die: function () {
var a = this;
d.stopAllSounds();
gb.gameplayStop();
if (!this._Dead && !this._Hurt && !this._Exiting) {
var b = this._DirectionHint;
(d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
this._DirectionHint.disableActorDrawing();
b = this._JumpButton;
(d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
this._JumpButton.disableActorDrawing();
k.engine.gameAttributes.h.Dead = !0;
k.engine.getGameAttribute('Timer Mode') &&
d.sayToScene('Stage Logic', '_customEvent_timerHide');
d.createRecycledActor(d.getActorType(14), d.getScreenX() - 5, d.getScreenY() - 5, 0);
this.actor.setAnimation('Dead');
this.actor.bringToFront();
b = this._PossumSprite;
(d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
this._PossumSprite.bringToFront();
this._Hurt = !0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(134));
d.startShakingScreen(0.01, 0.1);
d.createRecycledActor(
d.getActorType(103),
this.actor.getXCenter(),
this.actor.getYCenter(),
0
);
this.actor.setYVelocity(-30);
this._LeftWasHit
? this.actor.setXVelocity(16)
: this._RightWasHit && this.actor.setXVelocity(-16);
d.runLater(
100,
function (b) {
a._Dead = !0;
d.runLater(
800,
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 1);
d.sayToScene('Transitions', '_customEvent_transitionOut');
},
a.actor
);
d.runLater(
1400,
function (a) {
gb.commercialBreak(function () {
var a = 0,
b = 0,
c = 0;
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
var e = d.createFadeOut(0.3, (a << 16) | (b << 8) | c);
c = b = a = 0;
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
d.reloadCurrentScene(e, d.createFadeIn(0.3, (a << 16) | (b << 8) | c));
});
},
a.actor
);
},
this.actor
);
}
},
_customEvent_clearTouches: function () {
this._RightTouchIsDown = this._LeftTouchIsDown = !1;
},
init: function () {
var a = this;
D.setJoySensitivity(0.5);
k.engine.gameAttributes.h.Dead = !1;
this.actor.makeAlwaysSimulate();
this.actor.moveToTop();
k.engine.getGameAttribute('Possum Mode') &&
(d.createRecycledActorOnLayer(
d.getActorType(537),
this.actor.getX(),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
(this._PossumSprite = d.getLastCreatedActor()),
this.actor.disableActorDrawing());
this._JumpSpeed = 46;
this._RunSpeed = 16;
this._GravitySpeed = 48;
this._LeftTouchMargin = 28;
this._FacingRight = !0;
k.engine.getGameAttribute('MOBILE MODE')
? (d.createRecycledActor(
d.getActorType(533),
2 * Math.round((0.1428 * d.getScreenWidth()) / 2) - 36,
d.getScreenHeight() - 98,
0
),
(this._GoButton = d.getLastCreatedActor()))
: ((k.engine.gameAttributes.h['Direction Hint'] = !1),
d.createRecycledActor(d.getActorType(766), 24, d.getScreenHeight() - 66, 0),
(this._ZButtonIndicator = d.getLastCreatedActor()),
d.createRecycledActor(
d.getActorType(96),
this.actor.getXCenter() - 16,
this.actor.getY() - 64,
0
),
(this._Arrow = d.getLastCreatedActor()));
this._CameraX = this.actor.getXCenter();
this._CameraY = this.actor.getYCenter();
d.createRecycledActor(
d.getActorType(10),
this.actor.getXCenter(),
this.actor.getYCenter(),
0
);
this._CameraTarget = d.getLastCreatedActor();
this._CameraTarget.makeAlwaysSimulate();
this._CameraTarget.disableActorDrawing();
d.engine.moveCamera(this._CameraTarget.getX(), this._CameraTarget.getY());
this.actor.say('Dude Logic', '_customEvent_setCameraBounds');
('JP' != k.engine.getGameAttribute('Language') &&
'CN' != k.engine.getGameAttribute('Language') &&
'KR' != k.engine.getGameAttribute('Language')) ||
this._GoButton.setAnimation('WW Normal');
d.runLater(
500,
function (b) {
a._CanStart = !0;
d.sayToScene('Stage Logic', '_customEvent_createPauseButton');
},
this.actor
);
d.createRecycledActor(d.getActorType(150), 0, 0, 0);
this._TouchXSensor = d.getLastCreatedActor();
d.getLastCreatedActor().anchorToScreen();
d.getLastCreatedActor().disableActorDrawing();
d.createRecycledActor(
d.getActorType(637),
this.actor.getXCenter() - 32,
this.actor.getY() + this.actor.getHeight(),
0
);
this._GroundSensor = d.getLastCreatedActor();
d.getLastCreatedActor().makeAlwaysSimulate();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(
d.engine.whenKeyPressedEvents.getOrCreateEvent('action1'),
q(this, this._event_KeyboardStarted)
);
this.addListener(
d.engine.whenKeyPressedEvents.getOrCreateEvent('action1'),
q(this, this._event_KeyboardReleased)
);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsPlatform));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHazard));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsBaby));
this.addListener(this.actor.whenUpdated, q(this, this._event_MoveToBabyPos));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsKey));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsCrate));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsBigCrate));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsCameraSensor));
this.addListener(this.actor.whenUpdated, q(this, this._event_Camera));
this.addListener(this.actor.whenUpdated, q(this, this._event_Movement));
d.runPeriodically(500, q(this, this._event_Sweat), this.actor);
d.runPeriodically(40, q(this, this._event_EveryNsecs), this.actor);
d.runPeriodically(200, q(this, this._event_Steps), this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Animations));
this.addListener(this._GroundSensor.whenCollided, q(this, this._event_SensorHitsTiles));
this.addListener(
this._GroundSensor.whenCollided,
q(this, this._event_SensorHitsPlatform)
);
this.addListener(d.engine.whenMTStarted, q(this, this._event_TouchStarted));
this.addListener(d.engine.whenMTStarted, q(this, this._event_Jump));
this.addListener(d.engine.whenMTDragged, q(this, this._event_TouchDragged));
this.addListener(d.engine.whenMTEnded, q(this, this._event_TouchReleased));
this.addListener(this.actor.whenUpdated, q(this, this._event_DirectionHint));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating2));
},
forwardMessage: function (a) {},
__class__: Au
});
var Bu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h.Letter = '_Letter';
this._Letter = '';
this.nameMap.h.Float = '_Float';
this._Float = !1;
this.nameMap.h['Origin Y'] = '_OriginY';
this._OriginY = 0;
this.nameMap.h.Up = '_Up';
this._Up = !1;
this.nameMap.h.White = '_White';
this._White = !1;
};
h['scripts.Design_300_300_AreaClearLetterLogic'] = Bu;
Bu.__name__ = 'scripts.Design_300_300_AreaClearLetterLogic';
Bu.__super__ = u;
Bu.prototype = r(u.prototype, {
_Letter: null,
_Float: null,
_OriginY: null,
_Up: null,
_White: null,
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this._Float &&
(this._Up
? this.actor.getY() <= this._OriginY - 1
? (this._Up = !1)
: this.actor.setY(this.actor.getY() - 1)
: this.actor.getY() >= this._OriginY + 1
? (this._Up = !0)
: this.actor.setY(this.actor.getY() + 1));
},
_event_Exit: function (a) {
var b = this;
this.wrapper.enabled &&
(this.actor.moveTo(d.getScreenWidth() + 8, this.actor.getY(), 0.4, J.quadInOut),
d.runLater(
500,
function (a) {
d.recycleActor(b.actor);
},
this.actor
));
},
_event_Drawing: function (a, b, c) {
if (
this.wrapper.enabled &&
((b = this._Letter),
(d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
!d.engine.isPaused())
) {
b = this._White ? d.getFont(526) : d.getFont(479);
null != b && b != a.font && (a.font = b);
var e = this._Letter;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + 0 * a.scaleX), (c = a.y + 0 * a.scaleY))
: ((b = a.x + 0 * a.scaleX - k.cameraX), (c = a.y + 0 * a.scaleY - k.cameraY))
: ((b = a.x + 0 * a.scaleX), (c = a.y + 0 * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
var f = null,
g = a.font;
g = e + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g))
(e = W.drawnStringCache.h[g]), (e.lifetime = 5), (f = e.img);
else {
var h = a.font.font.getTextWidth(e, a.font.letterSpacing, a.font.fontScale),
l = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
e,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(e = new Mb()),
(e.img = f),
(e.lifetime = 5),
(W.drawnStringCache.h[g] = e),
W.drawnStringCacheKeys.push(g));
}
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, f.width, f.height),
a.graphics.endFill());
}
},
init: function () {
var a = this;
this._OriginY = this.actor.getY();
this.actor.makeAlwaysSimulate();
this.actor.anchorToScreen();
d.runLater(
500,
function (b) {
a._Float = !0;
},
this.actor
);
d.runPeriodically(200, q(this, this._event_EveryNsecs), this.actor);
d.runLater(6500, q(this, this._event_Exit), this.actor);
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
},
forwardMessage: function (a) {},
__class__: Bu
});
var Cu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h.Bottom = '_Bottom';
this._Bottom = 0;
};
h['scripts.Design_333_333_CannotExitScene'] = Cu;
Cu.__name__ = 'scripts.Design_333_333_CannotExitScene';
Cu.__super__ = u;
Cu.prototype = r(u.prototype, {
_Bottom: null,
_event_Updated: function (a) {
this.wrapper.enabled &&
(0 > this.actor.getX() && (this.actor.setX(0), this.actor.setXVelocity(0)),
0 > this.actor.getY() && (this.actor.setY(0), this.actor.setYVelocity(0)),
this.actor.getX() + this.actor.getWidth() > d.getSceneWidth() &&
(this.actor.setX(d.getSceneWidth() - this.actor.getWidth()),
this.actor.setXVelocity(0)),
this.actor.getY() + this.actor.getHeight() > d.getSceneHeight() &&
(this.actor.setY(d.getSceneHeight() - this.actor.getHeight()),
this.actor.setYVelocity(0)));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated));
},
forwardMessage: function (a) {},
__class__: Cu
});
var Du = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
};
h['scripts.Design_338_338_CannotExitScreen'] = Du;
Du.__name__ = 'scripts.Design_338_338_CannotExitScreen';
Du.__super__ = u;
Du.prototype = r(u.prototype, {
_event_Updated: function (a) {
this.wrapper.enabled &&
(0 > this.actor.getScreenX() &&
(this.actor.setX(d.getScreenX()), this.actor.setXVelocity(0)),
0 > this.actor.getScreenY() &&
(this.actor.setY(d.getScreenY()), this.actor.setYVelocity(0)),
this.actor.getScreenX() + this.actor.getWidth() > d.getScreenWidth() &&
(this.actor.setX(d.getScreenX() + (d.getScreenWidth() - this.actor.getWidth())),
this.actor.setXVelocity(0)),
this.actor.getScreenY() + this.actor.getHeight() > d.getScreenHeight() &&
(this.actor.setY(d.getScreenY() + (d.getScreenHeight() - this.actor.getHeight())),
this.actor.setYVelocity(0)));
},
init: function () {
this.actor.makeAlwaysSimulate();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated));
},
forwardMessage: function (a) {},
__class__: Du
});
var Eu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Block Col'] = '_BlockCol';
this._BlockCol = 0;
this.nameMap.h['Block Row'] = '_BlockRow';
this._BlockRow = 0;
this.nameMap.h['Row Count'] = '_RowCount';
this._RowCount = 0;
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h.Last = '_Last';
this._Last = !1;
this.nameMap.h['Y Count'] = '_YCount';
this._YCount = 0;
this.nameMap.h['Copy Actor Type'] = '_CopyActorType';
this.nameMap.h['Copy Actor X'] = '_CopyActorX';
this._CopyActorX = 0;
this.nameMap.h['Copy Actor Y'] = '_CopyActorY';
this._CopyActorY = 0;
this.nameMap.h['Actor To Copy'] = '_ActorToCopy';
this.nameMap.h['Actor Speed'] = '_ActorSpeed';
this._ActorSpeed = 0;
this.nameMap.h['Actor Ease'] = '_ActorEase';
this._ActorEase = !1;
this.nameMap.h['Actor PathString'] = '_ActorPathString';
this._ActorPathString = '';
this.nameMap.h['Actor Delay'] = '_ActorDelay';
this._ActorDelay = 0;
this.nameMap.h['Actor FaceLeft'] = '_ActorFaceLeft';
this._ActorFaceLeft = !1;
this.nameMap.h['Actor HasSpring'] = '_ActorHasSpring';
this._ActorHasSpring = !1;
};
h['scripts.Design_345_345_EndlessNodeLogic'] = Eu;
Eu.__name__ = 'scripts.Design_345_345_EndlessNodeLogic';
Eu.__super__ = u;
Eu.prototype = r(u.prototype, {
_BlockCol: null,
_BlockRow: null,
_RowCount: null,
_First: null,
_Last: null,
_YCount: null,
_CopyActorType: null,
_CopyActorX: null,
_CopyActorY: null,
_ActorToCopy: null,
_ActorSpeed: null,
_ActorEase: null,
_ActorPathString: null,
_ActorDelay: null,
_ActorFaceLeft: null,
_ActorHasSpring: null,
_customEvent_Go: function () {
this._BlockCol = 1;
'Right' == this.actor.getAnimation()
? (this._First || (this._BlockCol = d.randomInt(2, 9)), (this._BlockRow = 0))
: 'Up' == this.actor.getAnimation()
? (this._BlockRow = 1)
: 'Right Up' == this.actor.getAnimation()
? (this._BlockRow = 2)
: 'Up Right' == this.actor.getAnimation()
? (this._BlockRow = 3)
: 'Right Down' == this.actor.getAnimation()
? (this._BlockRow = 4)
: 'Down Right' == this.actor.getAnimation()
? (this._BlockRow = 5)
: 'Down' == this.actor.getAnimation() && (this._BlockRow = 6);
for (var a = 0; 13 > a; ) {
for (var b = a++, c = 0; 12 > c; ) {
var e = c++;
d.removeTileAt(
(this.actor.getY() / 32 + this._RowCount) | 0,
(this.actor.getX() / 32 + e) | 0,
d.engine.getLayerById(0)
);
d.tileExistsAt(
(12 * this._BlockRow + this._RowCount) | 0,
(12 * this._BlockCol + e) | 0,
d.engine.getLayerById(0)
) &&
46 !=
d.getTileIDAt(
(12 * this._BlockRow + this._RowCount) | 0,
(12 * this._BlockCol + e) | 0,
d.engine.getLayerById(0)
) &&
d.setTileAt(
(this.actor.getY() / 32 + this._RowCount) | 0,
(this.actor.getX() / 32 + e) | 0,
d.engine.getLayerById(0),
615,
d.getTileIDAt(
(12 * this._BlockRow + this._RowCount) | 0,
(12 * this._BlockCol + e) | 0,
d.engine.getLayerById(0)
)
);
}
this._RowCount = b;
}
a = 0;
for (c = x.__cast(d.getActorGroup(4), ze).list; a < c.length; )
(b = c[a]),
++a,
null != b &&
!b.dead &&
!b.recycled &&
b.getX() >= 384 * this._BlockCol &&
b.getX() <= 384 * (this._BlockCol + 1) + this.actor.getWidth() &&
b.getY() >= 384 * this._BlockRow &&
b.getY() <= 384 * (this._BlockRow + 1) + this.actor.getHeight() &&
((this._ActorToCopy = b),
(e = this._ActorToCopy.getValue('Set Path', '_Speed')),
(this._ActorSpeed =
null == e
? 0
: 'number' == typeof e
? x.__cast(e, Nb)
: 'number' == typeof e && (e | 0) === e
? x.__cast(e, Ab)
: 'boolean' == typeof e
? x.__cast(e, Ob)
? 1
: 0
: 'string' == typeof e
? parseFloat(e)
: parseFloat(B.string(e))),
(this._ActorEase = this._ActorToCopy.getValue('Set Path', '_Ease')),
(this._ActorPathString =
'' + B.string(this._ActorToCopy.getValue('Set Path', '_PathString'))),
(e = this._ActorToCopy.getValue('Set Path', '_Delay')),
(this._ActorDelay =
null == e
? 0
: 'number' == typeof e
? x.__cast(e, Nb)
: 'number' == typeof e && (e | 0) === e
? x.__cast(e, Ab)
: 'boolean' == typeof e
? x.__cast(e, Ob)
? 1
: 0
: 'string' == typeof e
? parseFloat(e)
: parseFloat(B.string(e))),
b.hasBehavior('Set Path'),
(this._ActorFaceLeft = this._ActorToCopy.getValue(
'Back And Forth Movement',
'_FaceLeft'
)),
(e = this._ActorToCopy.getValue('Back And Forth Movement', '_Speed')),
(this._ActorSpeed =
null == e
? 0
: 'number' == typeof e
? x.__cast(e, Nb)
: 'number' == typeof e && (e | 0) === e
? x.__cast(e, Ab)
: 'boolean' == typeof e
? x.__cast(e, Ob)
? 1
: 0
: 'string' == typeof e
? parseFloat(e)
: parseFloat(B.string(e))),
(this._ActorHasSpring = this._ActorToCopy.getValue(
'Back And Forth Movement',
'_HasSpring'
)),
b.hasBehavior('Back And Forth Movement'),
(this._CopyActorType = b.getType()),
(this._CopyActorX = b.getX() - 384 * this._BlockCol),
(this._CopyActorY = b.getY() - 384 * this._BlockRow),
d.createRecycledActorOnLayer(
this._CopyActorType,
this.actor.getX() + this._CopyActorX,
this.actor.getY() + this._CopyActorY,
d.engine.getLayerById(3)
),
d.getLastCreatedActor().setValue('Set Path', '_Speed', this._ActorSpeed),
d.getLastCreatedActor().setValue('Set Path', '_Ease', this._ActorEase),
d.getLastCreatedActor().setValue('Set Path', '_PathString', this._ActorPathString),
d.getLastCreatedActor().setValue('Set Path', '_Delay', this._ActorDelay),
d
.getLastCreatedActor()
.setValue('Back And Forth Movement', '_FaceLeft', this._ActorFaceLeft),
d
.getLastCreatedActor()
.setValue('Back And Forth Movement', '_Speed', this._ActorSpeed),
d
.getLastCreatedActor()
.setValue('Back And Forth Movement', '_HasSpring', this._ActorHasSpring));
a = 0;
for (c = x.__cast(d.getActorGroup(1), ze).list; a < c.length; )
(b = c[a]),
++a,
!(
null == b ||
b.dead ||
b.recycled ||
(b.getType() != d.getActorType(60) &&
b.getType() != d.getActorType(16) &&
b.getType() != d.getActorType(341) &&
b.getType() != d.getActorType(343) &&
b.getType() != d.getActorType(58))
) &&
b.getX() >= 384 * this._BlockCol &&
b.getX() <= 384 * (this._BlockCol + 1) + this.actor.getWidth() &&
b.getY() >= 384 * this._BlockRow &&
b.getY() <= 384 * (this._BlockRow + 1) + this.actor.getHeight() &&
((this._CopyActorType = b.getType()),
(this._CopyActorX = b.getX() - 384 * this._BlockCol),
(this._CopyActorY = b.getY() - 384 * this._BlockRow),
d.createRecycledActorOnLayer(
this._CopyActorType,
this.actor.getX() + this._CopyActorX,
this.actor.getY() + this._CopyActorY,
d.engine.getLayerById(3)
));
a = 0;
for (c = x.__cast(d.getActorGroup(2), ze).list; a < c.length; )
(b = c[a]),
++a,
null != b &&
!b.dead &&
!b.recycled &&
b.getX() >= 384 * this._BlockCol &&
b.getX() <= 384 * (this._BlockCol + 1) + this.actor.getWidth() &&
b.getY() >= 384 * this._BlockRow &&
b.getY() <= 384 * (this._BlockRow + 1) + this.actor.getHeight() &&
((this._CopyActorType = b.getType()),
(this._CopyActorX = b.getX() - 384 * this._BlockCol),
(this._CopyActorY = b.getY() - 384 * this._BlockRow),
d.createRecycledActorOnLayer(
this._CopyActorType,
this.actor.getX() + this._CopyActorX,
this.actor.getY() + this._CopyActorY,
d.engine.getLayerById(3)
));
a = 0;
for (c = x.__cast(d.getActorGroup(3), ze).list; a < c.length; )
(b = c[a]),
++a,
null != b &&
!b.dead &&
!b.recycled &&
b.getX() >= 384 * this._BlockCol &&
b.getX() <= 384 * (this._BlockCol + 1) + this.actor.getWidth() &&
b.getY() >= 384 * this._BlockRow &&
b.getY() <= 384 * (this._BlockRow + 1) + this.actor.getHeight() &&
((this._CopyActorType = b.getType()),
(this._CopyActorX = b.getX() - 384 * this._BlockCol),
(this._CopyActorY = b.getY() - 384 * this._BlockRow),
d.createRecycledActorOnLayer(
this._CopyActorType,
this.actor.getX() + this._CopyActorX,
this.actor.getY() + this._CopyActorY,
d.engine.getLayerById(3)
));
a = 0;
for (c = x.__cast(d.getActorGroup(5), ze).list; a < c.length; )
(b = c[a]),
++a,
null != b &&
!b.dead &&
!b.recycled &&
b.getX() >= 384 * this._BlockCol &&
b.getX() <= 384 * (this._BlockCol + 1) + this.actor.getWidth() &&
b.getY() >= 384 * this._BlockRow &&
b.getY() <= 384 * (this._BlockRow + 1) + this.actor.getHeight() &&
((this._CopyActorType = b.getType()),
(this._CopyActorX = b.getX() - 384 * this._BlockCol),
(this._CopyActorY = b.getY() - 384 * this._BlockRow),
d.createRecycledActorOnLayer(
this._CopyActorType,
this.actor.getX() + this._CopyActorX,
this.actor.getY() + this._CopyActorY,
d.engine.getLayerById(3)
));
this._First &&
d.createRecycledActor(
d.getActorType(70),
this.actor.getX() + 96,
this.actor.getY() + 320,
1
);
},
init: function () {},
forwardMessage: function (a) {},
__class__: Eu
});
var Fu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h.Left = '_Left';
this._Left = !1;
this.nameMap.h['Number Of Hops'] = '_NumberOfHops';
this._NumberOfHops = 1;
this.nameMap.h['Hop Count'] = '_HopCount';
this._HopCount = 0;
this.nameMap.h.Hopping = '_Hopping';
this._Hopping = !1;
this.nameMap.h['Start Y'] = '_StartY';
this._StartY = 0;
this.nameMap.h['On Platform'] = '_OnPlatform';
this._OnPlatform = !1;
this.nameMap.h.Dead = '_Dead';
this._Dead = !1;
this.nameMap.h['Straight Up'] = '_StraightUp';
this._StraightUp = !1;
this.nameMap.h.Splash = '_Splash';
this._Splash = !1;
this.nameMap.h['Face Left'] = '_FaceLeft';
this._FaceLeft = !1;
this.nameMap.h['Snooze Z List'] = '_SnoozeZList';
this.nameMap.h.Snore = '_Snore';
this._Snore = !1;
this.nameMap.h['Going Left'] = '_GoingLeft';
this._GoingLeft = !1;
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['X Distance'] = '_XDistance';
this._XDistance = 0;
this.nameMap.h.Charging = '_Charging';
this._Charging = !1;
this.nameMap.h.Wander = '_Wander';
this._Wander = !1;
this.nameMap.h['Has Charged'] = '_HasCharged';
this._HasCharged = !1;
this.nameMap.h.Exclamation = '_Exclamation';
this.nameMap.h['Charge Speed'] = '_ChargeSpeed';
this._ChargeSpeed = 0;
this.nameMap.h.Stunned = '_Stunned';
this._Stunned = !1;
this.nameMap.h.Sleeping = '_Sleeping';
this._Sleeping = !1;
};
h['scripts.Design_356_356_BoundingMovement'] = Fu;
Fu.__name__ = 'scripts.Design_356_356_BoundingMovement';
Fu.__super__ = u;
Fu.prototype = r(u.prototype, {
_GravitySpeed: null,
_OnGround: null,
_GroundCheck: null,
_Left: null,
_NumberOfHops: null,
_HopCount: null,
_Hopping: null,
_StartY: null,
_OnPlatform: null,
_Dead: null,
_StraightUp: null,
_Splash: null,
_FaceLeft: null,
_SnoozeZList: null,
_Snore: null,
_GoingLeft: null,
_Dude: null,
_XDistance: null,
_Charging: null,
_Wander: null,
_HasCharged: null,
_Exclamation: null,
_ChargeSpeed: null,
_Stunned: null,
_Sleeping: null,
_event_Updating: function (a) {
var b = this;
if (this.wrapper.enabled) {
if (!this._Dead) {
if (this._GroundCheck || (this._OnPlatform && this.actor.getY() >= this._StartY)) {
if ((this._OnPlatform && this.actor.setY(this._StartY), !this._OnGround)) {
this._OnGround = !0;
this.actor.setXVelocity(0);
this.actor.isOnScreen() &&
!k.engine.getGameAttribute('Sound Disabled') &&
d.playSound(d.getSound(117));
if (this.actor.isOnScreen()) {
a = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); a < c.length; ) {
var e = c[a];
++a;
null == e ||
e.dead ||
e.recycled ||
(this.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
}
}
this._Hopping &&
(this._Left
? this.actor.setAnimation('Idle Left')
: this.actor.setAnimation('Idle Right'),
(this._Hopping = !1),
d.runLater(
100,
function (a) {
b.actor.say('Bounding Movement', '_customEvent_Hop');
},
this.actor
));
}
} else this._OnGround && (this._OnGround = !1);
this._GroundCheck = !1;
(this._OnPlatform && this.actor.getY() >= this._StartY) ||
this.actor.setYVelocity(
Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed)
);
}
this._Left &&
(!d.tileExistsAt(
Math.round((this._StartY + (this.actor.getHeight() - 34)) / 32 + 1),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
) ||
(d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
) &&
7 <
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
)))
? ((this._Left = !1), this.actor.setXVelocity(0))
: this._Left ||
(d.tileExistsAt(
Math.round((this._StartY + (this.actor.getHeight() - 34)) / 32 + 1),
Math.ceil(this.actor.getX() / 32),
d.engine.getLayerById(0)
) &&
!(
d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.ceil(this.actor.getX() / 32),
d.engine.getLayerById(0)
) &&
7 <
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.ceil(this.actor.getX() / 32),
d.engine.getLayerById(0)
)
)) ||
((this._Left = !0), this.actor.setXVelocity(0));
}
},
_event_ActorAny: function (a) {
var b = this;
this.wrapper.enabled &&
(this._OnPlatform ||
(this.internalGetGroup(a.otherActor, a.otherShape, a) != d.getActorGroup(1) &&
this.internalGetGroup(a.otherActor, a.otherShape, a) != d.getActorGroup(8)) ||
!a.thisFromBottom ||
(this._GroundCheck = !0),
a.otherActor.getType() != d.getActorType(203) ||
this._Dead ||
((this._Dead = !0),
this.actor.setFilter([d.createBrightnessFilter(100)]),
d.runLater(
100,
function (a) {
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(378));
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
d.recycleActor(b.actor);
},
this.actor
)));
},
_event_Sleep: function (a) {
this.wrapper.enabled &&
'Sleep' == this.actor.getAnimation() &&
(d.createRecycledActor(
d.getActorType(127),
this.actor.getXCenter() - 12,
this.actor.getY(),
0
),
this._SnoozeZList.push(d.getLastCreatedActor()),
this._Snore
? (this._Snore = !1)
: ((this._Snore = !0),
!k.engine.getGameAttribute('Sound Disabled') &&
this.actor.isOnScreen() &&
d.playSound(d.getSound(454))));
},
_event_SnoozeZKilled: function (a) {
this.wrapper.enabled &&
X.contains(this._SnoozeZList, a) &&
A.remove(this._SnoozeZList, a);
},
_event_EveryNsecs: function (a) {
var b = this;
if (this.wrapper.enabled && this._Sleeping)
if (
((a = this._Dude),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
) {
if (
((this._XDistance =
Math.max(this.actor.getXCenter(), this._Dude.getXCenter()) -
Math.min(this.actor.getXCenter(), this._Dude.getXCenter())),
this._Dude.getYCenter() > this.actor.getY() &&
this._Dude.getYCenter() < this.actor.getY() + this.actor.getHeight() &&
200 > this._XDistance &&
!this._Charging &&
!this._HasCharged &&
!this._Stunned)
) {
a = 0;
for (e = x.__cast(this._SnoozeZList, Array); a < e.length; ) {
var c = e[a];
++a;
c.isAlive() && d.recycleActor(c);
}
this._Dude.getX() > this.actor.getX()
? this._Left ||
((this._Charging = !0),
d.createRecycledActor(
d.getActorType(131),
this.actor.getXCenter() - 14,
this.actor.getY() - 28,
0
),
(this._Exclamation = d.getLastCreatedActor()),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(373)),
this.actor.setXVelocity(0),
this.actor.setYVelocity(-20),
this.actor.setAnimation('Idle Right'),
d.runLater(
500,
function (a) {
d.recycleActor(b._Exclamation);
},
this.actor
),
d.runLater(
700,
function (a) {
b.actor.say('Bounding Movement', '_customEvent_Hop');
},
this.actor
))
: this._Left &&
((this._Charging = !0),
d.createRecycledActor(
d.getActorType(131),
this.actor.getXCenter() - 14,
this.actor.getY() - 28,
0
),
d.getLastCreatedActor().setAnimation('Right'),
(this._Exclamation = d.getLastCreatedActor()),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(373)),
this.actor.setXVelocity(0),
this.actor.setYVelocity(-20),
this.actor.setAnimation('Idle Left'),
d.runLater(
500,
function (a) {
d.recycleActor(b._Exclamation);
},
this.actor
),
d.runLater(
700,
function (a) {
b.actor.say('Bounding Movement', '_customEvent_Hop');
},
this.actor
));
}
} else {
a = 0;
for (var e = d.getActorsOfType(d.getActorType(2)); a < e.length; )
(c = e[a]), ++a, null == c || c.dead || c.recycled || (this._Dude = c);
}
},
_customEvent_Hop: function () {
this._Dead ||
((this._Hopping = !0),
this.actor.setYVelocity(-30),
this._StraightUp ||
(this._Left
? (this.actor.setAnimation('LeftHop'), this.actor.setXVelocity(-11.6))
: (this.actor.setAnimation('RightHop'), this.actor.setXVelocity(11.6))));
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this._GroundCheck = this._OnGround = !0;
this._StartY = this.actor.getY();
this._SnoozeZList = [];
this._Sleeping
? (this.actor.setAnimation('Sleep'), (this._Left = !0))
: this.actor.say('Bounding Movement', '_customEvent_Hop');
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_ActorAny));
d.runPeriodically(700, q(this, this._event_Sleep), this.actor);
this.addListenerWithKey(
d.engine.whenTypeGroupKilledEvents,
d.getActorType(127),
q(this, this._event_SnoozeZKilled)
);
d.runPeriodically(100, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Fu
});
var Gu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h['Start Y'] = '_StartY';
this._StartY = 0;
this.nameMap.h.Hopping = '_Hopping';
this._Hopping = !1;
this.nameMap.h.Splash = '_Splash';
this._Splash = !1;
this.nameMap.h.Left = '_Left';
this._Left = !1;
this.nameMap.h['Straight Up'] = '_StraightUp';
this._StraightUp = !1;
this.nameMap.h['Hop Count'] = '_HopCount';
this._HopCount = 0;
this.nameMap.h['Number Of Hops'] = '_NumberOfHops';
this._NumberOfHops = 1;
this.nameMap.h.Dead = '_Dead';
this._Dead = !1;
this.nameMap.h['Swoop Go'] = '_SwoopGo';
this._SwoopGo = !1;
this.nameMap.h['Swoop Return'] = '_SwoopReturn';
this._SwoopReturn = !1;
this.nameMap.h['X Tweener'] = '_XTweener';
this.nameMap.h['Y Tweener'] = '_YTweener';
this.nameMap.h.Distance = '_Distance';
this._Distance = 0;
};
h['scripts.Design_358_358_SwoopingMovement'] = Gu;
Gu.__name__ = 'scripts.Design_358_358_SwoopingMovement';
Gu.__super__ = u;
Gu.prototype = r(u.prototype, {
_GravitySpeed: null,
_OnGround: null,
_GroundCheck: null,
_StartY: null,
_Hopping: null,
_Splash: null,
_Left: null,
_StraightUp: null,
_HopCount: null,
_NumberOfHops: null,
_Dead: null,
_SwoopGo: null,
_SwoopReturn: null,
_XTweener: null,
_YTweener: null,
_Distance: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
((a = this._XTweener),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)
? ((a = this._YTweener),
(a = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a))
: (a = !1),
a && (this.actor.setX(this._XTweener.getX()), this.actor.setY(this._YTweener.getY())));
},
_customEvent_Swoop: function () {
var a = this;
this._Distance = 200;
this._YTweener.moveBy(0, this._Distance / 2, 1.2, J.quadInOut);
d.runLater(
1250,
function (b) {
a._YTweener.moveBy(0, -(a._Distance / 2), 1.2, J.quadInOut);
},
this.actor
);
this._Left
? this._XTweener.moveBy(-this._Distance, 0, 2.5, J.quadInOut)
: this._XTweener.moveBy(this._Distance, 0, 2.5, J.quadInOut);
d.runLater(
3400,
function (b) {
a._Left = a._Left ? !1 : !0;
a.actor.say('Swooping Movement', '_customEvent_Swoop');
},
this.actor
);
},
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
this._StartY = this.actor.getY();
d.createRecycledActor(d.getActorType(635), this.actor.getX(), this.actor.getY(), 0);
this._XTweener = d.getLastCreatedActor();
d.getLastCreatedActor().makeAlwaysSimulate();
d.createRecycledActor(d.getActorType(635), this.actor.getX(), this.actor.getY(), 0);
this._YTweener = d.getLastCreatedActor();
d.getLastCreatedActor().makeAlwaysSimulate();
d.runLater(
1e3,
function (b) {
a.actor.say('Swooping Movement', '_customEvent_Swoop');
},
this.actor
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Gu
});
var Hu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Hit Ground'] = '_HitGround';
this._HitGround = !1;
this.nameMap.h['Sensor Row Count'] = '_SensorRowCount';
this._SensorRowCount = 0;
this.nameMap.h['Sensor Column Count'] = '_SensorColumnCount';
this._SensorColumnCount = 0;
this.nameMap.h['Shake Image'] = '_ShakeImage';
this.nameMap.h['Shake Image Instance'] = '_ShakeImageInstance';
this.nameMap.h['Shake Count'] = '_ShakeCount';
this._ShakeCount = 0;
this.nameMap.h.Left = '_Left';
this._Left = !1;
this.nameMap.h.Shake = '_Shake';
this._Shake = !1;
this.nameMap.h['Sensor List'] = '_SensorList';
this.nameMap.h.Fall = '_Fall';
this._Fall = !1;
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h.Done = '_Done';
this._Done = !1;
this.nameMap.h['Has Hit Dude'] = '_HasHitDude';
this._HasHitDude = !1;
this.nameMap.h.Height = '_Height';
this._Height = 0;
};
h['scripts.Design_35_35_FallingBlockLogic'] = Hu;
Hu.__name__ = 'scripts.Design_35_35_FallingBlockLogic';
Hu.__super__ = u;
Hu.prototype = r(u.prototype, {
_HitGround: null,
_SensorRowCount: null,
_SensorColumnCount: null,
_ShakeImage: null,
_ShakeImageInstance: null,
_ShakeCount: null,
_Left: null,
_Shake: null,
_SensorList: null,
_Fall: null,
_GravitySpeed: null,
_Done: null,
_HasHitDude: null,
_Height: null,
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this._Shake &&
!this._Fall &&
!this._Done &&
(d.attachImageToActor(
this._ShakeImageInstance,
this.actor,
(-2 + this._ShakeCount) | 0,
0,
1
),
6 != this._ShakeCount || this._Left
? 0 == this._ShakeCount && this._Left && (this._Left = !1)
: (this._Left = !0),
(this._ShakeCount = this._Left ? this._ShakeCount - 2 : this._ShakeCount + 2));
},
_event_DudeHitsSensor: function (a) {
this.wrapper.enabled &&
X.contains(this._SensorList, a.otherActor) &&
this.actor.say('Falling Block Logic', '_customEvent_Fall');
},
_event_HitsDude: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(2);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b && a.thisFromTop && this.actor.say('Falling Block Logic', '_customEvent_Fall');
},
_customEvent_Fall: function () {
var a = this;
if (!this._Shake && !this._Fall && !this._Done) {
this._Shake = !0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(106));
this.actor.moveToBottom();
for (var b = 0, c = x.__cast(this._SensorList, Array); b < c.length; ) {
var e = c[b];
++b;
d.recycleActor(e);
}
d.runLater(
1e3,
function (b) {
a._Fall = !0;
a.actor.moveBy(0, 32 * a._Height, 0.08 * a._Height, J.quadIn);
a.actor.setAnimation('Fall');
a._Shake = !1;
d.attachImageToActor(a._ShakeImageInstance, a.actor, 0, 0, 1);
d.runLater(
80 * a._Height,
function (b) {
a._Done = !0;
a._Fall = !1;
a.actor.setY(32 * Math.round(a.actor.getY() / 32));
d.runLater(
200,
function (b) {
a.actor.setAnimation('Normal');
},
a.actor
);
d.startShakingScreen(0.005, 0.05);
b = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); b < c.length; ) {
var e = c[b];
++b;
null == e ||
e.dead ||
e.recycled ||
(a.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
}
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getXCenter() - 8,
a.actor.getY() + a.actor.getHeight() - 24,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() - 8,
a.actor.getY() + a.actor.getHeight() - 24,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() + a.actor.getWidth() - 8,
a.actor.getY() + a.actor.getHeight() - 24,
d.engine.getLayerById(a.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.removeImage(a._ShakeImageInstance);
a.actor.enableActorDrawing();
a.actor.makeSometimesSimulate();
},
a.actor
);
},
this.actor
);
}
},
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.setX(32 * Math.round(this.actor.getX() / 32));
this.actor.setY(32 * Math.round(this.actor.getY() / 32));
this._ShakeImage = d.getImageForActor(this.actor);
this._ShakeImageInstance = new Qh(new Mc(this._ShakeImage));
this.actor.disableActorDrawing();
d.attachImageToActor(this._ShakeImageInstance, this.actor, 0, 0, 1);
this._GravitySpeed = 48;
this._SensorList = [];
for (var a = 0, b = (this.actor.getWidth() / 32) | 0; a < b; ) {
a++;
this._HitGround = !1;
for (this._SensorRowCount = 1; !this._HitGround; )
d.tileExistsAt(
(Math.round((this.actor.getY() + this.actor.getHeight()) / 32) +
this._SensorRowCount) |
0,
(Math.round(this.actor.getX() / 32) + this._SensorColumnCount) | 0,
d.engine.getLayerById(0)
) &&
7 <
d.getTileIDAt(
(Math.round((this.actor.getY() + this.actor.getHeight()) / 32) +
this._SensorRowCount) |
0,
(Math.round(this.actor.getX() / 32) + this._SensorColumnCount) | 0,
d.engine.getLayerById(0)
)
? (this._HitGround = !0)
: (d.createRecycledActor(
d.getActorType(52),
32 * (Math.round(this.actor.getX() / 32) + this._SensorColumnCount),
32 *
(Math.round((this.actor.getY() + this.actor.getHeight()) / 32) +
this._SensorRowCount),
0
),
d.getLastCreatedActor().disableActorDrawing(),
this._SensorList.push(d.getLastCreatedActor()),
(this._SensorRowCount += 1));
this._SensorColumnCount += 1;
if (0 == this._Height || this._Height < this._SensorRowCount)
this._Height = this._SensorRowCount;
}
d.runPeriodically(20, q(this, this._event_EveryNsecs), this.actor);
this.addListenerWithKey2(
d.engine.whenCollidedEvents,
d.getActorType(2).ID,
d.getActorType(52).ID,
q(this, this._event_DudeHitsSensor)
);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsDude));
},
forwardMessage: function (a) {},
__class__: Hu
});
var Iu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Node Number'] = '_NodeNumber';
this._NodeNumber = 0;
this.nameMap.h.First = '_First';
this._First = !1;
this.nameMap.h.Last = '_Last';
this._Last = !1;
this.nameMap.h.Level = '_Level';
this._Level = 0;
};
h['scripts.Design_364_364_OverworldNodeLogic'] = Iu;
Iu.__name__ = 'scripts.Design_364_364_OverworldNodeLogic';
Iu.__super__ = u;
Iu.prototype = r(u.prototype, {
_NodeNumber: null,
_First: null,
_Last: null,
_Level: null,
init: function () {
this.actor.makeAlwaysSimulate();
'Beach Map' == d.getCurrentSceneName()
? 0 != this._Level && k.engine.getGameAttribute('Highest Level') + 1 < this._Level
? this.actor.setAnimation('WhiteClosed')
: this.actor.setAnimation('WhiteOpen')
: 'Cave Map' == d.getCurrentSceneName()
? 0 != this._Level && k.engine.getGameAttribute('Highest Level') + 1 < this._Level
? this.actor.setAnimation('BrownClosed')
: this.actor.setAnimation('BrownOpen')
: 'Castle Map' == d.getCurrentSceneName()
? 0 != this._Level && k.engine.getGameAttribute('Highest Level') + 1 < this._Level
? this.actor.setAnimation('GreyClosed')
: this.actor.setAnimation('GreyOpen')
: 0 != this._Level &&
k.engine.getGameAttribute('Highest Level') + 1 < this._Level &&
this.actor.setAnimation('Closed');
},
forwardMessage: function (a) {},
__class__: Iu
});
var Ju = function (a, b) {
d.call(this);
this.nameMap.h['Stars String'] = '_StarsString';
this._StarsString = '';
this.nameMap.h['Star Count Star'] = '_StarCountStar';
this.nameMap.h['Level Number'] = '_LevelNumber';
this._LevelNumber = 0;
this.nameMap.h.Overlay = '_Overlay';
this.nameMap.h['Hide Text'] = '_HideText';
this._HideText = !1;
this.nameMap.h['World Title'] = '_WorldTitle';
this._WorldTitle = '';
this.nameMap.h['Font To Use'] = '_FontToUse';
this.nameMap.h['Left Text'] = '_LeftText';
this._LeftText = '';
this.nameMap.h['Right Text'] = '_RightText';
this._RightText = '';
this.nameMap.h['Star Is Hidden'] = '_StarIsHidden';
this._StarIsHidden = !1;
this.nameMap.h['Total Time In Hundreths'] = '_TotalTimeInHundreths';
this._TotalTimeInHundreths = 0;
this.nameMap.h['Time Box'] = '_TimeBox';
this.nameMap.h.Hours = '_Hours';
this._Hours = 0;
this.nameMap.h.Minutes = '_Minutes';
this._Minutes = 0;
this.nameMap.h.Seconds = '_Seconds';
this._Seconds = 0;
this.nameMap.h.Hundreths = '_Hundreths';
this._Hundreths = 0;
this.nameMap.h['Hours String'] = '_HoursString';
this._HoursString = '';
this.nameMap.h['Minutes String'] = '_MinutesString';
this._MinutesString = '';
this.nameMap.h['Seconds String'] = '_SecondsString';
this._SecondsString = '';
this.nameMap.h['Hundreths String'] = '_HundrethsString';
this._HundrethsString = '';
this.nameMap.h['Total Time String'] = '_TotalTimeString';
this._TotalTimeString = '';
this.nameMap.h['LAST INPUT'] = '_LASTINPUT';
this._LASTINPUT = '';
this.nameMap.h['Bottom Border'] = '_BottomBorder';
this.nameMap.h['Right Border'] = '_RightBorder';
this.nameMap.h['Bottom Right Corner'] = '_BottomRightCorner';
this.nameMap.h['Bottom Left Corner'] = '_BottomLeftCorner';
this.nameMap.h['Left Border'] = '_LeftBorder';
this.nameMap.h['Top Border'] = '_TopBorder';
this.nameMap.h['Top Right Corner'] = '_TopRightCorner';
};
h['scripts.Design_370_370_SwitchOverworld'] = Ju;
Ju.__name__ = 'scripts.Design_370_370_SwitchOverworld';
Ju.__super__ = sa;
Ju.prototype = r(sa.prototype, {
_StarsString: null,
_StarCountStar: null,
_LevelNumber: null,
_Overlay: null,
_HideText: null,
_WorldTitle: null,
_FontToUse: null,
_LeftText: null,
_RightText: null,
_StarIsHidden: null,
_TotalTimeInHundreths: null,
_TimeBox: null,
_Hours: null,
_Minutes: null,
_Seconds: null,
_Hundreths: null,
_HoursString: null,
_MinutesString: null,
_SecondsString: null,
_HundrethsString: null,
_TotalTimeString: null,
_LASTINPUT: null,
_BottomBorder: null,
_RightBorder: null,
_BottomRightCorner: null,
_BottomLeftCorner: null,
_LeftBorder: null,
_TopBorder: null,
_TopRightCorner: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
(this._HideText
? this._StarIsHidden ||
((this._StarIsHidden = !0), this._StarCountStar.disableActorDrawing())
: this._StarIsHidden &&
((this._StarIsHidden = !1), this._StarCountStar.enableActorDrawing()));
},
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled && !this._HideText) {
c = d.getFont(526);
null != c && c != a.font && (a.font = c);
c = this._StarsString;
b =
d.getScreenWidth() - (30 + d.getFont(526).getTextWidth(this._StarsString) / k.SCALE);
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
if (a.drawActor)
if (null != a.actor && a.actor.isHUD) {
b = a.x + b * a.scaleX;
var e = a.y + 18 * a.scaleY;
} else (b = a.x + b * a.scaleX - k.cameraX), (e = a.y + 18 * a.scaleY - k.cameraY);
else (b = a.x + b * a.scaleX), (e = a.y + 18 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, e);
var f = null,
g = a.font;
g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g))
(c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img);
else {
var h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale),
l = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g));
}
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill());
k.engine.getGameAttribute('Timer Mode') ||
((c = this._RightText),
(b = d.getScreenWidth() / 2 - a.font.getTextWidth(this._RightText) / k.SCALE / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 18 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + 18 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 18 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()));
}
},
_customEvent_AdjustSize: function () {
var a = this._LeftBorder;
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)
? ((a = this._RightBorder),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)
? ((a = this._BottomBorder),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)
? ((a = this._BottomLeftCorner),
d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)
? ((a = this._BottomRightCorner),
(a = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a))
: (a = !1))
: (a = !1))
: (a = !1))
: (a = !1);
a
? ((a = this._TopRightCorner),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)
? ((a = this._TopBorder),
(a = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a))
: (a = !1))
: (a = !1);
a &&
(ba.setScale('height', d.getScreenHeight(), this._LeftBorder),
this._RightBorder.setX(d.getScreenWidth() - 32),
ba.setScale('height', d.getScreenHeight(), this._RightBorder),
ba.setScale('width', d.getScreenWidth(), this._TopBorder),
this._BottomBorder.setY(d.getScreenHeight() - 48),
ba.setScale('width', d.getScreenWidth(), this._BottomBorder),
this._TopRightCorner.setX(d.getScreenWidth() - this._TopRightCorner.getWidth()),
this._BottomLeftCorner.setY(d.getScreenHeight() - this._BottomLeftCorner.getHeight()),
this._BottomRightCorner.setX(d.getScreenWidth() - this._BottomRightCorner.getWidth()),
this._BottomRightCorner.setY(
d.getScreenHeight() - this._BottomRightCorner.getHeight()
));
},
init: function () {
var a = this;
d.engine.unpause();
'JP' == k.engine.getGameAttribute('Language')
? ((this._FontToUse = d.getFont(606)),
'Forest Map' == d.getCurrentSceneName()
? (this._RightText = '\u30a2\u30d0\u30ed\u306e\u68ee')
: 'Beach Map' == d.getCurrentSceneName()
? (this._RightText = '\u30b9\u30c8\u30e9\u30f3\u30c9\u30d3\u30fc\u30c1')
: 'Snow Map' == d.getCurrentSceneName()
? (this._RightText = '\u30e2\u30f3\u30c8\u5c71')
: 'Castle Map' == d.getCurrentSceneName() &&
(this._RightText = '\u30ab\u30b9\u30c6\u30ed\u57ce'))
: 'CN' == k.engine.getGameAttribute('Language')
? ((this._FontToUse = d.getFont(604)),
'Forest Map' == d.getCurrentSceneName()
? (this._RightText = '\u963f\u5df4\u7f57\u68ee\u6797')
: 'Beach Map' == d.getCurrentSceneName()
? (this._RightText = '\u65af\u7279\u5170\u591a\u6d77\u6ee9')
: 'Snow Map' == d.getCurrentSceneName()
? (this._RightText = '\u8499\u6258\u5c71')
: 'Castle Map' == d.getCurrentSceneName() &&
(this._RightText = '\u5361\u65af\u7279\u6d1b\u57ce\u5821'))
: 'KR' == k.engine.getGameAttribute('Language')
? ((this._FontToUse = d.getFont(605)),
'Forest Map' == d.getCurrentSceneName()
? (this._RightText = '\uc544\ubc14\ub85c \uc232')
: 'Beach Map' == d.getCurrentSceneName()
? (this._RightText = '\uc2a4\ud2b8 \ub780\ub3c4 \ube44\uce58')
: 'Snow Map' == d.getCurrentSceneName()
? (this._RightText = '\ubaac\ud1a0 \ub9c8\uc6b4\ud2f4')
: 'Castle Map' == d.getCurrentSceneName() &&
(this._RightText = '\uce74\uc2a4\ud154\ub85c \uc131'))
: ((this._FontToUse = d.getFont(441)),
'Forest Map' == d.getCurrentSceneName()
? (this._RightText = 'ABARO WOODS')
: 'Beach Map' == d.getCurrentSceneName()
? (this._RightText = 'STRANDO BEACH')
: 'Snow Map' == d.getCurrentSceneName()
? (this._RightText = 'MONTO MOUNTAIN')
: 'Cave Map' == d.getCurrentSceneName()
? (this._RightText = 'FUNGO CAVE')
: 'Castle Map' == d.getCurrentSceneName() &&
(this._RightText = 'KASTELO FORTRESS'));
43 <= k.engine.getGameAttribute('Stars List').length - 1 &&
!k.engine.getGameAttribute('Possum Mode Unlocked') &&
((k.engine.gameAttributes.h['Possum Mode Unlocked'] = !0),
d.saveGame('mySave', function (a) {}));
k.engine.getGameAttribute('Start Overworld Music') &&
((k.engine.gameAttributes.h['Start Overworld Music'] = !1),
d.runLater(
300,
function (a) {
d.loopSoundOnChannel(d.getSound(744), 16);
k.engine.getGameAttribute('Music Disabled') && d.setVolumeForChannel(0, 16);
},
null
));
d.createRecycledActor(d.getActorType(646), 0, -2, 0);
this._TopBorder = d.getLastCreatedActor();
d.createRecycledActor(d.getActorType(648), 0, d.getScreenHeight() - 48, 0);
this._BottomBorder = d.getLastCreatedActor();
d.createRecycledActor(d.getActorType(650), -2, 0, 0);
this._LeftBorder = d.getLastCreatedActor();
d.createRecycledActor(d.getActorType(652), d.getScreenWidth() - 32, 0, 0);
this._RightBorder = d.getLastCreatedActor();
d.createRecycledActor(d.getActorType(654), 0, 0, 0);
d.createRecycledActor(d.getActorType(656), 0, 0, 0);
this._TopRightCorner = d.getLastCreatedActor();
d.createRecycledActor(d.getActorType(658), 0, 0, 0);
this._BottomLeftCorner = d.getLastCreatedActor();
d.createRecycledActor(d.getActorType(660), 0, 0, 0);
this._BottomRightCorner = d.getLastCreatedActor();
this._StarsString = '' + (k.engine.getGameAttribute('Stars List').length - 1) + '/43';
d.createRecycledActor(
d.getActorType(529),
d.getScreenWidth() - (66 + d.getFont(526).getTextWidth(this._StarsString) / k.SCALE),
6,
0
);
this._StarCountStar = d.getLastCreatedActor();
this._StarCountStar.makeAlwaysSimulate();
this._StarCountStar.anchorToScreen();
this._HideText && ((this._StarIsHidden = !0), this._StarCountStar.disableActorDrawing());
k.engine.getGameAttribute('Wipe In Right')
? ((k.engine.gameAttributes.h['Wipe In Right'] = !1),
d.createRecycledActor(d.getActorType(283), -5, -5, 0),
(this._Overlay = d.getLastCreatedActor()),
d.runLater(
100,
function (b) {
d.sayToScene('Transitions', '_customEvent_wipeInRight');
d.recycleActor(a._Overlay);
},
null
))
: k.engine.getGameAttribute('Wipe In Left')
? ((k.engine.gameAttributes.h['Wipe In Left'] = !1),
d.createRecycledActor(d.getActorType(283), -5, -5, 0),
(this._Overlay = d.getLastCreatedActor()),
d.runLater(
100,
function (b) {
d.sayToScene('Transitions', '_customEvent_wipeInLeft');
d.recycleActor(a._Overlay);
},
null
))
: (d.createRecycledActor(d.getActorType(283), -5, -5, 0),
(this._Overlay = d.getLastCreatedActor()),
d.runLater(
300,
function (b) {
d.setValueForScene('Transitions', '_TransitionType', 1);
d.sayToScene('Transitions', '_customEvent_transitionIn');
d.recycleActor(a._Overlay);
},
null
));
k.engine.gameAttributes.h.Dead = !1;
k.engine.gameAttributes.h['Settings Open'] = !1;
k.engine.gameAttributes.h['Boss 1 Dialog Read'] = !1;
k.engine.gameAttributes.h['Boss 2 Dialog Read'] = !1;
k.engine.gameAttributes.h['Boss 3 Dialog Read'] = !1;
k.engine.gameAttributes.h['Boss 4 Dialog Read'] = !1;
k.engine.gameAttributes.h['Boss 5 Dialog Read'] = !1;
k.engine.gameAttributes.h['Overworld Entered Left'] = !1;
k.engine.gameAttributes.h['Overworld Entered Right'] = !1;
k.engine.gameAttributes.h['Checkpoint Passed'] = !1;
k.engine.gameAttributes.h['Star Collected'] = !1;
k.engine.gameAttributes.h['Dialog Box Open'] = !1;
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating));
this.addListener(d.engine.whenDrawing, q(this, this._event_Drawing));
},
forwardMessage: function (a) {},
__class__: Ju
});
var Ku = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h['Can Make Noise'] = '_CanMakeNoise';
this._CanMakeNoise = !1;
this.nameMap.h['Face Left'] = '_FaceLeft';
this._FaceLeft = !0;
this.nameMap.h.Speed = '_Speed';
this._Speed = 12;
this.nameMap.h.Fall = '_Fall';
this._Fall = !1;
this.nameMap.h['No Gravity'] = '_NoGravity';
this._NoGravity = !1;
this.nameMap.h.Health = '_Health';
this._Health = 3;
this.nameMap.h.Hurt = '_Hurt';
this._Hurt = !1;
this.nameMap.h.Dead = '_Dead';
this._Dead = !1;
this.nameMap.h['Starting Y'] = '_StartingY';
this._StartingY = 0;
this.nameMap.h['Ground Amnesty'] = '_GroundAmnesty';
this._GroundAmnesty = 0;
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Ready To Talk'] = '_ReadyToTalk';
this._ReadyToTalk = !1;
this.nameMap.h['Has Entered'] = '_HasEntered';
this._HasEntered = !1;
this.nameMap.h['Dialog Complete'] = '_DialogComplete';
this._DialogComplete = !1;
this.nameMap.h['Dialog Text'] = '_DialogText';
this._DialogText = 'DEFAULT';
this.nameMap.h.Charging = '_Charging';
this._Charging = !1;
this.nameMap.h['Go Left'] = '_GoLeft';
this._GoLeft = !1;
this.nameMap.h['Go Right'] = '_GoRight';
this._GoRight = !1;
this.nameMap.h.Stunned = '_Stunned';
this._Stunned = !1;
this.nameMap.h['Stunned Bounce'] = '_StunnedBounce';
this._StunnedBounce = !1;
};
h['scripts.Design_392_392_Boss5Logic'] = Ku;
Ku.__name__ = 'scripts.Design_392_392_Boss5Logic';
Ku.__super__ = u;
Ku.prototype = r(u.prototype, {
_GravitySpeed: null,
_OnGround: null,
_GroundCheck: null,
_CanMakeNoise: null,
_FaceLeft: null,
_Speed: null,
_Fall: null,
_NoGravity: null,
_Health: null,
_Hurt: null,
_Dead: null,
_StartingY: null,
_GroundAmnesty: null,
_Go: null,
_Dude: null,
_ReadyToTalk: null,
_HasEntered: null,
_DialogComplete: null,
_DialogText: null,
_Charging: null,
_GoLeft: null,
_GoRight: null,
_Stunned: null,
_StunnedBounce: null,
_event_HitsGround: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorGroup(1);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
if (c)
if (a.thisFromBottom)
(this._GroundCheck = !0),
(this._GroundAmnesty = 4),
!this._Stunned ||
this._StunnedBounce ||
this._GoLeft ||
this._GoRight ||
this.actor.setXVelocity(0);
else if (a.thisFromLeft && !this._StunnedBounce) {
d.startShakingScreen(0.01, 0.1);
this._Stunned = this._StunnedBounce = !0;
this._GoLeft = !1;
this.actor.setAnimation('Stunned');
this._Dead
? (this.actor.setXVelocity(40),
this.actor.setYVelocity(-70),
d.runLater(
100,
function (a) {
b.actor.setAnimation('Dead Stunned');
},
this.actor
))
: (this._StunnedBounce ? this.actor.setXVelocity(20) : this.actor.setXVelocity(10),
this.actor.setYVelocity(-40));
d.createRecycledActor(
d.getActorType(94),
this.actor.getX(),
this.actor.getYCenter() - 8,
0
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.createRecycledActor(
d.getActorType(94),
this.actor.getX(),
this.actor.getYCenter() - 8,
0
);
d.getLastCreatedActor().moveBy(32, 0, 0.3, J.backOut);
d.createRecycledActor(
d.getActorType(94),
this.actor.getX(),
this.actor.getYCenter() - 8,
0
);
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(2)); a < c.length; )
(e = c[a]),
++a,
null == e ||
e.dead ||
e.recycled ||
(this.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
d.runLater(
300,
function (a) {
b._StunnedBounce = !1;
},
this.actor
);
d.runLater(
1e3,
function (a) {
b._FaceLeft = !1;
b._Stunned = !1;
},
this.actor
);
} else if (a.thisFromRight && !this._StunnedBounce) {
d.startShakingScreen(0.01, 0.1);
this._Stunned = this._StunnedBounce = !0;
this._GoRight = !1;
this.actor.setAnimation('Stunned');
this._Dead
? (this.actor.setXVelocity(-40),
this.actor.setYVelocity(-70),
d.runLater(
100,
function (a) {
b.actor.setAnimation('Dead Stunned');
},
this.actor
))
: (this._StunnedBounce
? this.actor.setXVelocity(-20)
: this.actor.setXVelocity(-10),
this.actor.setYVelocity(-40));
d.createRecycledActor(
d.getActorType(94),
this.actor.getX() + (this.actor.getWidth() - 16),
this.actor.getYCenter() - 8,
0
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActor(
d.getActorType(94),
this.actor.getX() + (this.actor.getWidth() - 16),
this.actor.getYCenter() - 8,
0
);
d.getLastCreatedActor().moveBy(-32, 0, 0.3, J.backOut);
d.createRecycledActor(
d.getActorType(94),
this.actor.getX() + (this.actor.getWidth() - 16),
this.actor.getYCenter() - 8,
0
);
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
a = 0;
for (c = d.getActorsOfType(d.getActorType(2)); a < c.length; )
(e = c[a]),
++a,
null == e ||
e.dead ||
e.recycled ||
(this.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
d.runLater(
300,
function (a) {
b._StunnedBounce = !1;
},
this.actor
);
d.runLater(
1e3,
function (a) {
b._FaceLeft = !0;
b._Stunned = !1;
},
this.actor
);
}
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled && (this._OnGround || --this._GroundAmnesty);
},
_event_EveryNsecs2: function (a) {
if (this.wrapper.enabled)
if (this._GoLeft) {
a = 0;
for (var b = d.randomInt(1, 4); a < b; )
a++,
d.createRecycledActor(
d.getActorType(94),
this.actor.getXCenter() + d.randomInt(-24, 24),
this.actor.getY() + d.randomInt(14, 48),
0
),
d.getLastCreatedActor().setAnimation('Ice Cream');
} else if (this._GoRight)
for (a = 0, b = d.randomInt(1, 4); a < b; )
a++,
d.createRecycledActor(
d.getActorType(94),
this.actor.getXCenter() + d.randomInt(-24, 24),
this.actor.getY() + d.randomInt(14, 48),
0
),
d.getLastCreatedActor().setAnimation('Ice Cream');
},
_event_HitsHazard: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorGroup(4);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
if (c && 0 < this._Health && !this._Hurt) {
this._Hurt = !0;
d.runLater(
2e3,
function (a) {
b._Hurt = !1;
},
this.actor
);
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(378));
c = 0;
for (e = d.getActorsOfType(d.getActorType(2)); c < e.length; )
(f = e[c]),
++c,
null == f ||
f.dead ||
f.recycled ||
(this.actor.getXCenter() > f.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
this.actor.setFilter([d.createBrightnessFilter(100)]);
d.runLater(
200,
function (a) {
b.actor.clearFilters();
},
this.actor
);
--this._Health;
if (0 == this._Health)
for (
this._Dead = !0,
this.actor.setAnimation('Dead Spin'),
d.stopSoundOnChannel(16),
c = 0,
e = d.getActorsOfType(d.getActorType(353));
c < e.length;
)
(f = e[c]),
++c,
null == f ||
f.dead ||
f.recycled ||
(f.moveBy(0, 32, 0.3, J.quadInOut), f.setValue('Button Logic', '_Hide', !0));
else if (
(d.startShakingScreen(0.02, 0.1),
this.actor.getXCenter() > a.otherActor.getXCenter() && !this._StunnedBounce)
) {
this._Stunned = this._StunnedBounce = !0;
this._GoLeft = !1;
this.actor.setAnimation('Hurt');
this._Dead
? (this.actor.setXVelocity(40), this.actor.setYVelocity(-70))
: (this.actor.setXVelocity(20), this.actor.setYVelocity(-40));
a.otherActor.say('Boss Spikes Logic', '_customEvent_return');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105));
c = 0;
for (e = d.getActorsOfType(d.getActorType(2)); c < e.length; )
(f = e[c]),
++c,
null == f ||
f.dead ||
f.recycled ||
(this.actor.getXCenter() > f.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Big Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
d.runLater(
300,
function (a) {
b._StunnedBounce = !1;
},
this.actor
);
d.runLater(
1e3,
function (a) {
b._FaceLeft = !1;
b._Stunned = !1;
},
this.actor
);
} else
this.actor.getXCenter() < a.otherActor.getXCenter() &&
!this._StunnedBounce &&
((this._Stunned = this._StunnedBounce = !0),
(this._GoRight = !1),
this.actor.setAnimation('Hurt'),
this._Dead
? (this.actor.setXVelocity(-40), this.actor.setYVelocity(-70))
: (this.actor.setXVelocity(-20), this.actor.setYVelocity(-40)),
a.otherActor.say('Boss Spikes Logic', '_customEvent_return'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(105)),
d.runLater(
300,
function (a) {
b._StunnedBounce = !1;
},
this.actor
),
d.runLater(
1e3,
function (a) {
b._FaceLeft = !0;
b._Stunned = !1;
},
this.actor
));
}
},
_event_GroundandGravity: function (a) {
this.wrapper.enabled &&
(this._GroundCheck
? this._OnGround ||
((this._OnGround = !0),
this.actor.setYVelocity(0),
this._CanMakeNoise
? k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(117))
: (this._CanMakeNoise = !0))
: this._OnGround && 0 == this._GroundAmnesty && (this._OnGround = !1),
(this._GroundCheck = !1),
this._Stunned &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed)),
this._Stunned ||
this._Hurt ||
this._Dead ||
(this.actor.getY() < this._StartingY && this.actor.setY(this._StartingY)));
},
_event_Movement: function (a) {
var b = this;
if (this.wrapper.enabled) {
a = this._Dude;
if (
!d.isPrimitive(a) &&
('string' == typeof a ? '' == x.__cast(a, String) : null == a)
) {
a = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); a < c.length; ) {
var e = c[a];
++a;
null == e || e.dead || e.recycled || (this._Dude = e);
}
}
!this._Go ||
!this._OnGround ||
this._GoLeft ||
this._GoRight ||
this._Charging ||
this._Stunned ||
((this._Charging = !0),
this._FaceLeft
? this.actor.setAnimation('Left Charge')
: this.actor.setAnimation('Right Charge'),
d.runLater(
1e3,
function (a) {
b._FaceLeft
? ((b._GoLeft = !0),
(b._Charging = !1),
b.actor.setAnimation('Left'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(118)),
b.actor.setXVelocity(-50))
: ((b._GoRight = !0),
(b._Charging = !1),
b.actor.setAnimation('Right'),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(118)),
b.actor.setXVelocity(50));
},
this.actor
));
a = this._Dude;
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._ReadyToTalk &&
this._Dude.getXCenter() > this.actor.getX() - 256 &&
this._Dude.getY() > this.actor.getY() &&
(k.engine.getGameAttribute('Boss 5 Dialog Read')
? ((this._ReadyToTalk = !1), this.actor.shout('_customEvent_dialogComplete'))
: ((a = this._Dude),
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getValue('Dude Logic', '_OnGround') &&
((this._ReadyToTalk = !1),
this._DialogComplete ||
((this._DialogComplete = !0),
d.stopSoundOnChannel(16),
d.createRecycledActor(d.getActorType(161), 0, d.getScreenHeight() - 96, 0),
'JP' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*\u30ae\u30e3\u30fc*|\u3042\u3042\u3001\u306a\u3093\u3066\u3053\u3063\u305f\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\u3053\u3093\u306b\u3061\u306f\u3001\u79c1\u306f\u30c0\u30c7\u30a3\u30c3\u30b7\u30e5\u3067\u3059\uff01|\u3053\u3093\u306b\u3061\u306f\u3001\u79c1\u306f\u30a2\u30a4\u30b9\u30af\u30ea\u30fc\u30e0\u3067\u3059\uff01|\u306f\u3058\u3081\u307e\u3057\u3066\uff01|\u79c1\u306f\u30e8\u30fc\u30b0\u30eb\u30c8\u3092\u51cd\u3089\u305b\u3066\u3044\u307e\u305b\u3093\uff01|\u79c1\u306f...\u3042\u306a\u305f\u304c\u305d\u3046\u3067\u3042\u308b\u3068\u306f\u8a00\u3044\u307e\u305b\u3093\u3067\u3057\u305f||\u79c1\u306f\u30e8\u30fc\u30b0\u30eb\u30c8\u3067\u306f\u3042\u308a\u307e\u305b\u3093 \uff01 \u5acc\u3044\u3067\u3059\uff01|\u5927\u4e08\u592b\u3067\u3059\u304b\uff1f|\u6bba\u3057\u307e\u3059\uff01'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: 'CN' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*SCREECH*|\u54e6\u5929\u54ea\u3002'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\u55e8\uff0c\u6211\u662fDadish\uff01|\u55e8\uff0c\u6211\u662f\u51b0\u6dc7\u6dcb\uff01|\u5f88\u9ad8\u5174\u8ba4\u8bc6\u4f60\uff01|\u6211\u4e0d\u662f\u51b7\u51bb\u9178\u5976\uff01|\u6211...\u6211\u4e0d\u662f\u8bf4\u4f60\u662f\u5417\uff1f|\u6211\u4e0d\u662f\u9178\u5976 \uff01 \u6211\u8ba8\u538c\u5b83\uff01|\u4f60\u8fd8\u597d\u5417\uff1f|\u6211\u4f1a\u6740\u4e86\u4f60\uff01'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: 'KR' == k.engine.getGameAttribute('Language')
? k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'*\uaf64\uc561*|\uc5b4 \uc774\ub7f0.'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
'\uc548\ub155\ud558\uc138\uc694, \uc800\ub294 \uc544\ube60\uc785\ub2c8\ub2e4! | \uc548\ub155\ud558\uc138\uc694, \uc800\ub294 \uc544\uc774\uc2a4\ud06c\ub9bc\uc785\ub2c8\ub2e4! | \ub9cc\ub098\uc11c \ubc18\uac00\uc6cc\uc694! | \ub09c \uc5bc\uc5b4 \ubd99\uc740 \uba4d\uccad\uc774\uac00 \uc544\ub2c8\uc5d0\uc694! | \ub09c ... \ub09c \ub2f9\uc2e0\uc774 \uadf8\ub7ac\ub2e4\uace0 \ub9d0 \uc548\ud588\uc5b4? | \ub09c \uba4d\uccad\uc774\uac00 \uc544\ub2c8\uc57c ! \uc2eb\uc5b4! | \uad1c\ucc2e\uc544? | \ub0b4\uac00 \uc8fd\uc5ec \ubc84\ub9b4\uac70\uc57c!'
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish'))
: k.engine.getGameAttribute('Possum Mode')
? (d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_DialogText', '*SCREECH*|Oh my gosh'),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Baby6'))
: (d
.getLastCreatedActor()
.setValue(
'Dialog Box Logic',
'_DialogText',
"Hi, I'm Dadish!|Hi, I'm The Icecream!|Nice to meet you!|I'M NOT FROZEN YOGURT!|I... I didn't say that you were?|I'M NOT YOGURT! I HATE IT!|Are you OK?|I'LL KILL YOU!"
),
d
.getLastCreatedActor()
.setValue('Dialog Box Logic', '_Character1', 'Dadish')),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_Character2', 'Boss 5'),
d.getLastCreatedActor().setValue('Dialog Box Logic', '_Parent', this.actor),
d.getLastCreatedActor().say('Dialog Box Logic', '_customEvent_Go')))));
this._Dead &&
0 < this.actor.getYVelocity() &&
this.actor.getY() >= this._StartingY &&
(d.createRecycledActorOnLayer(
d.getActorType(698),
this.actor.getX(),
this._StartingY,
d.engine.getLayerById(this.actor.getLayerID())
),
d.recycleActor(this.actor));
}
},
_event_EntersScreen: function (a, b, c, e) {
var f = this;
this.wrapper.enabled &&
a &&
((a = this._Dude),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getY() >= this.actor.getX() - 32 &&
!this._HasEntered &&
!this._Go &&
((this._HasEntered = !0),
d.runLater(
700,
function (a) {
f._ReadyToTalk = !0;
},
this.actor
)));
},
_event_HitsBlock: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(40);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b && a.thisFromBottom && (this._GroundCheck = !0);
},
_customEvent_dialogComplete: function () {
var a = this;
d.runLater(
200,
function (b) {
a._Go = !0;
k.engine.gameAttributes.h['Boss 5 Dialog Read'] = !0;
d.loopSoundOnChannel(d.getSound(377), 16);
k.engine.getGameAttribute('Music Disabled')
? d.setVolumeForChannel(0, 16)
: k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16);
},
this.actor
);
},
init: function () {
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this._GroundCheck = this._OnGround = !0;
this._StartingY = this.actor.getY();
this._FaceLeft = !0;
this.addListener(this.actor.whenCollided, q(this, this._event_HitsGround));
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
d.runPeriodically(50, q(this, this._event_EveryNsecs2), this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHazard));
this.addListener(this.actor.whenUpdated, q(this, this._event_GroundandGravity));
this.addListener(this.actor.whenUpdated, q(this, this._event_Movement));
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_EntersScreen));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsBlock));
},
forwardMessage: function (a) {},
__class__: Ku
});
var Lu = function (a, b) {
d.call(this);
this.nameMap.h['INITIAL SCREEN WIDTH'] = '_INITIALSCREENWIDTH';
this._INITIALSCREENWIDTH = 0;
this.nameMap.h['INITIAL SCREEN HEIGHT'] = '_INITIALSCREENHEIGHT';
this._INITIALSCREENHEIGHT = 0;
this.nameMap.h['CURRENT RES X'] = '_CURRENTRESX';
this._CURRENTRESX = 0;
this.nameMap.h['CURRENT RES Y'] = '_CURRENTRESY';
this._CURRENTRESY = 0;
this.nameMap.h.Fucko = '_Fucko';
this._Fucko = '';
this.nameMap.h.DELETEME = '_DELETEME';
this._DELETEME = 'FART';
this.nameMap.h['Button Input'] = '_ButtonInput';
this._ButtonInput = '';
this.nameMap.h['Can Start'] = '_CanStart';
this._CanStart = !1;
this.nameMap.h['Has Entered'] = '_HasEntered';
this._HasEntered = !1;
this.nameMap.h['Entrance Tween'] = '_EntranceTween';
this._EntranceTween = !1;
this.nameMap.h['First Touch'] = '_FirstTouch';
this._FirstTouch = !1;
this.nameMap.h['Left Touch Is Down'] = '_LeftTouchIsDown';
this._LeftTouchIsDown = !1;
this.nameMap.h['Right Touch Is Down'] = '_RightTouchIsDown';
this._RightTouchIsDown = !1;
this.nameMap.h['Jump Speed'] = '_JumpSpeed';
this._JumpSpeed = 0;
this.nameMap.h['Jump Amnesty'] = '_JumpAmnesty';
this._JumpAmnesty = 0;
this.nameMap.h['Jump Hang'] = '_JumpHang';
this._JumpHang = 0;
this.nameMap.h.Jumping = '_Jumping';
this._Jumping = !1;
this.nameMap.h['On Platform'] = '_OnPlatform';
this._OnPlatform = !1;
this.nameMap.h['Jump Touch Timer'] = '_JumpTouchTimer';
this._JumpTouchTimer = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Can Double Jump'] = '_CanDoubleJump';
this._CanDoubleJump = !1;
this.nameMap.h['Sensor On Ground'] = '_SensorOnGround';
this._SensorOnGround = !1;
this.nameMap.h.Dead = '_Dead';
this._Dead = !1;
this.nameMap.h.Exiting = '_Exiting';
this._Exiting = !1;
this.nameMap.h.Springing = '_Springing';
this._Springing = !1;
this.nameMap.h['TARGET RES X'] = '_TARGETRESX';
this._TARGETRESX = 0;
this.nameMap.h['TARGET RES Y'] = '_TARGETRESY';
this._TARGETRESY = 0;
this.nameMap.h['Has Started'] = '_HasStarted';
this._HasStarted = !1;
};
h['scripts.Design_408_408_NSwitchSizeAdjust'] = Lu;
Lu.__name__ = 'scripts.Design_408_408_NSwitchSizeAdjust';
Lu.__super__ = sa;
Lu.prototype = r(sa.prototype, {
_INITIALSCREENWIDTH: null,
_INITIALSCREENHEIGHT: null,
_CURRENTRESX: null,
_CURRENTRESY: null,
_Fucko: null,
_DELETEME: null,
_ButtonInput: null,
_CanStart: null,
_HasEntered: null,
_EntranceTween: null,
_FirstTouch: null,
_LeftTouchIsDown: null,
_RightTouchIsDown: null,
_JumpSpeed: null,
_JumpAmnesty: null,
_JumpHang: null,
_Jumping: null,
_OnPlatform: null,
_JumpTouchTimer: null,
_OnGround: null,
_CanDoubleJump: null,
_SensorOnGround: null,
_Dead: null,
_Exiting: null,
_Springing: null,
_TARGETRESX: null,
_TARGETRESY: null,
_HasStarted: null,
_event_ControlStarted: function (a) {
if (
this.wrapper.enabled &&
((this._ButtonInput = a),
(k.engine.gameAttributes.h['CONTROLLER TIME'] = !0),
'13' == this._ButtonInput
? (this._ButtonInput = 'left hat')
: '14' == this._ButtonInput && (this._ButtonInput = 'right hat'),
!this._Dead && !this._Exiting)
)
if ('left hat' == this._ButtonInput || '-axis 0' == this._ButtonInput)
(k.engine.gameAttributes.h['Left Button Down'] = !0),
(k.engine.gameAttributes.h['Right Button Down'] = !1);
else if ('right hat' == this._ButtonInput || '+axis 0' == this._ButtonInput)
(k.engine.gameAttributes.h['Right Button Down'] = !0),
(k.engine.gameAttributes.h['Left Button Down'] = !1);
},
_event_AnyKey: function (a) {
this.wrapper.enabled && (k.engine.gameAttributes.h['CONTROLLER TIME'] = !1);
},
_event_ControlReleased: function (a) {
if (this.wrapper.enabled) {
this._ButtonInput = a;
'13' == this._ButtonInput
? (this._ButtonInput = 'left hat')
: '14' == this._ButtonInput && (this._ButtonInput = 'right hat');
if ('left hat' == this._ButtonInput || '-axis 0' == this._ButtonInput)
k.engine.gameAttributes.h['Left Button Down'] = !1;
if ('right hat' == this._ButtonInput || '+axis 0' == this._ButtonInput)
k.engine.gameAttributes.h['Right Button Down'] = !1;
}
},
_event_KeyboardPressedCopy: function (a) {
this.wrapper.enabled &&
!k.engine.getGameAttribute('CONTROLLER TIME') &&
(this._Dead || this._Exiting || !d.isKeyDown('right')
? (k.engine.gameAttributes.h['Right Button Down'] = !1)
: ((k.engine.gameAttributes.h['Right Button Down'] = !0),
(k.engine.gameAttributes.h['Left Button Down'] = !1)),
this._Dead || this._Exiting || !d.isKeyDown('left')
? (k.engine.gameAttributes.h['Left Button Down'] = !1)
: ((k.engine.gameAttributes.h['Left Button Down'] = !0),
(k.engine.gameAttributes.h['Right Button Down'] = !1)));
},
init: function () {
this.addListener(d.engine.whenAnyGamepadPressed, q(this, this._event_ControlStarted));
this.addListener(d.engine.whenAnyKeyPressed, q(this, this._event_AnyKey));
this.addListener(d.engine.whenAnyGamepadReleased, q(this, this._event_ControlReleased));
this.addListener(d.engine.whenUpdated, q(this, this._event_KeyboardPressedCopy));
},
forwardMessage: function (a) {},
__class__: Lu
});
var Mu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Hide Text'] = '_HideText';
this._HideText = !1;
this.nameMap.h['At Start Pos'] = '_AtStartPos';
this._AtStartPos = !1;
this.nameMap.h['Current Node'] = '_CurrentNode';
this.nameMap.h['On Level Node'] = '_OnLevelNode';
this._OnLevelNode = !1;
this.nameMap.h['Moving Backward'] = '_MovingBackward';
this._MovingBackward = !1;
this.nameMap.h['Moving Forward'] = '_MovingForward';
this._MovingForward = !1;
this.nameMap.h['Start X'] = '_StartX';
this._StartX = 0;
this.nameMap.h['Start Y'] = '_StartY';
this._StartY = 0;
this.nameMap.h.Speed = '_Speed';
this._Speed = 0;
this.nameMap.h['Completed Badge'] = '_CompletedBadge';
this.nameMap.h['Star Badge'] = '_StarBadge';
this.nameMap.h.Sprite = '_Sprite';
this.nameMap.h['Can Enter'] = '_CanEnter';
this._CanEnter = !1;
this.nameMap.h['Can Move'] = '_CanMove';
this._CanMove = !1;
this.nameMap.h['Total Time In Hundreths'] = '_TotalTimeInHundreths';
this._TotalTimeInHundreths = 0;
this.nameMap.h.Hours = '_Hours';
this._Hours = 0;
this.nameMap.h.Minutes = '_Minutes';
this._Minutes = 0;
this.nameMap.h.Seconds = '_Seconds';
this._Seconds = 0;
this.nameMap.h.Hundreths = '_Hundreths';
this._Hundreths = 0;
this.nameMap.h['Hours String'] = '_HoursString';
this._HoursString = '';
this.nameMap.h['Minutes String'] = '_MinutesString';
this._MinutesString = '';
this.nameMap.h['Seconds String'] = '_SecondsString';
this._SecondsString = '';
this.nameMap.h['Hundreths String'] = '_HundrethsString';
this._HundrethsString = '';
this.nameMap.h['Total Time String'] = '_TotalTimeString';
this._TotalTimeString = '';
this.nameMap.h['Level Number'] = '_LevelNumber';
this._LevelNumber = 0;
this.nameMap.h['Level Text'] = '_LevelText';
this._LevelText = '';
this.nameMap.h['Timer Position'] = '_TimerPosition';
this._TimerPosition = 0;
this.nameMap.h.Time = '_Time';
this._Time = '';
this.nameMap.h['Time Width'] = '_TimeWidth';
this._TimeWidth = 0;
this.nameMap.h['On Node'] = '_OnNode';
this._OnNode = !1;
this.nameMap.h['Got Node'] = '_GotNode';
this._GotNode = !1;
this.nameMap.h.Direction = '_Direction';
this._Direction = '';
this.nameMap.h['Node Distance'] = '_NodeDistance';
this._NodeDistance = 0;
this.nameMap.h['Current Node Number'] = '_CurrentNodeNumber';
this._CurrentNodeNumber = 0;
this.nameMap.h['Button Input'] = '_ButtonInput';
this._ButtonInput = '';
this.nameMap.h['Button Pressed'] = '_ButtonPressed';
this._ButtonPressed = !1;
this.nameMap.h['Can Go Forwards'] = '_CanGoForwards';
this._CanGoForwards = !1;
this.nameMap.h['Can Go Backwards'] = '_CanGoBackwards';
this._CanGoBackwards = !1;
this.nameMap.h['Forward Direction'] = '_ForwardDirection';
this._ForwardDirection = '';
this.nameMap.h['Back Direction'] = '_BackDirection';
this._BackDirection = '';
};
h['scripts.Design_437_437_OverworldDadishLogic'] = Mu;
Mu.__name__ = 'scripts.Design_437_437_OverworldDadishLogic';
Mu.__super__ = u;
Mu.prototype = r(u.prototype, {
_HideText: null,
_AtStartPos: null,
_CurrentNode: null,
_OnLevelNode: null,
_MovingBackward: null,
_MovingForward: null,
_StartX: null,
_StartY: null,
_Speed: null,
_CompletedBadge: null,
_StarBadge: null,
_Sprite: null,
_CanEnter: null,
_CanMove: null,
_TotalTimeInHundreths: null,
_Hours: null,
_Minutes: null,
_Seconds: null,
_Hundreths: null,
_HoursString: null,
_MinutesString: null,
_SecondsString: null,
_HundrethsString: null,
_TotalTimeString: null,
_LevelNumber: null,
_LevelText: null,
_TimerPosition: null,
_Time: null,
_TimeWidth: null,
_OnNode: null,
_GotNode: null,
_Direction: null,
_NodeDistance: null,
_CurrentNodeNumber: null,
_ButtonInput: null,
_ButtonPressed: null,
_CanGoForwards: null,
_CanGoBackwards: null,
_ForwardDirection: null,
_BackDirection: null,
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled)
if (
((b = this._CurrentNode),
(d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
this._OnLevelNode &&
this._OnNode)
) {
b = d.getFont(526);
null != b && b != a.font && (a.font = b);
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
d.setDrawingLayerToSceneLayer();
b = this._CurrentNode.getValue('Overworld Node Logic', '_Level');
this._LevelNumber =
null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b));
if (!this._HideText) {
c = this._LevelText =
10 == this._LevelNumber
? 'BURGURGULAR'
: 20 == this._LevelNumber
? 'HOTDOG'
: 30 == this._LevelNumber
? 'SHARON'
: 40 == this._LevelNumber
? 'THE ICECREAM'
: 50 == this._LevelNumber
? 'LORD DURNAK'
: 'LEVEL ' + this._LevelNumber;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
if (a.drawActor)
if (null != a.actor && a.actor.isHUD) {
b = a.x + 30 * a.scaleX;
var e = a.y + 18 * a.scaleY;
} else
(b = a.x + 30 * a.scaleX - k.cameraX), (e = a.y + 18 * a.scaleY - k.cameraY);
else (b = a.x + 30 * a.scaleX), (e = a.y + 18 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, e);
var f = null,
g = a.font;
g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g))
(c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img);
else {
var h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale),
l = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g));
}
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill());
b = d.getScreenWidth() - (30 + a.font.getTextWidth('- START') / k.SCALE);
c = d.getScreenHeight() - 32;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, e);
f = null;
g = a.font;
g = '-:' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth('-', a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
'-',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g)));
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill());
b =
d.getScreenWidth() -
(30 + a.font.getTextWidth('- START') / k.SCALE) +
a.font.getTextWidth('- ') / k.SCALE;
c = d.getScreenHeight() - 26;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, e);
f = null;
g = a.font;
g = 'START:' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(
'START',
a.font.letterSpacing,
a.font.fontScale
)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
'START',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g)));
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill());
c = d.getScreenHeight() - 32;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + 30 * a.scaleX), (e = a.y + c * a.scaleY))
: ((b = a.x + 30 * a.scaleX - k.cameraX), (e = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + 30 * a.scaleX), (e = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, e);
f = null;
g = a.font;
g = '=:' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth('=', a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
'=',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g)));
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill());
b = 30 + a.font.getTextWidth('= ') / k.SCALE;
c = d.getScreenHeight() - 26;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, e);
f = null;
g = a.font;
g = 'BACK:' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth('BACK', a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
'BACK',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g)));
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill());
k.engine.getGameAttribute('Possum Mode Unlocked') &&
((b = a.font.getTextWidth('= BACK') / k.SCALE + 60),
(c = d.getScreenHeight() - 32),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = '~:' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth('~', a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
'~',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()),
(b =
a.font.getTextWidth('= BACK') / k.SCALE +
60 +
a.font.getTextWidth('] ') / k.SCALE),
(c = d.getScreenHeight() - 26),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g =
'POSSUM MODE:' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(
'POSSUM MODE',
a.font.letterSpacing,
a.font.fontScale
)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
'POSSUM MODE',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()));
50 <= k.engine.getGameAttribute('Highest Level') &&
((b =
d.getScreenWidth() -
(30 +
(a.font.getTextWidth('- START') / k.SCALE +
30 +
a.font.getTextWidth('TIMER') / k.SCALE))),
(c = d.getScreenHeight() - 26),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = 'TIMER:' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(
'TIMER',
a.font.letterSpacing,
a.font.fontScale
)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
'TIMER',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()),
(b =
d.getScreenWidth() -
(30 +
(a.font.getTextWidth('- START') / k.SCALE +
30 +
a.font.getTextWidth('` TIMER') / k.SCALE))),
(c = d.getScreenHeight() - 32),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + c * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = '`:' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth('`', a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
'`',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()));
}
b = this._StarBadge;
d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)
? ((b = this._CompletedBadge),
(b = d.isPrimitive(b)
? !0
: 'string' == typeof b
? '' != x.__cast(b, String)
: null != b))
: (b = !1);
b &&
(this._LevelNumber <= k.engine.getGameAttribute('Highest Level') && !this._HideText
? this._CompletedBadge.setX(38 + a.font.getTextWidth(this._LevelText) / k.SCALE)
: this._CompletedBadge.setX(-200),
X.contains(k.engine.getGameAttribute('No Stars List'), this._LevelNumber) ||
this._HideText
? this._StarBadge.setX(-200)
: this._LevelNumber <= k.engine.getGameAttribute('Highest Level')
? this._StarBadge.setX(68 + a.font.getTextWidth(this._LevelText) / k.SCALE)
: this._StarBadge.setX(38 + a.font.getTextWidth(this._LevelText) / k.SCALE),
X.contains(k.engine.getGameAttribute('Stars List'), this._LevelNumber)
? this._StarBadge.setAnimation('Normal')
: this._StarBadge.setAnimation('Empty'),
(this._TimerPosition = Math.max(
Math.max(
this._CompletedBadge.getX() + this._CompletedBadge.getWidth() + 30,
this._StarBadge.getX() + this._StarBadge.getWidth() + 30
),
60 + a.font.getTextWidth(this._LevelText) / k.SCALE
)));
k.engine.getGameAttribute('Timer Mode') &&
!this._HideText &&
((this._Time =
'' +
B.string(k.engine.getGameAttribute('Best Times')[(this._LevelNumber - 1) | 0])),
(this._TimeWidth =
d
.getFont(526)
.getTextWidth('%' + (this._Time + (this._TotalTimeString + 'TOTAL:'))) /
k.SCALE +
30),
(b = this._TimerPosition),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 10 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + 10 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 10 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = '%:' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth('%', a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
'%',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()),
(c = this._Time),
(b = this._TimerPosition + d.getFont(526).getTextWidth('%') / k.SCALE),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 18 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + 18 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 18 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()),
(c = 'TOTAL:' + this._TotalTimeString),
(b =
this._TimerPosition +
d.getFont(526).getTextWidth('%' + this._Time) / k.SCALE +
30),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 18 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + 18 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 18 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()));
} else
(b = this._StarBadge),
d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)
? ((b = this._CompletedBadge),
(b = d.isPrimitive(b)
? !0
: 'string' == typeof b
? '' != x.__cast(b, String)
: null != b))
: (b = !1),
b && (this._CompletedBadge.setX(-200), this._StarBadge.setX(-200));
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this._OnNode &&
!this._OnLevelNode &&
(this._MovingForward
? this.actor.shout('_customEvent_Forward')
: this._MovingBackward && this.actor.shout('_customEvent_Back'));
},
_event_AnyButton: function (a) {
var b = this;
this.wrapper.enabled &&
((this._ButtonInput = a),
'13' == this._ButtonInput
? (this._ButtonInput = 'left hat')
: '14' == this._ButtonInput
? (this._ButtonInput = 'right hat')
: '11' == this._ButtonInput
? (this._ButtonInput = 'up hat')
: '12' == this._ButtonInput && (this._ButtonInput = 'down hat'),
!this._ButtonPressed &&
this._CanMove &&
this._OnLevelNode &&
((a = this._CurrentNode),
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._OnLevelNode &&
('0' == this._ButtonInput
? ((this._ButtonPressed = !0),
d.stopAllSounds(),
(this._HideText = !0),
d.setValueForScene('Switch Overworld', '_HideText', !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
200,
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 0);
d.sayToScene('Transitions', '_customEvent_transitionOut');
d.runLater(
1e3,
function (a) {
a = Fa.get().scenes;
var c = d.getIDForScene('Level ' + b._LevelNumber);
a = a.h[c].getID();
var e = (c = 0),
k = 0;
null == k && (k = 0);
null == e && (e = 0);
null == c && (c = 0);
var l = d.createFadeOut(0.1, (c << 16) | (e << 8) | k);
k = e = c = 0;
null == k && (k = 0);
null == e && (e = 0);
null == c && (c = 0);
d.switchScene(a, l, d.createFadeIn(0.1, (c << 16) | (e << 8) | k));
},
b.actor
);
},
this.actor
))
: '1' == this._ButtonInput
? ((this._ButtonPressed = !0),
d.stopAllSounds(),
(this._HideText = !0),
d.setValueForScene('Switch Overworld', '_HideText', !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
200,
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 1);
d.sayToScene('Transitions', '_customEvent_transitionOut');
},
this.actor
),
d.runLater(
1e3,
function (a) {
a = Fa.get().scenes.h[4].getID();
var b = 0,
c = 0,
g = 0;
null == g && (g = 0);
null == c && (c = 0);
null == b && (b = 0);
var k = d.createFadeOut(0.3, (b << 16) | (c << 8) | g);
g = c = b = 0;
null == g && (g = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, k, d.createFadeIn(0.3, (b << 16) | (c << 8) | g));
},
this.actor
))
: k.engine.getGameAttribute('Possum Mode Unlocked') && '2' == this._ButtonInput
? ((this._ButtonPressed = !0),
this._Sprite.setFilter([d.createBrightnessFilter(100)]),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(108)),
d.startShakingScreen(0.01, 0.2),
d.runLater(
200,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
d.recycleActor(b._Sprite);
k.engine.getGameAttribute('Possum Mode')
? ((k.engine.gameAttributes.h['Possum Mode'] = !1),
d.createRecycledActorOnLayer(
d.getActorType(668),
b.actor.getX(),
b.actor.getY(),
d.engine.getLayerById(b.actor.getLayerID())
))
: ((k.engine.gameAttributes.h['Possum Mode'] = !0),
d.createRecycledActorOnLayer(
d.getActorType(740),
b.actor.getX(),
b.actor.getY(),
d.engine.getLayerById(b.actor.getLayerID())
));
b._Sprite = d.getLastCreatedActor();
d.runLater(
100,
function (a) {
b._ButtonPressed = !1;
},
b.actor
);
},
this.actor
))
: 50 <= k.engine.getGameAttribute('Highest Level') && '3' == this._ButtonInput
? ((this._ButtonPressed = !0),
k.engine.getGameAttribute('Timer Mode')
? (k.engine.gameAttributes.h['Timer Mode'] = !1)
: k.engine.getGameAttribute('Timer Mode') ||
(k.engine.gameAttributes.h['Timer Mode'] = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.saveGame('mySave', function (a) {}),
d.runLater(
200,
function (a) {
b._ButtonPressed = !1;
},
this.actor
))
: (0 == this._CurrentNode.getValue('Overworld Node Logic', '_Last')
? ((a = this._CurrentNode.getValue('Overworld Node Logic', '_Level')),
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a))) <
k.engine.getGameAttribute('Highest Level') + 1
? ((a = this._CurrentNode.getValue('Overworld Node Logic', '_Level')),
(a =
50 >
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a)))))
: (a = !1))
: (a = !1),
(this._CanGoForwards = a ? !0 : !1),
0 == this._CurrentNode.getValue('Overworld Node Logic', '_First')
? ((a = this._CurrentNode.getValue('Overworld Node Logic', '_Level')),
(a =
1 <
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a)))))
: (a = !1),
(this._CanGoBackwards = a ? !0 : !1),
!this._CanGoForwards ||
('up hat' != this._ButtonInput && '-axis 1' != this._ButtonInput) ||
'Up' != this._ForwardDirection
? !this._CanGoForwards ||
('down hat' != this._ButtonInput && '+axis 1' != this._ButtonInput) ||
'Down' != this._ForwardDirection
? !this._CanGoForwards ||
('left hat' != this._ButtonInput && '-axis 0' != this._ButtonInput) ||
'Left' != this._ForwardDirection
? !this._CanGoForwards ||
('right hat' != this._ButtonInput && '+axis 0' != this._ButtonInput) ||
'Right' != this._ForwardDirection
? !this._CanGoBackwards ||
('up hat' != this._ButtonInput && '-axis 1' != this._ButtonInput) ||
'Up' != this._BackDirection
? !this._CanGoBackwards ||
('down hat' != this._ButtonInput &&
'+axis 1' != this._ButtonInput) ||
'Down' != this._BackDirection
? !this._CanGoBackwards ||
('left hat' != this._ButtonInput &&
'-axis 0' != this._ButtonInput) ||
'Left' != this._BackDirection
? !this._CanGoBackwards ||
('right hat' != this._ButtonInput &&
'+axis 0' != this._ButtonInput) ||
'Right' != this._BackDirection ||
this.actor.shout('_customEvent_Back')
: this.actor.shout('_customEvent_Back')
: this.actor.shout('_customEvent_Back')
: this.actor.shout('_customEvent_Back')
: this.actor.shout('_customEvent_Forward')
: this.actor.shout('_customEvent_Forward')
: this.actor.shout('_customEvent_Forward')
: this.actor.shout('_customEvent_Forward')))));
},
_event_AnyKey: function (a) {
var b = this;
this.wrapper.enabled &&
!this._ButtonPressed &&
this._CanMove &&
this._OnLevelNode &&
((a = this._CurrentNode),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._OnLevelNode &&
(d.isKeyPressed('enter')
? ((this._ButtonPressed = !0),
d.stopAllSounds(),
(this._HideText = !0),
d.setValueForScene('Switch Overworld', '_HideText', !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
200,
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 0);
d.sayToScene('Transitions', '_customEvent_transitionOut');
d.runLater(
1e3,
function (a) {
a = Fa.get().scenes;
var c = d.getIDForScene('Level ' + b._LevelNumber);
a = a.h[c].getID();
var e = (c = 0),
k = 0;
null == k && (k = 0);
null == e && (e = 0);
null == c && (c = 0);
var l = d.createFadeOut(0.1, (c << 16) | (e << 8) | k);
k = e = c = 0;
null == k && (k = 0);
null == e && (e = 0);
null == c && (c = 0);
d.switchScene(a, l, d.createFadeIn(0.1, (c << 16) | (e << 8) | k));
},
b.actor
);
},
this.actor
))
: d.isKeyPressed('Escape')
? ((this._ButtonPressed = !0),
d.stopAllSounds(),
(this._HideText = !0),
d.setValueForScene('Switch Overworld', '_HideText', !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.runLater(
200,
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 1);
d.sayToScene('Transitions', '_customEvent_transitionOut');
},
this.actor
),
d.runLater(
1e3,
function (a) {
a = Fa.get().scenes.h[4].getID();
var b = 0,
c = 0,
g = 0;
null == g && (g = 0);
null == c && (c = 0);
null == b && (b = 0);
var k = d.createFadeOut(0.3, (b << 16) | (c << 8) | g);
g = c = b = 0;
null == g && (g = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, k, d.createFadeIn(0.3, (b << 16) | (c << 8) | g));
},
this.actor
))
: k.engine.getGameAttribute('Possum Mode Unlocked') && d.isKeyPressed('P')
? ((this._ButtonPressed = !0),
this._Sprite.setFilter([d.createBrightnessFilter(100)]),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(108)),
d.startShakingScreen(0.01, 0.2),
d.runLater(
200,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
d.recycleActor(b._Sprite);
k.engine.getGameAttribute('Possum Mode')
? ((k.engine.gameAttributes.h['Possum Mode'] = !1),
d.createRecycledActorOnLayer(
d.getActorType(668),
b.actor.getX(),
b.actor.getY(),
d.engine.getLayerById(b.actor.getLayerID())
))
: ((k.engine.gameAttributes.h['Possum Mode'] = !0),
d.createRecycledActorOnLayer(
d.getActorType(740),
b.actor.getX(),
b.actor.getY(),
d.engine.getLayerById(b.actor.getLayerID())
));
b._Sprite = d.getLastCreatedActor();
d.runLater(
100,
function (a) {
b._ButtonPressed = !1;
},
b.actor
);
},
this.actor
))
: 50 <= k.engine.getGameAttribute('Highest Level') && d.isKeyPressed('T')
? ((this._ButtonPressed = !0),
k.engine.getGameAttribute('Timer Mode')
? (k.engine.gameAttributes.h['Timer Mode'] = !1)
: k.engine.getGameAttribute('Timer Mode') ||
(k.engine.gameAttributes.h['Timer Mode'] = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252)),
d.saveGame('mySave', function (a) {}),
d.runLater(
200,
function (a) {
b._ButtonPressed = !1;
},
this.actor
))
: (0 == this._CurrentNode.getValue('Overworld Node Logic', '_Last')
? ((a = this._CurrentNode.getValue('Overworld Node Logic', '_Level')),
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a))) <
k.engine.getGameAttribute('Highest Level') + 1
? ((a = this._CurrentNode.getValue('Overworld Node Logic', '_Level')),
(a =
50 >
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a)))))
: (a = !1))
: (a = !1),
(this._CanGoForwards = a ? !0 : !1),
0 == this._CurrentNode.getValue('Overworld Node Logic', '_First')
? ((a = this._CurrentNode.getValue('Overworld Node Logic', '_Level')),
(a =
1 <
(null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a)))))
: (a = !1),
(this._CanGoBackwards = a ? !0 : !1),
this._CanGoForwards && d.isKeyPressed('up') && 'Up' == this._ForwardDirection
? this.actor.shout('_customEvent_Forward')
: this._CanGoForwards &&
d.isKeyPressed('down') &&
'Down' == this._ForwardDirection
? this.actor.shout('_customEvent_Forward')
: this._CanGoForwards &&
d.isKeyPressed('left') &&
'Left' == this._ForwardDirection
? this.actor.shout('_customEvent_Forward')
: this._CanGoForwards &&
d.isKeyPressed('right') &&
'Right' == this._ForwardDirection
? this.actor.shout('_customEvent_Forward')
: this._CanGoBackwards && d.isKeyPressed('up') && 'Up' == this._BackDirection
? this.actor.shout('_customEvent_Back')
: this._CanGoBackwards &&
d.isKeyPressed('down') &&
'Down' == this._BackDirection
? this.actor.shout('_customEvent_Back')
: this._CanGoBackwards &&
d.isKeyPressed('left') &&
'Left' == this._BackDirection
? this.actor.shout('_customEvent_Back')
: this._CanGoBackwards &&
d.isKeyPressed('right') &&
'Right' == this._BackDirection &&
this.actor.shout('_customEvent_Back'))));
},
_event_Updating: function (a) {
if (
this.wrapper.enabled &&
((a = this._Sprite),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
)
if (
(this._Sprite.setX(this.actor.getX()),
this._Sprite.setY(this.actor.getY() - 12),
(a = this._CurrentNode),
(!d.isPrimitive(a) &&
('string' == typeof a ? '' == x.__cast(a, String) : null == a)) ||
this.actor.getX() != this._CurrentNode.getX() ||
this.actor.getY() != this._CurrentNode.getY())
)
this.actor.getX() == this._StartX && this.actor.getY() == this._StartY
? (this._OnNode = !0)
: (this._OnNode = this._OnLevelNode = !1);
else if (
((this._OnNode = !0),
(a = this._CurrentNode.getValue('Overworld Node Logic', '_NodeNumber')),
(this._CurrentNodeNumber =
null == a
? 0
: 'number' == typeof a
? x.__cast(a, Nb)
: 'number' == typeof a && (a | 0) === a
? x.__cast(a, Ab)
: 'boolean' == typeof a
? x.__cast(a, Ob)
? 1
: 0
: 'string' == typeof a
? parseFloat(a)
: parseFloat(B.string(a))),
this._CurrentNode.getType() == d.getActorType(644))
) {
this._GotNode = !1;
a = 0;
for (var b = x.__cast(d.getActorGroup(11), ze).list; a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
this._GotNode ||
c.getValue('Overworld Node Logic', '_NodeNumber') !=
this._CurrentNodeNumber + 1 ||
((this._GotNode = !0),
c.getX() == this.actor.getX() && c.getY() < this.actor.getY()
? (this._ForwardDirection = 'Up')
: c.getX() == this.actor.getX() && c.getY() > this.actor.getY()
? (this._ForwardDirection = 'Down')
: c.getY() == this.actor.getY() && c.getX() < this.actor.getX()
? (this._ForwardDirection = 'Left')
: c.getY() == this.actor.getY() &&
c.getX() > this.actor.getX() &&
(this._ForwardDirection = 'Right'));
}
this._GotNode = !1;
a = 0;
for (b = x.__cast(d.getActorGroup(11), ze).list; a < b.length; )
(c = b[a]),
++a,
null == c ||
c.dead ||
c.recycled ||
this._GotNode ||
c.getValue('Overworld Node Logic', '_NodeNumber') !=
this._CurrentNodeNumber - 1 ||
((this._GotNode = !0),
c.getX() == this.actor.getX() && c.getY() < this.actor.getY()
? (this._BackDirection = 'Up')
: c.getX() == this.actor.getX() && c.getY() > this.actor.getY()
? (this._BackDirection = 'Down')
: c.getY() == this.actor.getY() && c.getX() < this.actor.getX()
? (this._BackDirection = 'Left')
: c.getY() == this.actor.getY() &&
c.getX() > this.actor.getX() &&
(this._BackDirection = 'Right'));
this._OnLevelNode = !0;
'Down' != this._Sprite.getAnimation() && this._Sprite.setAnimation('Down');
} else
this._CanEnter &&
1 == this._CurrentNode.getValue('Overworld Node Logic', '_Last') &&
'Castle Map' != d.getCurrentSceneName()
? k.engine.getGameAttribute('Map Enter Right') && this._AtStartPos
? ((this._OnLevelNode =
this._AtStartPos =
k.engine.gameAttributes.h['Map Enter Right'] =
!1),
this.actor.shout('_customEvent_Back'))
: ((this._OnLevelNode = !1),
(this._HideText = this._ButtonPressed = !0),
(k.engine.gameAttributes.h['Wipe In Right'] = !0),
d.setValueForScene('Switch Overworld', '_HideText', !0),
d.sayToScene('Transitions', '_customEvent_wipeOutLeft'),
(k.engine.gameAttributes.h['Map Enter Left'] = !0),
d.runLater(
500,
function (a) {
if ('Forest Map' == d.getCurrentSceneName()) {
a = Fa.get().scenes.h[69].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, k, d.createFadeIn(0.3, (b << 16) | (c << 8) | e));
} else
'Beach Map' == d.getCurrentSceneName()
? ((a = Fa.get().scenes.h[71].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.3, (b << 16) | (c << 8) | e)))
: 'Snow Map' == d.getCurrentSceneName()
? ((a = Fa.get().scenes.h[72].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.3, (b << 16) | (c << 8) | e)))
: 'Cave Map' == d.getCurrentSceneName() &&
((a = Fa.get().scenes.h[73].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.3, (b << 16) | (c << 8) | e)));
},
this.actor
))
: this._CanEnter &&
!k.engine.getGameAttribute('Map Enter Left') &&
1 == this._CurrentNode.getValue('Overworld Node Logic', '_First')
? this._AtStartPos
? ((this._OnLevelNode = this._AtStartPos = !1),
this.actor.shout('_customEvent_Forward'))
: 'Forest Map' != d.getCurrentSceneName() &&
((this._OnLevelNode = !1),
(this._HideText = this._ButtonPressed = !0),
(k.engine.gameAttributes.h['Wipe In Left'] = !0),
d.setValueForScene('Switch Overworld', '_HideText', !0),
d.sayToScene('Transitions', '_customEvent_wipeOutRight'),
(k.engine.gameAttributes.h['Map Enter Right'] = !0),
d.runLater(
500,
function (a) {
if ('Beach Map' == d.getCurrentSceneName()) {
a = Fa.get().scenes.h[62].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, k, d.createFadeIn(0.3, (b << 16) | (c << 8) | e));
} else
'Snow Map' == d.getCurrentSceneName()
? ((a = Fa.get().scenes.h[69].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.3, (b << 16) | (c << 8) | e)))
: 'Cave Map' == d.getCurrentSceneName()
? ((a = Fa.get().scenes.h[71].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.3, (b << 16) | (c << 8) | e)))
: 'Castle Map' == d.getCurrentSceneName() &&
((a = Fa.get().scenes.h[72].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(k = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, k, d.createFadeIn(0.3, (b << 16) | (c << 8) | e)));
},
this.actor
))
: (this._OnLevelNode = !1);
},
_customEvent_Forward: function () {
this._GotNode = !1;
this._MovingForward = !0;
this._MovingBackward = !1;
for (var a = 0, b = x.__cast(d.getActorGroup(11), ze).list; a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
this._GotNode ||
c.getValue('Overworld Node Logic', '_NodeNumber') != this._CurrentNodeNumber + 1 ||
((this._GotNode = !0),
(this._CurrentNode = c),
this._CurrentNode.getX() == this.actor.getX() &&
this._CurrentNode.getY() < this.actor.getY()
? (this._Direction = 'Up')
: this._CurrentNode.getX() == this.actor.getX() &&
this._CurrentNode.getY() > this.actor.getY()
? (this._Direction = 'Down')
: this._CurrentNode.getY() == this.actor.getY() &&
this._CurrentNode.getX() < this.actor.getX()
? (this._Direction = 'Left')
: this._CurrentNode.getY() == this.actor.getY() &&
this._CurrentNode.getX() > this.actor.getX() &&
(this._Direction = 'Right'),
'Up' == this._Direction
? ((this._NodeDistance = (this.actor.getY() - this._CurrentNode.getY()) / 32),
'Up' != this._Sprite.getAnimation() && this._Sprite.setAnimation('Up'))
: 'Down' == this._Direction
? ((this._NodeDistance = (this._CurrentNode.getY() - this.actor.getY()) / 32),
'Down' != this._Sprite.getAnimation() && this._Sprite.setAnimation('Down'))
: 'Left' == this._Direction
? ((this._NodeDistance = (this.actor.getX() - this._CurrentNode.getX()) / 32),
'Left' != this._Sprite.getAnimation() && this._Sprite.setAnimation('Left'))
: 'Right' == this._Direction &&
((this._NodeDistance = (this._CurrentNode.getX() - this.actor.getX()) / 32),
'Right' != this._Sprite.getAnimation() && this._Sprite.setAnimation('Right')),
this.actor.moveTo(
this._CurrentNode.getX(),
this._CurrentNode.getY(),
this._Speed * this._NodeDistance,
J.linear
));
}
},
_customEvent_Back: function () {
this._MovingForward = this._GotNode = !1;
this._MovingBackward = !0;
for (var a = 0, b = x.__cast(d.getActorGroup(11), ze).list; a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
this._GotNode ||
c.getValue('Overworld Node Logic', '_NodeNumber') != this._CurrentNodeNumber - 1 ||
((this._GotNode = !0),
(this._CurrentNode = c),
this._CurrentNode.getX() == this.actor.getX() &&
this._CurrentNode.getY() < this.actor.getY()
? (this._Direction = 'Down')
: this._CurrentNode.getX() == this.actor.getX() &&
this._CurrentNode.getY() > this.actor.getY()
? (this._Direction = 'Up')
: this._CurrentNode.getY() == this.actor.getY() &&
this._CurrentNode.getX() < this.actor.getX()
? (this._Direction = 'Right')
: this._CurrentNode.getY() == this.actor.getY() &&
this._CurrentNode.getX() > this.actor.getX() &&
(this._Direction = 'Left'),
'Up' == this._Direction
? ((this._NodeDistance = (this._CurrentNode.getY() - this.actor.getY()) / 32),
'Down' != this._Sprite.getAnimation() && this._Sprite.setAnimation('Down'))
: 'Down' == this._Direction
? ((this._NodeDistance = (this.actor.getY() - this._CurrentNode.getY()) / 32),
'Up' != this._Sprite.getAnimation() && this._Sprite.setAnimation('Up'))
: 'Left' == this._Direction
? ((this._NodeDistance = (this._CurrentNode.getX() - this.actor.getX()) / 32),
'Right' != this._Sprite.getAnimation() && this._Sprite.setAnimation('Right'))
: 'Right' == this._Direction &&
((this._NodeDistance = (this.actor.getX() - this._CurrentNode.getX()) / 32),
'Left' != this._Sprite.getAnimation() && this._Sprite.setAnimation('Left')),
this.actor.moveTo(
this._CurrentNode.getX(),
this._CurrentNode.getY(),
this._Speed * this._NodeDistance,
J.linear
));
}
},
init: function () {
var a = this;
this._HideText = !0;
d.setValueForScene('Switch Overworld', '_HideText', !0);
d.runLater(
1200,
function (b) {
a._HideText = !1;
d.setValueForScene('Switch Overworld', '_HideText', !1);
},
this.actor
);
this.actor.makeAlwaysSimulate();
if (k.engine.getGameAttribute('Map Enter Right')) {
this._AtStartPos = !0;
for (var b = 0, c = d.getActorsOfType(d.getActorType(642)); b < c.length; ) {
var e = c[b];
++b;
null == e ||
e.dead ||
e.recycled ||
1 != e.getValue('Overworld Node Logic', '_Last') ||
(this.actor.setX(e.getX()), this.actor.setY(e.getY()), (this._CurrentNode = e));
}
} else if (k.engine.getGameAttribute('Map Enter Left'))
for (
this._AtStartPos = !0,
k.engine.gameAttributes.h['Map Enter Left'] = !1,
b = 0,
c = x.__cast(d.getActorGroup(11), ze).list;
b < c.length;
) {
var f = c[b];
++b;
null == f ||
f.dead ||
f.recycled ||
f.getX() != this.actor.getX() ||
f.getY() != this.actor.getY() ||
(this._CurrentNode = f);
}
else if (0 != k.engine.getGameAttribute('Last Stage Played'))
for (
this._AtStartPos = !1, b = 0, c = d.getActorsOfType(d.getActorType(644));
b < c.length;
) {
if (((e = c[b]), ++b, null != e && !e.dead && !e.recycled)) {
f = Math.round(k.engine.getGameAttribute('Last Stage Played'));
var g = e.getValue('Overworld Node Logic', '_Level');
f ==
Math.round(
null == g
? 0
: 'number' == typeof g
? x.__cast(g, Nb)
: 'number' == typeof g && (g | 0) === g
? x.__cast(g, Ab)
: 'boolean' == typeof g
? x.__cast(g, Ob)
? 1
: 0
: 'string' == typeof g
? parseFloat(g)
: parseFloat(B.string(g))
) &&
(this.actor.setX(e.getX()),
this.actor.setY(e.getY()),
(this._CurrentNode = e),
(this._OnLevelNode = !0),
(this._MovingForward = this._MovingBackward = !1));
}
}
else
for (b = 0, c = x.__cast(d.getActorGroup(11), ze).list; b < c.length; )
(f = c[b]),
++b,
null == f ||
f.dead ||
f.recycled ||
f.getX() != this.actor.getX() ||
f.getY() != this.actor.getY() ||
(this._CurrentNode = f);
this._StartX = this.actor.getX();
this._StartY = this.actor.getY();
this._Speed = 0.1;
this.actor.moveToTop();
d.createRecycledActor(
d.getActorType(662),
this.actor.getXCenter(),
this.actor.getYCenter(),
0
);
d.createRecycledActor(d.getActorType(666), -200, 12, 0);
this._CompletedBadge = d.getLastCreatedActor();
this._CompletedBadge.makeAlwaysSimulate();
this._CompletedBadge.anchorToScreen();
d.createRecycledActor(d.getActorType(664), -200, 10, 0);
this._StarBadge = d.getLastCreatedActor();
this._StarBadge.makeAlwaysSimulate();
this._StarBadge.anchorToScreen();
k.engine.getGameAttribute('Possum Mode')
? d.createRecycledActorOnLayer(
d.getActorType(740),
this.actor.getX(),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
)
: d.createRecycledActorOnLayer(
d.getActorType(668),
this.actor.getX(),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
);
this._Sprite = d.getLastCreatedActor();
this._Sprite.makeAlwaysSimulate();
d.runLater(
400,
function (b) {
a._CanEnter = !0;
},
this.actor
);
d.runLater(
900,
function (b) {
a._CanMove = !0;
},
this.actor
);
b = this._TotalTimeInHundreths = 0;
for (c = x.__cast(k.engine.getGameAttribute('Best Times'), Array); b < c.length; ) {
e = c[b];
++b;
f = this._TotalTimeInHundreths;
g = ('' + B.string(e)).split(':')[0];
g =
null == g
? 0
: 'number' == typeof g
? x.__cast(g, Nb)
: 'number' == typeof g && (g | 0) === g
? x.__cast(g, Ab)
: 'boolean' == typeof g
? x.__cast(g, Ob)
? 1
: 0
: 'string' == typeof g
? parseFloat(g)
: parseFloat(B.string(g));
var h = ('' + B.string(e)).split(':')[1];
h =
null == h
? 0
: 'number' == typeof h
? x.__cast(h, Nb)
: 'number' == typeof h && (h | 0) === h
? x.__cast(h, Ab)
: 'boolean' == typeof h
? x.__cast(h, Ob)
? 1
: 0
: 'string' == typeof h
? parseFloat(h)
: parseFloat(B.string(h));
e = ('' + B.string(e)).split(':')[2];
this._TotalTimeInHundreths =
f +
(6e3 * g +
100 * h +
(null == e
? 0
: 'number' == typeof e
? x.__cast(e, Nb)
: 'number' == typeof e && (e | 0) === e
? x.__cast(e, Ab)
: 'boolean' == typeof e
? x.__cast(e, Ob)
? 1
: 0
: 'string' == typeof e
? parseFloat(e)
: parseFloat(B.string(e))));
}
this._Hours = Math.floor(this._TotalTimeInHundreths / 100 / 60 / 60);
this._Minutes = Math.floor(this._TotalTimeInHundreths / 100 / 60);
this._Seconds = Math.floor(this._TotalTimeInHundreths / 100);
this._Hundreths = this._TotalTimeInHundreths;
this._Hundreths -= 100 * this._Seconds;
this._Seconds -= 60 * this._Minutes;
this._Minutes -= 60 * this._Hours;
this._HoursString = '' + this._Hours;
this._MinutesString = '' + this._Minutes;
this._SecondsString = '' + this._Seconds;
this._HundrethsString = '' + this._Hundreths;
1 == this._HoursString.length && (this._HoursString = '0' + this._HoursString);
1 == this._MinutesString.length && (this._MinutesString = '0' + this._MinutesString);
1 == this._SecondsString.length && (this._SecondsString = '0' + this._SecondsString);
1 == this._HundrethsString.length &&
(this._HundrethsString = '0' + this._HundrethsString);
this._TotalTimeString =
this._HoursString +
(':' +
(this._MinutesString +
(':' + (this._SecondsString + (':' + this._HundrethsString)))));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
d.runPeriodically(10, q(this, this._event_EveryNsecs), this.actor);
this.addListener(d.engine.whenAnyGamepadPressed, q(this, this._event_AnyButton));
this.addListener(this.actor.whenUpdated, q(this, this._event_AnyKey));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Mu
});
var Nu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Target Actor'] = '_TargetActor';
this.nameMap.h['Distance X'] = '_DistanceX';
this._DistanceX = 0;
this.nameMap.h['Distance Y'] = '_DistanceY';
this._DistanceY = 0;
this.nameMap.h.Distance = '_Distance';
this._Distance = 0;
this.nameMap.h.Direction = '_Direction';
this._Direction = 0;
this.nameMap.h.Speed = '_Speed';
this._Speed = 30;
this.nameMap.h.Margin = '_Margin';
this._Margin = 0;
this.nameMap.h.Easing = '_Easing';
this._Easing = !0;
this.nameMap.h['Minimum Easing Speed'] = '_MinimumEasingSpeed';
this._MinimumEasingSpeed = 5;
this.nameMap.h['Screen Diagonal'] = '_ScreenDiagonal';
this._ScreenDiagonal = 0;
this.nameMap.h['Stop when Colliding'] = '_StopwhenColliding';
this._StopwhenColliding = !0;
this.nameMap.h.Collided = '_Collided';
this._Collided = !1;
};
h['scripts.Design_43_43_FollowTarget'] = Nu;
Nu.__name__ = 'scripts.Design_43_43_FollowTarget';
Nu.__super__ = u;
Nu.prototype = r(u.prototype, {
_TargetActor: null,
_DistanceX: null,
_DistanceY: null,
_Distance: null,
_Direction: null,
_Speed: null,
_Margin: null,
_Easing: null,
_MinimumEasingSpeed: null,
_ScreenDiagonal: null,
_StopwhenColliding: null,
_Collided: null,
_event_Updated: function (a) {
this.wrapper.enabled &&
((a = this._TargetActor),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._TargetActor.isAlive() &&
((this._DistanceX = this._TargetActor.getXCenter() - this.actor.getXCenter()),
(this._DistanceY = this._TargetActor.getYCenter() - this.actor.getYCenter()),
(this._Distance = Math.sqrt(
Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)
)),
(this._Direction = 57.29577951308402 * Math.atan2(this._DistanceY, this._DistanceX)),
!(this._Distance > this._Margin) || (this._StopwhenColliding && this._Collided)
? this.actor.setVelocity(0, 0)
: this._Easing
? this.actor.setVelocity(
this._Direction,
this._MinimumEasingSpeed +
((this._Distance - this._Margin) / this._ScreenDiagonal) * this._Speed
)
: this.actor.setVelocity(this._Direction, this._Speed),
(this._Collided = !1)));
},
_event_ActorActor: function (a) {
this.wrapper.enabled && this._TargetActor == a.otherActor && (this._Collided = !0);
},
init: function () {
this._ScreenDiagonal = Math.sqrt(
Math.pow(d.getScreenWidth(), 2) + Math.pow(d.getScreenHeight(), 2)
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated));
this.addListener(this.actor.whenCollided, q(this, this._event_ActorActor));
},
forwardMessage: function (a) {},
__class__: Nu
});
var Ou = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Hit Ground'] = '_HitGround';
this._HitGround = !1;
this.nameMap.h['Sensor Row Count'] = '_SensorRowCount';
this._SensorRowCount = 0;
this.nameMap.h['Sensor Column Count'] = '_SensorColumnCount';
this._SensorColumnCount = 0;
this.nameMap.h['Shake Image'] = '_ShakeImage';
this.nameMap.h['Shake Image Instance'] = '_ShakeImageInstance';
this.nameMap.h['Shake Count'] = '_ShakeCount';
this._ShakeCount = 0;
this.nameMap.h.Left = '_Left';
this._Left = !1;
this.nameMap.h.Shake = '_Shake';
this._Shake = !1;
this.nameMap.h['Sensor List'] = '_SensorList';
this.nameMap.h.Fall = '_Fall';
this._Fall = !1;
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h.Done = '_Done';
this._Done = !1;
this.nameMap.h['Has Hit Dude'] = '_HasHitDude';
this._HasHitDude = !1;
this.nameMap.h.Height = '_Height';
this._Height = 0;
};
h['scripts.Design_45_45_FallingSpikeLogic'] = Ou;
Ou.__name__ = 'scripts.Design_45_45_FallingSpikeLogic';
Ou.__super__ = u;
Ou.prototype = r(u.prototype, {
_HitGround: null,
_SensorRowCount: null,
_SensorColumnCount: null,
_ShakeImage: null,
_ShakeImageInstance: null,
_ShakeCount: null,
_Left: null,
_Shake: null,
_SensorList: null,
_Fall: null,
_GravitySpeed: null,
_Done: null,
_HasHitDude: null,
_Height: null,
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
this._Shake &&
!this._Fall &&
!this._Done &&
(d.attachImageToActor(
this._ShakeImageInstance,
this.actor,
(-2 + this._ShakeCount) | 0,
0,
1
),
6 != this._ShakeCount || this._Left
? 0 == this._ShakeCount && this._Left && (this._Left = !1)
: (this._Left = !0),
(this._ShakeCount = this._Left ? this._ShakeCount - 2 : this._ShakeCount + 2));
},
_event_DudeHitsSensor: function (a) {
var b = this;
if (
this.wrapper.enabled &&
!this._Shake &&
!this._Fall &&
!this._Done &&
X.contains(this._SensorList, a.otherActor)
) {
this._Shake = !0;
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(106));
a = 0;
for (var c = x.__cast(this._SensorList, Array); a < c.length; ) {
var e = c[a];
++a;
d.recycleActor(e);
}
d.runLater(
800,
function (a) {
b._Fall = !0;
b.actor.moveBy(0, 32 * b._Height, 0.08 * (b._Height + 1), J.quadIn);
b._Shake = !1;
d.attachImageToActor(b._ShakeImageInstance, b.actor, 0, 0, 1);
d.runLater(
80 * (b._Height + 1),
function (a) {
b._Done = !0;
b._Fall = !1;
a = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); a < c.length; ) {
var e = c[a];
++a;
null == e ||
e.dead ||
e.recycled ||
(b.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Spike Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Spike Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
}
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(113));
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getY() + b.actor.getHeight() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Small');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getY() + b.actor.getHeight() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Small');
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getY() + b.actor.getHeight() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Small');
b.actor.say('Falling Spike Logic', '_customEvent_Destroy');
d.startShakingScreen(0.002, 0.03);
},
b.actor
);
},
this.actor
);
}
},
_event_HitsDude: function (a) {
if (this.wrapper.enabled) {
var b = d.getActorType(2);
var c = a.otherActor.getType(),
e = a.otherActor.getGroup();
b = b == c || b == e;
} else b = !1;
b &&
!this._HasHitDude &&
((this._HasHitDude = !0),
a.otherActor.say('Dude Logic', '_customEvent_Die'),
this.actor.say('Falling Spike Logic', '_customEvent_Destroy'));
},
_customEvent_Destroy: function () {
d.recycleActor(this.actor);
},
init: function () {
this.actor.makeAlwaysSimulate();
this._ShakeImage = d.getImageForActor(this.actor);
this._ShakeImageInstance = new Qh(new Mc(this._ShakeImage));
this.actor.disableActorDrawing();
d.attachImageToActor(this._ShakeImageInstance, this.actor, 0, 0, 1);
this._GravitySpeed = 48;
this._SensorList = [];
this._HitGround = !1;
for (this._SensorRowCount = 0; !this._HitGround; )
d.tileExistsAt(
(Math.round((this.actor.getY() + this.actor.getHeight()) / 32) +
this._SensorRowCount) |
0,
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
) &&
7 <
d.getTileIDAt(
(Math.round((this.actor.getY() + this.actor.getHeight()) / 32) +
this._SensorRowCount) |
0,
(Math.round(this.actor.getX() / 32) + this._SensorColumnCount) | 0,
d.engine.getLayerById(0)
)
? (this._HitGround = !0)
: (d.createRecycledActor(
d.getActorType(68),
16 * Math.round(this.actor.getX() / 16),
32 *
(Math.round((this.actor.getY() + this.actor.getHeight()) / 32) +
this._SensorRowCount),
0
),
this._SensorList.push(d.getLastCreatedActor()),
d.getLastCreatedActor().disableActorDrawing()),
(this._SensorRowCount += 1);
if (0 == this._Height || this._Height < this._SensorRowCount)
this._Height = this._SensorRowCount;
d.runPeriodically(20, q(this, this._event_EveryNsecs), this.actor);
this.addListenerWithKey2(
d.engine.whenCollidedEvents,
d.getActorType(2).ID,
d.getActorType(68).ID,
q(this, this._event_DudeHitsSensor)
);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsDude));
},
forwardMessage: function (a) {},
__class__: Ou
});
var Pu = function (a, b) {
d.call(this);
this.nameMap.h['Player Created'] = '_PlayerCreated';
this._PlayerCreated = !1;
this.nameMap.h['Transition Row Count'] = '_TransitionRowCount';
this._TransitionRowCount = 0;
this.nameMap.h['Transition Col Count'] = '_TransitionColCount';
this._TransitionColCount = 0;
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Transition Type'] = '_TransitionType';
this._TransitionType = 0;
this.nameMap.h['Snow Speed'] = '_SnowSpeed';
this._SnowSpeed = 0;
this.nameMap.h['Pause Button'] = '_PauseButton';
this.nameMap.h['Transition X Center'] = '_TransitionXCenter';
this._TransitionXCenter = 0;
this.nameMap.h['Transition Y Center'] = '_TransitionYCenter';
this._TransitionYCenter = 0;
this.nameMap.h.Overlay = '_Overlay';
this.nameMap.h['Level Number'] = '_LevelNumber';
this._LevelNumber = 0;
this.nameMap.h['Beach BG Created'] = '_BeachBGCreated';
this._BeachBGCreated = !1;
this.nameMap.h['Beach BG Width'] = '_BeachBGWidth';
this._BeachBGWidth = 0;
this.nameMap.h.Angle = '_Angle';
this._Angle = 0;
this.nameMap.h['Landscape Left'] = '_LandscapeLeft';
this._LandscapeLeft = !1;
this.nameMap.h['Current Orientation'] = '_CurrentOrientation';
this._CurrentOrientation = 0;
this.nameMap.h['CONTROLLER TESTER'] = '_CONTROLLERTESTER';
this._CONTROLLERTESTER = '';
this.nameMap.h['Timer Banner'] = '_TimerBanner';
this.nameMap.h['Time String'] = '_TimeString';
this._TimeString = '';
this.nameMap.h['Timer On'] = '_TimerOn';
this._TimerOn = !1;
this.nameMap.h['Timer Seconds'] = '_TimerSeconds';
this._TimerSeconds = 0;
this.nameMap.h['Timer Minutes'] = '_TimerMinutes';
this._TimerMinutes = 0;
this.nameMap.h['Timer Hundreths'] = '_TimerHundreths';
this._TimerHundreths = 0;
this.nameMap.h['Minutes String'] = '_MinutesString';
this._MinutesString = '';
this.nameMap.h['Seconds String'] = '_SecondsString';
this._SecondsString = '';
this.nameMap.h['Hundreths String'] = '_HundrethsString';
this._HundrethsString = '';
this.nameMap.h['Show Timer'] = '_ShowTimer';
this._ShowTimer = !1;
this.nameMap.h['Total in Hundreths'] = '_TotalinHundreths';
this._TotalinHundreths = 0;
this.nameMap.h['Previous Total In Hundreths'] = '_PreviousTotalInHundreths';
this._PreviousTotalInHundreths = 0;
this.nameMap.h['Previous Time String'] = '_PreviousTimeString';
this._PreviousTimeString = '';
this.nameMap.h['Rumble Name'] = '_RumbleName';
this._RumbleName = '';
};
h['scripts.Design_49_49_StageLogic'] = Pu;
Pu.__name__ = 'scripts.Design_49_49_StageLogic';
Pu.__super__ = sa;
Pu.prototype = r(sa.prototype, {
_PlayerCreated: null,
_TransitionRowCount: null,
_TransitionColCount: null,
_Dude: null,
_TransitionType: null,
_SnowSpeed: null,
_PauseButton: null,
_TransitionXCenter: null,
_TransitionYCenter: null,
_Overlay: null,
_LevelNumber: null,
_BeachBGCreated: null,
_BeachBGWidth: null,
_Angle: null,
_LandscapeLeft: null,
_CurrentOrientation: null,
_CONTROLLERTESTER: null,
_TimerBanner: null,
_TimeString: null,
_TimerOn: null,
_TimerSeconds: null,
_TimerMinutes: null,
_TimerHundreths: null,
_MinutesString: null,
_SecondsString: null,
_HundrethsString: null,
_ShowTimer: null,
_TotalinHundreths: null,
_PreviousTotalInHundreths: null,
_PreviousTimeString: null,
_RumbleName: null,
_event_Timer: function (a, b, c) {
if (
this.wrapper.enabled &&
((b = this._TimerBanner),
d.isPrimitive(b) || ('string' == typeof b ? '' != x.__cast(b, String) : null != b)) &&
(this._TimerBanner.setX(
-(
this._TimerBanner.getWidth() -
(d.getFont(526).getTextWidth(this._TimeString) / k.SCALE + 48)
)
),
this._ShowTimer)
) {
b = d.getFont(526);
null != b && b != a.font && (a.font = b);
var e = this._TimerBanner;
a.drawActor = !0;
a.actor = e;
e.smoothMove
? ((b = e.drawX - Math.floor(e.cacheWidth / 2) - e.currOffset.x),
(c = e.drawY - Math.floor(e.cacheHeight / 2) - e.currOffset.y),
(a.x = b * a.scaleX),
(a.y = c * a.scaleY))
: ((a.x = e.colX * a.scaleX), (a.y = e.colY * a.scaleY));
d.setDrawingLayerToSceneLayer();
e = this._TimeString;
b =
this._TimerBanner.getWidth() -
(d.getFont(526).getTextWidth(this._TimeString) / k.SCALE + 16);
c = this._TimerBanner.getHeight() / 2 - d.getFont(441).getHeight() / k.SCALE / 2;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
var f = null,
g = a.font;
g = e + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g))
(e = W.drawnStringCache.h[g]), (e.lifetime = 5), (f = e.img);
else {
var h = a.font.font.getTextWidth(e, a.font.letterSpacing, a.font.fontScale),
l = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
e,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(e = new Mb()),
(e.img = f),
(e.lifetime = 5),
(W.drawnStringCache.h[g] = e),
W.drawnStringCacheKeys.push(g));
}
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, f.width, f.height),
a.graphics.endFill());
}
},
_event_TimerCount: function (a) {
this.wrapper.enabled &&
(this._TimerOn &&
((this._TimerHundreths += 1),
99 < this._TimerHundreths &&
((this._TimerSeconds += 1),
(this._TimerHundreths = 0),
59 < this._TimerSeconds && ((this._TimerMinutes += 1), (this._TimerSeconds = 0)))),
10 <= this._TimerMinutes
? ((this._MinutesString = '10'), (this._HundrethsString = this._SecondsString = '00'))
: (1 == ('' + this._TimerHundreths).length
? (this._HundrethsString = '0' + this._TimerHundreths)
: 2 == ('' + this._TimerHundreths).length &&
(this._HundrethsString = '' + this._TimerHundreths),
1 == ('' + this._TimerSeconds).length
? (this._SecondsString = '0' + this._TimerSeconds)
: 2 == ('' + this._TimerSeconds).length &&
(this._SecondsString = '' + this._TimerSeconds),
1 == ('' + this._TimerMinutes).length
? (this._MinutesString = '0' + this._TimerMinutes)
: 2 == ('' + this._TimerMinutes).length &&
(this._MinutesString = '' + this._TimerMinutes)),
(this._TimeString =
this._MinutesString + (':' + (this._SecondsString + (':' + this._HundrethsString)))));
},
_event_Snow: function (a) {
if (this.wrapper.enabled && 'Snow' == k.engine.getGameAttribute('Stage Type')) {
1 == d.randomInt(1, 2) &&
(1 == d.randomInt(1, 2)
? (this._SnowSpeed = Math.min(this._SnowSpeed + 1, 12))
: (this._SnowSpeed = Math.max(this._SnowSpeed - 1, -12)));
a = 0;
for (var b = d.randomInt(1, 3); a < b; )
a++,
d.createRecycledActor(
d.getActorType(155),
d.randomInt(
(d.getScreenX() - d.getScreenWidth() / 2) | 0,
(d.getScreenX() + (d.getScreenWidth() + d.getScreenWidth() / 2)) | 0
),
d.getScreenY() - 16 - d.randomInt(0, d.getScreenHeight()),
0
);
}
},
_customEvent_createPauseButton: function () {
var a = this._PauseButton;
d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a) ||
(d.createRecycledActor(d.getActorType(234), d.getScreenWidth() - 56, 12, 0),
(this._PauseButton = d.getLastCreatedActor()));
},
_customEvent_timerStart: function () {
this._TimerOn = !0;
},
_customEvent_timerHide: function () {
var a = this;
d.runLater(
1e3,
function (b) {
a._ShowTimer = !1;
a._TimerBanner.disableActorDrawing();
},
null
);
},
_customEvent_timerShow: function () {
var a = this;
d.runLater(
1e3,
function (b) {
a._ShowTimer = !0;
a._TimerBanner.enableActorDrawing();
},
null
);
},
_customEvent_timerStop: function () {
this._TimerOn = !1;
var a = k.engine.getGameAttribute('Best Times'),
b = d.getCurrentSceneName().split(' ')[1];
this._PreviousTimeString =
'' +
B.string(
a[
((null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b))) -
1) |
0
]
);
b = this._PreviousTimeString.split(':')[0];
a =
null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b));
b = this._PreviousTimeString.split(':')[1];
var c =
null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b));
b = this._PreviousTimeString.split(':')[2];
this._PreviousTotalInHundreths =
6e3 * a +
100 * c +
(null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b)));
b = this._TimeString.split(':')[0];
a =
null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b));
b = this._TimeString.split(':')[1];
c =
null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b));
b = this._TimeString.split(':')[2];
this._TotalinHundreths =
6e3 * a +
100 * c +
(null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b)));
this._TotalinHundreths < this._PreviousTotalInHundreths &&
((a = k.engine.getGameAttribute('Best Times')),
(b = d.getCurrentSceneName().split(' ')[1]),
(a[
((null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b))) -
1) |
0
] = this._TimeString),
d.saveGame('mySave', function (a) {}));
},
_customEvent_starGet: function () {
X.contains(k.engine.getGameAttribute('Stars List'), this._LevelNumber) ||
(k.engine.getGameAttribute('Stars List').push(this._LevelNumber),
d.saveGame('mySave', function (a) {}),
43 <= k.engine.getGameAttribute('Stars List').length - 1 &&
k.engine.getGameAttribute('Possum Mode Unlocked'));
},
_customEvent_rumble: function () {
'Small Thud' == this._RumbleName
? d.runLater(50, function (a) {}, null)
: 'Small Thud Left' == this._RumbleName
? d.runLater(50, function (a) {}, null)
: 'Small Thud Right' == this._RumbleName
? d.runLater(50, function (a) {}, null)
: 'Thud' == this._RumbleName
? d.runLater(50, function (a) {}, null)
: 'Big Thud Left' == this._RumbleName
? d.runLater(150, function (a) {}, null)
: 'Big Thud Right' == this._RumbleName
? d.runLater(150, function (a) {}, null)
: 'Dead' == this._RumbleName
? d.runLater(20, function (a) {}, null)
: 'Spike Left' == this._RumbleName
? d.runLater(60, function (a) {}, null)
: 'Spike Right' == this._RumbleName
? d.runLater(60, function (a) {}, null)
: 'Spring' == this._RumbleName
? d.runLater(150, function (a) {}, null)
: 'Star' == this._RumbleName
? d.runLater(80, function (a) {}, null)
: 'Item' == this._RumbleName
? d.runLater(80, function (a) {}, null)
: 'Block Left' == this._RumbleName
? d.runLater(60, function (a) {}, null)
: 'Block Right' == this._RumbleName
? d.runLater(60, function (a) {}, null)
: 'Cannon Left' == this._RumbleName
? d.runLater(300, function (a) {}, null)
: 'Cannon Right' == this._RumbleName
? d.runLater(300, function (a) {}, null)
: 'Explode Left' == this._RumbleName
? d.runLater(250, function (a) {}, null)
: 'Explode Right' == this._RumbleName
? d.runLater(250, function (a) {}, null)
: 'Crumble' == this._RumbleName
? d.runLater(160, function (a) {}, null)
: 'Balloon' == this._RumbleName
? d.runLater(100, function (a) {}, null)
: 'Boss Pop' == this._RumbleName
? d.runLater(60, function (a) {}, null)
: 'Emerge' == this._RumbleName
? d.runLater(100, function (a) {}, null)
: 'Exit' == this._RumbleName && d.runLater(100, function (a) {}, null);
this._RumbleName = 'None';
},
init: function () {
var a = this;
gb.gameplayStart();
d.stopAllSounds();
if ('Level' == d.getCurrentSceneName().split(' ')[0]) {
var b = d.getCurrentSceneName().split(' ')[1];
this._LevelNumber =
null == b
? 0
: 'number' == typeof b
? x.__cast(b, Nb)
: 'number' == typeof b && (b | 0) === b
? x.__cast(b, Ab)
: 'boolean' == typeof b
? x.__cast(b, Ob)
? 1
: 0
: 'string' == typeof b
? parseFloat(b)
: parseFloat(B.string(b));
} else this._LevelNumber = 0;
k.engine.gameAttributes.h['Last Stage Played'] = this._LevelNumber;
d.saveGame('mySave', function (a) {});
d.engine.unpause();
d.createRecycledActor(d.getActorType(283), -5, -5, 0);
this._Overlay = d.getLastCreatedActor();
if (86 == d.getTilesetIDAt(0, 0, d.engine.getLayerById(0)))
(k.engine.gameAttributes.h['Stage Type'] = 'Grasslands'),
d.loopSoundOnChannel(d.getSound(135), 15);
else if (144 == d.getTilesetIDAt(0, 0, d.engine.getLayerById(0)))
for (
k.engine.gameAttributes.h['Stage Type'] = 'Seaside',
d.loopSoundOnChannel(d.getSound(148), 15),
d.createRecycledActorOnLayer(d.getActorType(756), -1, -1, d.engine.getLayerById(7)),
d.createRecycledActorOnLayer(d.getActorType(541), 0, 0, d.engine.getLayerById(7)),
this._BeachBGWidth = d.getLastCreatedActor().getWidth();
!this._BeachBGCreated;
)
960 > this._BeachBGWidth
? (d.createRecycledActorOnLayer(
d.getActorType(541),
d.getLastCreatedActor().getX() + d.getLastCreatedActor().getWidth(),
0,
d.engine.getLayerById(7)
),
(this._BeachBGWidth += d.getLastCreatedActor().getWidth()))
: (this._BeachBGCreated = !0);
else if (149 == d.getTilesetIDAt(0, 0, d.engine.getLayerById(0)))
for (
k.engine.gameAttributes.h['Stage Type'] = 'Snow',
d.loopSoundOnChannel(d.getSound(157), 15),
d.createRecycledActorOnLayer(d.getActorType(754), -1, -1, d.engine.getLayerById(7)),
d.createRecycledActorOnLayer(d.getActorType(615), 0, 0, d.engine.getLayerById(7)),
this._BeachBGWidth = d.getLastCreatedActor().getWidth();
!this._BeachBGCreated;
)
960 > this._BeachBGWidth
? (d.createRecycledActorOnLayer(
d.getActorType(615),
d.getLastCreatedActor().getX() + d.getLastCreatedActor().getWidth(),
0,
d.engine.getLayerById(7)
),
(this._BeachBGWidth += d.getLastCreatedActor().getWidth()))
: (this._BeachBGCreated = !0);
else if (671 == d.getTilesetIDAt(0, 0, d.engine.getLayerById(0)))
for (
k.engine.gameAttributes.h['Stage Type'] = 'Cave',
d.loopSoundOnChannel(d.getSound(747), 15),
d.createRecycledActorOnLayer(d.getActorType(752), -1, -1, d.engine.getLayerById(7)),
d.createRecycledActorOnLayer(d.getActorType(672), -1, -1, d.engine.getLayerById(7)),
ba.setScale('width', 962, d.getLastCreatedActor()),
ba.setScale('height', 271, d.getLastCreatedActor()),
d.createRecycledActorOnLayer(
d.getActorType(674),
0,
d.getScreenHeight() / 2 - 436,
d.engine.getLayerById(7)
),
this._BeachBGWidth = d.getLastCreatedActor().getWidth();
!this._BeachBGCreated;
)
960 > this._BeachBGWidth
? (d.createRecycledActorOnLayer(
d.getActorType(674),
d.getLastCreatedActor().getX() + d.getLastCreatedActor().getWidth(),
d.getScreenHeight() / 2 - 436,
d.engine.getLayerById(7)
),
(this._BeachBGWidth += d.getLastCreatedActor().getWidth()))
: (this._BeachBGCreated = !0);
else
193 == d.getTilesetIDAt(0, 0, d.engine.getLayerById(0)) &&
((k.engine.gameAttributes.h['Stage Type'] = 'Castle'),
d.loopSoundOnChannel(d.getSound(196), 15));
k.engine.getGameAttribute('Sound Disabled')
? d.setVolumeForChannel(0, 15)
: k.engine.getGameAttribute('Sound Disabled') || d.setVolumeForChannel(1, 15);
k.engine.getGameAttribute('Music Disabled')
? d.setVolumeForChannel(0, 16)
: k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16);
if (k.engine.getGameAttribute('Checkpoint Passed')) {
b = 0;
for (var c = d.getActorsOfType(d.getActorType(72)); b < c.length; ) {
var e = c[b];
++b;
if (null != e && !e.dead && !e.recycled && !this._PlayerCreated) {
this._PlayerCreated = !0;
e.setAnimation('Passed');
d.createRecycledActorOnLayer(
d.getActorType(2),
e.getX() - 2 + 32,
e.getY() + e.getHeight() - 16,
d.engine.getLayerById(e.getLayerID())
);
e = 0;
for (var f = d.getActorsOfType(d.getActorType(70)); e < f.length; ) {
var g = f[e];
++e;
null == g || g.dead || g.recycled || d.recycleActor(g);
}
}
}
} else
for (b = 0, c = d.getActorsOfType(d.getActorType(70)); b < c.length; )
(e = c[b]),
++b,
null == e ||
e.dead ||
e.recycled ||
(this._PlayerCreated ||
((k.engine.gameAttributes.h['Camera Boundary Number'] = 1),
(this._PlayerCreated = !0),
e.setAnimation('Passed'),
d.createRecycledActorOnLayer(
d.getActorType(2),
e.getX() - 2,
e.getY() + e.getHeight() - 16,
d.engine.getLayerById(e.getLayerID())
)),
d.recycleActor(e));
if ('Snow' == k.engine.getGameAttribute('Stage Type'))
for (b = 0; 24 > b; )
b++,
d.createRecycledActor(
d.getActorType(155),
d.randomInt(
(d.getScreenX() - d.getScreenWidth() / 2) | 0,
(d.getScreenX() + (d.getScreenWidth() + d.getScreenWidth() / 2)) | 0
),
d.randomInt(
(d.getScreenY() - d.getScreenHeight() / 2) | 0,
(d.getScreenY() + d.getScreenHeight() / 2) | 0
),
0
);
k.engine.getGameAttribute('Timer Mode') &&
(d.createRecycledActor(d.getActorType(435), -100, 10, 0),
d.getLastCreatedActor().setAnimation('Blue'),
d.getLastCreatedActor().disableBehavior('Cutscene Title Logic'),
d.getLastCreatedActor().anchorToScreen(),
d.getLastCreatedActor().makeAlwaysSimulate(),
(this._TimerBanner = d.getLastCreatedActor()),
(this._TimeString = '00:00:00'),
this._TimerBanner.disableActorDrawing(),
d.runLater(
1e3,
function (b) {
a._ShowTimer = !0;
a._TimerBanner.enableActorDrawing();
},
null
));
d.runLater(
200,
function (a) {
if (
'JP' == k.engine.getGameAttribute('Language') &&
!k.engine.getGameAttribute('Possum Mode')
) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(159)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
('Level 1' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u3093\u306b\u3061\u306f\u304a\u7236\u3055\u3093\uff01\u3042\u306a\u305f\u306f\u79c1\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff01|\u3042\u306a\u305f\u306f\u3042\u307e\u308a\u9060\u304f\u307e\u3067\u884c\u3063\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f... |\u3042\u306a\u305f\u306e\u5b50\u4f9b\u305f\u3061\u306e\u3046\u3061\u3001\u79c1\u306f\u9593\u9055\u3044\u306a\u304f\u6700\u3082\u6020\u3051\u8005\u3067\u3059\u3002\u5206\u304b\u3063\u3066\u826f\u304b\u3063\u305f\u3002'
)
: 'Level 2' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u304a\u7236\u3055\u3093\u3001\u3059\u3054\u3044\u3001\u30c0\u30d6\u30eb\u30b8\u30e3\u30f3\u30d7\u3067\u304d\u308b\u3068\u306f\u77e5\u3089\u306a\u304b\u3063\u305f\uff01|\u307e\u3042\u3001\u3082\u3057\u4e88\u5b9a\u901a\u308a\u3042\u306a\u305f\u304c\u5bb6\u306b\u3044\u308b\u3088\u3046\u306a\u3089\u3001\u79c1\u306f\u30c0\u30d6\u30eb\u30b8\u30e3\u30f3\u30d7\u3059\u308b\u5fc5\u8981\u306f\u306a\u3044\u3060\u308d\u3046\u3002|\u30c0\u30d6\u30eb\u30b8\u30e3\u30f3\u30d7\u306f\u3068\u3066\u3082\u30af\u30fc\u30eb\u3060\uff01|*#\u305f\u3081\u606f*'
)
: 'Level 3' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3061\u3087\u3063\u3068\uff01|\u4f55\uff1f\uff01|\u51fa\u3066\u3044\u3051\uff01|\u3059\u307f\u307e\u305b\u3093\uff1f\uff01|\u3053\u308c\u306f\u304a\u7236\u3055\u3093\u7981\u6b62\u30be\u30fc\u30f3\u3067\u3059\uff01\u5931\u305b\u308d\uff01|\u305d\u308c\u3060\u3051\u3060\u3001\u30df\u30b9\u30bf\u30fc\u3001\u3042\u306a\u305f\u306f\u5916\u51fa\u7981\u6b62\u3067\u3059\u3002|\u3054\u3081\u3093\u306d\u3002'
)
: 'Level 4' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u3053\u3067\u4f55\u3092\u3057\u3066\u3044\u308b\u306e\u3067\u3059\u304b\uff1f|\u79c1\u306e\u4eba\u751f\u306e\u6642\u9593\u3092\u904e\u3054\u3057\u3066\u3044\u307e\u3059\uff01|\u30aa\u30fc\u30b1\u30fc\u3001\u3048\u3063\u3068\u3001\u305d\u308c\u306f\u3044\u3044\u3068\u601d\u3046\u3051\u3069\u3001\u4eca\u306f\u5bb6\u306b\u5e30\u308b\u6642\u9593\u3060|\u30aa\u30fc\u30b1\u30fc\u3001\u3044\u3044\u306d...\u81ea\u5206\u306e\u4eba\u751f\u306e\u6642\u9593\u3092\u904e\u3054\u3059\u306e\u306f\u75b2\u308c\u308b\u306d\u3002'
)
: 'Level 5' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u3093\u306b\u3061\u306f\u304a\u7236\u3055\u3093\uff01\u5bb6\u306b\u5e30\u308b\u3088\u3046\u306b\u79c1\u306b\u8a00\u3046\u3068\u3053\u308d\u3067\u3059\u304b\uff1f|\u306f\u3044\u3001\u305a\u3063\u3068\u3068\u3066\u3082\u5fc3\u914d\u3057\u3066\u3044\u307e\u3059\uff01|\u3042\u3042\u3001\u79c1\u3082\u3002|\u3069\u3046\u3044\u3046\u610f\u5473\u3067\u3059\u304b\uff1f|\u79c1\u306f\u7d76\u3048\u305a\u3001\u305d\u3057\u3066\u308f\u3056\u3068\u3072\u3069\u3044\u5371\u967a\u306b\u81ea\u5206\u3092\u3055\u3089\u3057\u3066\u3044\u307e\u3059\u3002\u79c1\u306f\u30b9\u30ea\u30eb\u306e\u305f\u3081\u306b\u305d\u308c\u3092\u3057\u3066\u3044\u308b\u3075\u308a\u3092\u3057\u3066\u3044\u307e\u3059\u304c\u3001\u672c\u5f53\u306f\u6c17\u306b\u304b\u3051\u3066\u3082\u3089\u3044\u305f\u3044\u3060\u3051\u3067\u3059\u3002|\u7d20\u6674\u3089\u3057\u3044\u3002'
)
: 'Level 6' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u3093\u306b\u3061\u306f\u304a\u7236\u3055\u3093\uff01\u3053\u306e\u5834\u6240\u306f\u7d20\u6674\u3089\u3057\u3044\u3068\u306f\u601d\u3044\u307e\u305b\u3093\u304b|\u79c1\u306f\u77e5\u308a\u307e\u305b\u3093...\u3053\u3053\u306f\u3068\u3052\u3068\u3052\u3057\u3044\u5371\u967a\u306a\u3082\u306e\u3067\u3044\u3063\u3071\u3044\u3067\u3059\u3002|\u5206\u3063\u3066\u307e\u3059\uff01\u7d20\u6674\u3089\u3057\u3044\uff01'
)
: 'Level 7' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u306e\u6d1e\u7a9f\u306f\u79c1\u306e\u65b0\u3057\u3044\u5bb6\u3067\u3059\u3002\u79c1\u306f\u4eca\u3053\u3053\u306b\u4f4f\u3093\u3067\u3044\u307e\u3059\u3002|\u4f4f\u3093\u3067\u306a\u3044\u3067\u3057\u3087\u3002|\u4f4f\u3093\u3067\u3044\u307e\u3059\u3002|\u4f4f\u3093\u3067\u306a\u3044\u3002|\u30aa\u30fc\u30b1\u30fc\u3001\u3054\u3081\u3093\u306d\u3002'
)
: 'Level 8' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3042\u3042...\u3048\u30fc\u3068...\u3042\u306a\u305f\u306f\u79c1\u306e\u5b50\u4f9b\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u306d...|*\u30ae\u30e3\u30fc*|\u3042\u3042\u3001\u306a\u3093\u3066\u3053\u3063\u305f\u3002'
)
: 'Level 9' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u306a\u305c\u3042\u306a\u305f\u306e\u5b50\u4f9b\u304c\u305d\u306e\u3088\u3046\u306a\u5371\u967a\u306a\u5834\u6240\u306b\u96a0\u308c\u306a\u3051\u308c\u3070\u306a\u3089\u306a\u3044\u306e\u3067\u3059\u304b\uff1f\u306a\u305c\u3042\u306a\u305f\u306f\u30e2\u30fc\u30eb\u3084\u4f55\u304b\u306b\u96a0\u308c\u308b\u3053\u3068\u304c\u3067\u304d\u306a\u304b\u3063\u305f\u306e\u3067\u3059\u304b\uff1f|\u5f85\u3063\u3066... \u3053\u308c\u306f\u30e2\u30fc\u30eb\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u304b\uff1f\u305d\u308c\u304c\u3001\u5f7c\u3089\u304c\u79c1\u306b\u3053\u306e\u534a\u30ba\u30dc\u30f3\u3092\u8fd4\u3055\u305b\u306a\u3044\u7406\u7531\u3092\u8aac\u660e\u3057\u3066\u3044\u307e\u3059\u3002|\u534a\u30ba\u30dc\u30f3\uff1f\u3042\u306a\u305f\u306f\u8db3\u3055\u3048\u6301\u3063\u3066\u3044\u307e\u305b\u3093\uff01|\u305d\u308c\u3053\u305d\u307e\u3055\u306b\u79c1\u304c\u534a\u30ba\u30dc\u30f3\u3092\u8fd4\u305d\u3046\u3068\u3057\u3066\u3044\u305f\u7406\u7531\u3067\u3059\uff01'
)
: 'Level 10' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3042\u3042\u306a\u308b\u307b\u3069\uff01\u3042\u306a\u305f\u306f\u305d\u306e\u5947\u5999\u306a\u30cf\u30f3\u30d0\u30fc\u30ac\u30fc\u306e\u7537\u3092\u6253\u3061\u8ca0\u304b\u3057\u305f\uff01|\u898b\u3066\u3001\u79c1\u306f\u305d\u306e\u3053\u3068\u306b\u3064\u3044\u3066\u3044\u3044\u611f\u3058\u306f\u3057\u307e\u305b\u3093\u3002\u5f7c\u306f\u304b\u306a\u308a\u3044\u3044\u4eba\u306e\u3088\u3046\u306b\u898b\u3048\u307e\u3057\u305f\u3002|\u5f7c\u306f\u3042\u306a\u305f\u3092\u6bba\u305d\u3046\u3068\u3057\u307e\u3057\u305f\uff01|\u3064\u307e\u308a\u3001\u5f7c\u306f\u6bba\u305d\u3046\u3068\u3057\u305f\u3051\u3069...\u307e\u3042...\u3042\u306a\u305f\u304c\u7121\u4e8b\u3067\u3046\u308c\u3057\u3044\u3067\u3059\u3002|\u3042\u3042\u3001\u79c1\u3082\u3067\u3059\u3002\u3042\u308a\u304c\u3068\u3046\u3001\u304a\u7236\u3055\u3093\u3002'
)
: 'Level 11' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u79c1\u306f\u30d3\u30fc\u30c1\u3067\u7d20\u6575\u306a\u4e00\u65e5\u3092\u904e\u3054\u3057\u3066\u3044\u307e\u3059\uff01|\u3053\u3053\u306f\u79c1\u304c\u4eca\u307e\u3067\u898b\u305f\u4e2d\u3067\u6700\u3082\u5371\u967a\u306a\u30d3\u30fc\u30c1\u3067\u3059\u3002|\u3053\u3053\u306f\u79c1\u304c\u4eca\u307e\u3067\u898b\u305f\u4e2d\u3067\u6700\u3082\u30a8\u30ad\u30b5\u30a4\u30c6\u30a3\u30f3\u30b0\u306a\u30d3\u30fc\u30c1\u3067\u3059\uff01'
)
: 'Level 12' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u306e\u666f\u8272\u306f\u7d20\u6674\u3089\u3057\u3044\u3067\u3059\uff01|\u7d20\u6674\u3089\u3057\u3044\u3051\u3069\u3001\u81ea\u5b85\u306b\u3082\u540c\u3058\u3088\u3046\u306a\u3082\u306e\u304c\u3042\u308a\u307e\u3059\u3002|\u30d3\u30c7\u30aa\u30b2\u30fc\u30e0\u696d\u754c\u3067\u306f\u3001\u5f7c\u3089\u306f\u305d\u308c\u3092\u8cc7\u7523\u306e\u518d\u5229\u7528\u3068\u547c\u3093\u3067\u3044\u307e\u3059\u3002\u3053\u308c\u306f\u30e1\u30e2\u30ea\u3092\u7bc0\u7d04\u3057\u3066\u958b\u767a\u6642\u9593\u3092\u77ed\u7e2e\u3059\u308b\u8ce2\u3044\u65b9\u6cd5\u3067\u3059\u3002|\u300c\u30d3\u30c7\u30aa\u30b2\u30fc\u30e0\u696d\u754c\u300d\u3068\u306f\u4f55\u3067\u3059\u304b\uff1f|\u79c1\u306b\u306f\u308f\u304b\u308a\u307e\u305b\u3093\u3002'
)
: 'Level 13' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3042\u306a\u305f\u304c\u3053\u3053\u306b\u3044\u308b\u3053\u3068\u306b\u611f\u8b1d\u3057\u307e\u3059|\u306d\u3048\u3001\u4f1a\u3048\u3066\u3046\u308c\u3057\u3044\u3088\u3001\u76f8\u68d2\uff01|\u79c1\u306f\u3068\u3066\u3082\u65e5\u713c\u3051\u3057\u305f\u3088|\u3042\u3042\u3002|\u306a\u305c\u305d\u3093\u306a\u306b\u9577\u304f\u304b\u304b\u3063\u305f\u3093\u3060'
)
: 'Level 14' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u5c0f\u3055\u306a\u30d4\u30b6\u306e\u7537\u305f\u3061\u3092\u898b\u307e\u3057\u305f\u304b\uff1f|\u79c1\u306f... \u898b\u305f\u3088\u3002\u306f\u3044\u3002|\u5f7c\u3089\u306f\u3068\u3066\u3082\u7d20\u6674\u3089\u3057\u3044\u3067\u3059\u3002|\u5f7c\u3089\u306f...\u79c1\u3092\u6bba\u305d\u3046\u3068\u3057\u307e\u3057\u305f...|\u3068\u3066\u3082\u7d20\u6674\u3089\u3057\u3044\u3067\u3059\u3002'
)
: 'Level 15' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3061\u3087\u3063\u3068\u304a\u7236\u3055\u3093\uff01\u79c1\u306f\u30ca\u30de\u30b3\u3092\u63a2\u3057\u3066\u3044\u307e\u3059\uff01|\u3069\u3046\u306a\u3063\u3066\u3044\u307e\u3059\u304b\uff1f|\u826f\u304f\u306a\u3044\u3067\u3059\u3001\u4eca\u307e\u3067\u306e\u3068\u3053\u308d\u898b\u3064\u3051\u3066\u3044\u307e\u305b\u3093\u3002|\u307e\u3042\u3001\u305d\u308c\u306f\u5bb6\u306b\u5e30\u308b\u6642\u304b\u3082\u77e5\u308c\u307e\u305b\u3093\u3002|\u3060\u3051\u3069\u30ca\u30de\u30b3\u306f\u79c1\u306e\u60c5\u71b1\u3067\u3059\u3002|\u305d\u308c\u306f\u3042\u307e\u308a\u826f\u3044\u60c5\u71b1\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002'
)
: 'Level 16' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u3053\u3067\u79c1\u304c\u3069\u3046\u3084\u3063\u3066\u4e0a\u3063\u305f\u306e\u304b\u5206\u304b\u3089\u306a\u3044\u3002\u3069\u3046\u3084\u3063\u3066\u964d\u308a\u308b\u304b\u3082\u308f\u304b\u3089\u306a\u3044\u3002|\u5fc3\u914d\u3057\u306a\u3044\u3067\u3001\u3059\u3079\u3066\u306e\u30ec\u30d9\u30eb\u306e\u7d42\u308f\u308a\u306b\u98db\u3073\u53bb\u308b\u3060\u3051\u3060\u3002|\u304b\u306a\u308a\u4fbf\u5229\u3060\u306d\uff01|\u305d\u308c\u306f\u3069\u3046\u3084\u308b\u3093\u3067\u3059\u304b\u3002|\u79c1\u306b\u306f\u308f\u304b\u3089\u306a\u3044\u3002|\u307e\u305f\u3001\u30ec\u30d9\u30eb\u3068\u306f\u4f55\u3067\u3059\u304b\uff1f|\u3082\u3046\u4e00\u56de,\u201c no idea.\u201d'
)
: 'Level 17' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3042\u306a\u305f\u304c\u305d\u308c\u3089\u306e\u5927\u304d\u306a\u3068\u304c\u3063\u305f\u3082\u306e\u306b\u62bc\u3057\u3064\u3076\u3055\u308c\u306a\u304b\u3063\u305f\u3053\u3068\u3092\u3046\u308c\u3057\u304f\u601d\u3044\u307e\u3059\uff01|\u606f\u5b50\u306b\u611f\u8b1d\u3002\u3068\u3066\u3082\u52a9\u304b\u308a\u307e\u3059\u3002|\u3069\u3046\u3044\u305f\u3057\u307e\u3057\u3066\uff01'
)
: 'Level 18' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3042\u3042\u3001\u30d1\u30d1\uff01\u3042\u306a\u305f\u306f\u3053\u3053\u3067\u4f55\u3092\u3057\u3066\u3044\u308b\u306e\u3067\u3059\u304b\uff1f|\u79c1\u306e\u611a\u304b\u306a\u5b50\u4f9b\u305f\u3061\u3092\u63a2\u3057\u3066\u3044\u307e\u3059\u3001\u305f\u3044\u3066\u3044|\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u304b\uff1f| ...|\u3042\u3042\u3002'
)
: 'Level 19' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3042\u3042\u3001\u30d3\u30fc\u30c1\u3067\u306a\u3093\u3066\u30ea\u30e9\u30c3\u30af\u30b9\u3057\u305f\u4e00\u65e5\uff01|\u3042\u306a\u305f\u306f\u5916\u51fa\u7981\u6b62\u3067\u3059\u3002|\u30cf\u30a1\u30c3\uff1f|\u3042\u306a\u305f\u306f\u7686\u5916\u51fa\u7981\u6b62\u3067\u3059\u3002|\u4f55\uff1f|\u6c38\u9060\u306b\u3002'
)
: 'Level 20' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u308f\u30fc\u3044\uff01\u3042\u306a\u305f\u306f\u30db\u30c3\u30c8\u30c9\u30c3\u30b0\u3092\u5012\u3057\u307e\u3057\u305f\uff01|\u305d\u308c\u304c\u672c\u5f53\u306b\u5f7c\u306e\u540d\u524d\u3060\u3063\u305f\u306e\u3067\u3059\u304b\uff1f|\u3048\u3048\u3001\u5f7c\u306e\u4e21\u89aa\u306f\u5947\u5999\u306a\u30e6\u30fc\u30e2\u30a2\u306e\u30bb\u30f3\u30b9\u3092\u6301\u3063\u3066\u3044\u307e\u3057\u305f\u3002\u4e21\u89aa\u306f\u3068\u3066\u3082\u5947\u5999\u3067\u3059\u3002|\u898b\u3066\u304f\u3060\u3055\u3044\u3002'
)
: 'Level 21' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u3053\u306f\u3068\u3066\u3082\u5bd2\u3044\u306e\u3067\u3001\u3064\u307e\u5148\u3092\u611f\u3058\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\uff01|\u3042\u306a\u305f\u306f\u30e9\u30c7\u30c3\u30b7\u30e5\u3067\u3001\u3064\u307e\u5148\u304c\u3042\u308a\u307e\u305b\u3093\u3002|\u30aa\u30fc\u30ce\u30fc\uff01'
)
: 'Level 22' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u30a4\u30a8\u30c6\u30a3\u3092\u898b\u307e\u3057\u305f\uff01|\u3044\u3044\u3048\u3001\u898b\u307e\u305b\u3093\u3067\u3057\u305f\u3002|\u3044\u3044\u3048\u3001\u898b\u307e\u305b\u3093\u3067\u3057\u305f\u3002'
)
: 'Level 23' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u304a\u7236\u3055\u3093\u3001\u30e1\u30ea\u30fc\u30af\u30ea\u30b9\u30de\u30b9\uff01|\u3048\u3048\u3001\u3042\u308a\u304c\u3068\u3046\u3001\u3067\u3082\u30af\u30ea\u30b9\u30de\u30b9\u306e\u6642\u671f\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002|\u305d\u308c\u306a\u3089\u3001\u306a\u305c\u96ea\u304c\u964d\u3063\u3066\u3044\u308b\u306e\u3067\u3059\u304b\uff1f|\u79c1\u305f\u3061\u306f\u5c71\u306b\u3044\u308b\u304b\u3089\u3067\u3059|\u30af\u30ea\u30b9\u30de\u30b9\u306e\u5c71\uff01|\u3044\u3044\u3048\u3001\u305f\u3060\u306e\u5c71\u3067\u3059\u3002|\u5e78\u305b\u306a\u4f11\u65e5\uff01'
)
: 'Level 24' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u79c1\u306f\u3053\u3053\u306e\u30d3\u30fc\u30c1\u3067\u7d20\u6575\u306a\u6642\u9593\u3092\u904e\u3054\u3057\u3066\u3044\u307e\u3059\uff01|\u3053\u308c\u306f\u30d3\u30fc\u30c1\u3067\u306f\u306a\u304f\u3001\u3053\u308c\u306f\u5c71\u3067\u3059\u3002|\u524d\u5411\u304d\u306a\u7cbe\u795e\u7684\u614b\u5ea6\u304c\u3042\u308c\u3070\u3001\u3069\u3053\u3067\u3082\u30d3\u30fc\u30c1\u306b\u306a\u308c\u307e\u3059\uff01|\u3044\u3044\u3048...\u3044\u3044\u3048\u3001\u305d\u308c\u306f\u6b63\u3057\u3044\u3068\u306f\u601d\u3044\u307e\u305b\u3093\u3002'
)
: 'Level 25' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u305d\u306e\u7537\u305f\u3061\u306f\u4e00\u4f53\u3069\u3046\u306a\u3063\u3066\u3044\u308b\u306e\u304b\uff01|\u3068\u3066\u3082\u30af\u30fc\u30eb\u3060\uff01|\u3044\u3044\u3048\uff01\u30af\u30fc\u30eb\u3067\u306f\u3042\u308a\u307e\u305b\u3093\uff01\u5f7c\u3089\u306f\u79c1\u3092\u6bba\u305d\u3046\u3068\u3057\u305f\uff01\u5f7c\u3089\u306f\u3069\u3053\u304b\u3089\u30bd\u30fc\u30bb\u30fc\u30b8\u3092\u5165\u624b\u3057\u3066\u3044\u308b\u306e\u3067\u3057\u3087\u3046\u304b\uff1f\uff01|\u3042\u3042\u3001\u5f7c\u3089\u306f\u6b21\u5143\u9593\u30bd\u30fc\u30bb\u30fc\u30b8\u306e\u6e26\u304b\u3089\u305d\u308c\u3089\u3092\u5165\u624b\u3057\u307e\u3059\u3002|\u4f55\uff1f|\u305d\u308c\u306b\u3064\u3044\u3066\u8003\u3048\u306a\u3044\u3053\u3068\u304c\u304a\u305d\u3089\u304f\u6700\u5584\u3067\u3059\u3002'
)
: 'Level 26' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3046\u308f\u3042\u3001\u304a\u7236\u3055\u3093\uff01\u305d\u308c\u306f\u304b\u306a\u308a\u306e\u843d\u4e0b\u3067\u3057\u305f\uff01\u5927\u4e08\u592b\u3067\u3059\u304b\uff1f|\u9aa8\u304c\u306a\u3044\u306e\u306f\u672c\u5f53\u306b\u3046\u308c\u3057\u3044\u3067\u3059\u3002|\u79c1\u3082\uff01'
)
: 'Level 27' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u79c1\u306f\u3053\u306e\u96ea\u306e\u6d1e\u7a9f\u306b\u3046\u3093\u3056\u308a\u3057\u3066\u3044\u307e\u3059\u3002\u4eca\u3059\u3050\u5bb6\u306b\u5e30\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u304b\uff1f|\u79c1\u305f\u3061\u306f\u3053\u306e\u6642\u9593\u305a\u3063\u3068\u5bb6\u306b\u3044\u305f\u304b\u3082\u3057\u308c\u306a\u3044\u3002'
)
: 'Level 28' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u79c1\u306f\u51cd\u3063\u3066\u3044\u307e\u3059|\u3042\u306a\u305f\u306f\u5143\u6c17\u3067\u3059\u3002|\u79c1\u306f\u6c37\u306e\u584a\u3067\u3059|\u6c37\u306e\u584a\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002|\u79c1\u306f\u79c1\u306e\u540d\u524d\u3092\u5c0f\u3055\u306a\u3064\u3089\u3089\u306b\u5909\u3048\u3066\u3044\u307e\u3059\u3002|\u305d\u308c\u306f\u3001\u3001\u3001\u304b\u306a\u308a\u826f\u3044\u3067\u3059\u306d\u3002'
)
: 'Level 29' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3082\u3046\u4e00\u5ea6\uff01|\u307b\u3089\u3001\u524d\u306e\u3053\u3068\u306b\u672c\u5f53\u306b\u3054\u3081\u3093\u306a\u3055\u3044\u3002\u79c1\u306f\u305d\u306e\u3088\u3046\u306b\u91d1\u5207\u308a\u58f0\u3092\u4e0a\u3052\u308b\u3064\u3082\u308a\u306f\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3001\u79c1\u304c\u672c\u5f53\u306b\u7c21\u5358\u306b\u3073\u3063\u304f\u308a\u3059\u308b\u3060\u3051\u3067\u3059\u3002|\u306d\u3048\u3001\u5927\u4e08\u592b\u3067\u3059\u3001\u5fc3\u914d\u3057\u306a\u3044\u3067\u304f\u3060\u3055\u3044\u3002|*\u91d1\u5207\u58f0*|\u3042\u3042\u3063\u3002'
)
: 'Level 30' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3042\u306a\u305f\u306f\u78ba\u304b\u306b\u30dc\u30b9\u306e\u30b7\u30e3\u30ed\u30f3\u3092\u898b\u305b\u305f\uff01|\u79c1\u306f\u30dc\u30b9\u306e\u3088\u3046\u306b\u611f\u3058\u307e\u305b\u3093\u3002\u79c1\u306f\u75b2\u308c\u305f\u307f\u305f\u3044\u3002\u3059\u3054\u304f\u75b2\u308c\u305f\u3002\u79c1\u306f\u3042\u306a\u305f\u306e\u3059\u3079\u3066\u306e\u5b50\u4f9b\u3092\u898b\u3064\u3051\u3066\u5bb6\u306b\u5e30\u308a\u305f\u3044\u3060\u3051\u3067\u3059\u3002\u3069\u3046\u3057\u3066\u3053\u3093\u306a\u306b\u5b50\u4f9b\u304c\u591a\u3044\u306e\u3067\u3059\u304b\uff1f|\u3046\u30fc\u3093... \u308f\u304b\u3089\u306a\u3044...\u305f\u3076\u3093...\u80de\u5b50\uff1f|\u3044\u3044\u3048\u3001\u305d\u308c\u306f\u6b63\u3057\u304f\u306a\u3044\u3067\u3057\u3087\u3046\u3002'
)
: 'Level 31' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u306e\u5834\u6240\u306f\u4e0d\u6c17\u5473\u3067\u3059\uff01\u30b4\u30fc\u30b9\u30c8\u306e\u3088\u3046\u306a\u5302\u3044\u304c\u3059\u308b\uff01|\u30ab\u30d3\u306e\u5302\u3044\u304c\u3059\u308b\u3002|\u304b\u3073\u81ed\u3044\u30b4\u30fc\u30b9\u30c8\uff01'
)
: 'Level 32' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u7206\u767a\u3057\u305f\u3088\u3046\u306a\u5974\u3089\uff01|\u79c1\u306f\u6c17\u3065\u3044\u305f\u3002|\u533b\u8005\u306b\u96fb\u8a71\u3059\u3079\u304d\u3060\u3068\u601d\u3046\u304b\uff1f|\u3044\u3084\u3001\u5f7c\u3089\u306f\u5927\u4e08\u592b\u3060\u3002'
)
: 'Level 33' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u79d8\u5bc6\u306e\u4e0d\u6c17\u5473\u306a\u30c8\u30f3\u30cd\u30eb\u3078\u3088\u3046\u3053\u305d\uff01|\u3042\u308a\u304c\u3068\u3046\u3001\u5acc\u3044\u3060\u3002'
)
: 'Level 34' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u306e\u5834\u6240\u306f\u975e\u5e38\u306b\u5371\u967a\u3067\u3059\uff01\u306a\u305c\u3053\u3053\u306b\u3044\u308b\u306e\u3067\u3059\u304b\uff1f|\u306a\u305c\u3053\u3053\u306b\u3044\u308b\u306e\u3067\u3059\u304b\uff1f|\u79c1\u306f\u3053\u3053\u3067\u3042\u306a\u305f\u3092\u63a2\u3057\u3066\u3044\u307e\u3059\uff01|\u79c1\u306f\u3053\u3053\u3067\u3042\u306a\u305f\u3092\u63a2\u3057\u3066\u3044\u307e\u3059\uff01|\u3084\u3081\u3066\u304f\u3060\u3055\u3044\uff01'
)
: 'Level 35' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u308c\u304c\u30c9\u30a5\u30eb\u30ca\u30c3\u30af\u537f\u306e\u5bb6\u3067\u3059\uff01\u5f7c\u306f\u9b45\u529b\u7684\u306a\u7d33\u58eb\u3067\u3059\uff01|\u3042\u3042\u3001\u305d\u308c\u306f\u6717\u5831\u3067\u3059\uff01|\u5f7c\u306f\u4fb5\u5165\u8005\u3092\u62f7\u554f\u3059\u308b\u306e\u304c\u597d\u304d\u306a\u72c2\u4eba\u3067\u3082\u3042\u308a\u307e\u3059\uff01|\u3042\u3042\u3001\u305d\u3046\u3067\u3059\u3002'
)
: 'Level 36' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u306e\u5834\u6240\u306f\u3068\u3066\u3082\u4e0d\u6c17\u5473\u3067\u3059\u3002|\u98a8\u8239\u306f\u3044\u3044\u3067\u3059\u3002|\u672c\u5f53\u3067\u3059\u306d\u3002\u4e0d\u6c17\u5473\u306a\u8a95\u751f\u65e5\u30d1\u30fc\u30c6\u30a3\u30fc\u306e\u3088\u3046\u306a\u3082\u306e\u3067\u3059\u3002|\u305d\u306e\u901a\u308a\u3002'
)
: 'Level 37' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u79c1\u306f\u4e0d\u6c17\u5473\u306a\u8981\u585e\u306e\u5973\u738b\u3067\u3059\uff01|\u3042\u306a\u305f\u306f\u5f7c\u5973\u306e\u5c31\u5bdd\u6642\u523b\u3092\u904e\u304e\u305f\u30e9\u30c7\u30a3\u30c3\u30b7\u30e5\u3067\u3059\u3002|\u4e0d\u6c17\u5473\u306a\u8981\u585e\u306e\u5973\u738b\uff01'
)
: 'Level 38' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u3053\u306e\u5c4b\u5185\u30d7\u30fc\u30eb\u306f\u3069\u308c\u304f\u3089\u3044\u6dbc\u3057\u3044\u3067\u3059\u304b\uff1f|\u3053\u308c\u306f\u4e0b\u6c34\u3060\u3068\u78ba\u4fe1\u3057\u3066\u3044\u307e\u3059\u3002|\u3042\u3042...\u98f2\u3093\u3067\u3082\u5b89\u5168\u3060\u3068\u601d\u3044\u307e\u3059\u304b\uff1f|\u4eca\u8a00\u3046\u3068\u3053\u308d\u3060\u3063\u305f...\u3044\u3044\u3048\u3002|\u3042\u3042\u3002'
)
: 'Level 39' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u304a\u7236\u3055\u3093\u3001\u3059\u3054\u3044\uff01\u3042\u306a\u305f\u304c\u3053\u306e\u3068\u304c\u3063\u305f\u30a8\u30ec\u30d9\u30fc\u30bf\u30fc\u3068\u304b\u3044\u3046\u3082\u306e\u3092\u901a\u308a\u904e\u304e\u308b\u3068\u306f\u601d\u3044\u307e\u305b\u3093\u3067\u3057\u305f\uff01|\u3042\u306a\u305f\u304c\u305f\u3060\u5bb6\u306b\u5c45\u305f\u3060\u3051\u306a\u3089\u3001\u79c1\u306f\u305d\u3046\u3059\u308b\u5fc5\u8981\u306f\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002|\u3067\u3082\u305d\u3046\u3057\u3066\u3044\u305f\u3089\u3001\u3042\u306a\u305f\u304c\u3069\u308c\u3060\u3051\u3059\u3054\u3044\u304b\u308f\u304b\u3089\u306a\u304b\u3063\u305f\uff01'
)
: 'Level 40' == d.getCurrentSceneName() &&
c.setValue(
'Baby Logic',
'_DialogText',
'\u3084\u3063\u305f\u306d\u3001\u304a\u7236\u3055\u3093\uff01\u3042\u306a\u305f\u306f\u79c1\u305f\u3061\u5168\u54e1\u3092\u6551\u3063\u305f\uff01|\u79c1\u306f\u5b8c\u5168\u306b\u75b2\u308c\u305f\u3002\u5bb6\u306b\u5e30\u308b\u6642\u9593|\u304a\u7236\u3055\u3093\u5927\u597d\u304d\u3060\u3088\u3002|\u79c1\u3082\u5927\u597d\u304d\u3060\u3088\u3001\u76f8\u68d2\u3002\u3042\u306a\u305f\u306f\u5916\u51fa\u7981\u6b62\u3067\u3059\u3002'
));
}
}
},
null
);
d.runLater(
200,
function (a) {
if (
'CN' == k.engine.getGameAttribute('Language') &&
!k.engine.getGameAttribute('Possum Mode')
) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(159)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
('Level 1' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u55e8\uff0c\u7238\u7238\uff01\u4f60\u627e\u5230\u4e86\u6211\uff01|\u4f60\u771f\u7684\u6ca1\u6709\u8d70\u5f88\u8fdc\u2026\u2026|\u5728\u4f60\u6240\u6709\u7684\u5b69\u5b50\u4e2d\uff0c\u6211\u7edd\u5bf9\u662f\u6700\u61d2\u7684\u3002|\u5f88\u9ad8\u5174\u77e5\u9053\u3002'
)
: 'Level 2' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u5662\uff0c\u7238\u7238\uff0c\u6211\u4e0d\u77e5\u9053\u4f60\u53ef\u4ee5\u53cc\u8df3\uff01|\u597d\u5427\uff0c\u5982\u679c\u4f60\u4e56\u4e56\u5446\u5728\u5bb6\u91cc\uff0c\u6211\u5c31\u4e0d\u5fc5\u53cc\u8df3\u4e86\u3002|\u53cc\u8df3\u592a\u9177\u4e86\uff01|*#Sigh*'
)
: 'Level 3' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u563f\uff01|\u4ec0\u4e48\uff1f\uff01|\u51fa\u53bb\uff01|\u4e3a\u4ec0\u4e48\uff1f\uff01|\u8fd9\u662f\u4e00\u4e2a\u6ca1\u6709\u7238\u7238\u7684\u5730\u5e26\uff01\u8ff7\u8def\u4e86\uff01|\u5c31\u662f\u8fd9\u6837\uff0c\u4f60\u5df2\u7ecf\u7740\u9646\u4e86\u3002|\u62b1\u6b49\u3002'
)
: 'Level 4' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u4f60\u8fd8\u5728\u8fd9\u91cc\u505a\u4ec0\u4e48\uff1f|\u4eab\u53d7\u6211\u751f\u547d\u4e2d\u6700\u7f8e\u597d\u7684\u65f6\u5149\uff01|\u5594\uff0c\u6211\u60f3\u90a3\u4e0d\u9519\uff0c\u4f46\u662f\u73b0\u5728\u8be5\u56de\u5bb6\u4e86\u3002|\u597d\u7684\uff0c\u8fd9\u5f88\u9177\u2026\u2026\u4eab\u53d7\u751f\u547d\u4e2d\u6700\u7f8e\u597d\u7684\u65f6\u5149\u8ba9\u4eba\u7cbe\u75b2\u529b\u5c3d\u3002'
)
: 'Level 5' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u55e8\uff0c\u7238\u7238\uff01\u4f60\u8981\u53eb\u6211\u56de\u5bb6\u5417\uff1f|\u662f\u7684\uff0c\u6211\u4e00\u76f4\u5f88\u62c5\u5fc3\uff01|\u54e6\uff0c\u6211\u4e5f\u662f\u3002|\u4f60\u4ec0\u4e48\u610f\u601d\uff1f|\u6211\u6545\u610f\u4e0d\u65ad\u628a\u81ea\u5df1\u7f6e\u4e8e\u53ef\u6015\u7684\u5371\u9669\u4e4b\u4e2d\u3002\u6211\u5047\u88c5\u81ea\u5df1\u662f\u4e3a\u4e86\u523a\u6fc0\u800c\u8fd9\u6837\uff0c\u4f46\u5b9e\u9645\u4e0a\u6211\u53ea\u662f\u60f3\u8981\u5173\u6ce8\u3002|\u5f88\u597d\u3002'
)
: 'Level 6' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u55e8\uff0c\u7238\u7238\uff01\u8fd9\u4e2a\u5730\u65b9\u4e0d\u662f\u5f88\u597d\u5417\uff1f|\u6211\u4e0d\u77e5\u9053\u2026\u2026\u5230\u5904\u90fd\u662f\u5c16\u5c16\u7684\u5371\u9669\u7269\u54c1\u3002|\u6211\u77e5\u9053\uff01\u592a\u9177\u4e86\uff01'
)
: 'Level 7' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u8fd9\u4e2a\u6d1e\u7a74\u662f\u6211\u7684\u65b0\u5bb6\uff0c\u6211\u73b0\u5728\u4f4f\u5728\u8fd9\u91cc\u3002|\u4e0d\uff0c\u4f60\u4e0d\u662f\u3002|\u662f\uff0c\u6211\u662f\u3002|\u4e0d\uff0c\u4f60\u4e0d\u662f\u3002|\u597d\u5427\uff0c\u62b1\u6b49\u3002'
)
: 'Level 8' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u54e6\u2026\u2026\u55ef\u2026\u2026\u4f60\u4e0d\u662f\u6211\u7684\u5b69\u5b50\u2026\u2026|*SCREECH*|\u54e6\u5929\u54ea\u3002'
)
: 'Level 9' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u4e3a\u4ec0\u4e48\u4f60\u7684\u5b69\u5b50\u8981\u8eb2\u5728\u5982\u6b64\u5371\u9669\u7684\u5730\u65b9\uff1f\u4f60\u4e3a\u4ec0\u4e48\u4e0d\u80fd\u8eb2\u5728\u8d2d\u7269\u4e2d\u5fc3\u4e4b\u7c7b\u7684\u5730\u65b9\uff1f|\u7b49\u7b49\u2026\u2026\u8fd9\u4e0d\u662f\u8d2d\u7269\u4e2d\u5fc3\uff1f\u8fd9\u5c31\u89e3\u91ca\u4e86\u4e3a\u4ec0\u4e48\u4ed6\u4eec\u4e0d\u8ba9\u6211\u9000\u8fd8\u8fd9\u6761\u77ed\u88e4\u3002|\u77ed\u88e4\uff1f\uff01\u4f60\u751a\u81f3\u6ca1\u6709\u817f\uff01|\u90a3\u6b63\u662f\u6211\u8bd5\u56fe\u9000\u8fd8\u5b83\u4eec\u7684\u539f\u56e0\uff01'
)
: 'Level 10' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u54c7\uff01\u4f60\u6253\u8d25\u4e86\u6c49\u5821\u5305\u90a3\u4e2a\u5947\u602a\u7684\u5bb6\u4f19\uff01|\u770b\uff0c\u6211\u5bf9\u6b64\u5e76\u4e0d\u5b8c\u5168\u611f\u89c9\u826f\u597d\u3002\u4ed6\u770b\u4e0a\u53bb\u50cf\u4e2a\u5f88\u4e0d\u9519\u7684\u5bb6\u4f19\u3002|\u4ed6\u8bd5\u56fe\u6740\u4f60\uff01|\u6211\u662f\u8bf4\uff0c\u662f\u7684\uff0c\u6211\u60f3\u662f\u7684\uff0c\u4f46\u662f\u2026\u2026\u55ef\u2026\u2026\u770b\uff0c\u6211\u5f88\u9ad8\u5174\u4f60\u6ca1\u4e8b\u3002|\u5929\u554a\uff0c\u6211\u4e5f\u662f\u3002\u8c22\u8c22\u7238\u7238\u3002'
)
: 'Level 11' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u6211\u5728\u6d77\u6ee9\u4e0a\u5ea6\u8fc7\u4e86\u6109\u5feb\u7684\u4e00\u5929\uff01|\u8fd9\u662f\u6211\u89c1\u8fc7\u7684\u6700\u5371\u9669\u7684\u6d77\u6ee9\u3002|\u8fd9\u662f\u6211\u89c1\u8fc7\u7684\u6700\u523a\u6fc0\u7684\u6d77\u6ee9\uff01'
)
: 'Level 12' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u8fd9\u4e2a\u89c2\u70b9\u5f88\u597d\uff01|\u5b83\u5f88\u4e0d\u9519\uff0c\u4f46\u5728\u6211\u4eec\u5bb6\u4e2d\u4e5f\u6709\u548c\u5b83\u4e00\u6837\u7684\u3002|\u5728\u89c6\u9891\u6e38\u620f\u4ea7\u4e1a\u4e2d\uff0c\u4ed6\u4eec\u79f0\u5176\u4e3a\u201c\u8d44\u4ea7\u91cd\u7528\u201d\u3002\u8fd9\u662f\u8282\u7701\u5185\u5b58\u5e76\u51cf\u5c11\u5f00\u53d1\u65f6\u95f4\u7684\u660e\u667a\u65b9\u6cd5\u3002|\u4ec0\u4e48\u662f\u201c\u89c6\u9891\u6e38\u620f\u4ea7\u4e1a\u201d\uff1f|\u6211\u4e0d\u77e5\u9053\u3002'
)
: 'Level 13' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u8c22\u5929\u8c22\u5730\u4f60\u5728\u8fd9\u91cc|\u563f\uff0c\u6211\u4e5f\u5f88\u9ad8\u5174\u770b\u5230\u4f60\uff0c\u5b69\u5b50\uff01|\u6211\u6652\u6210\u8fd9\u6837\u4e86|\u54e6\u3002|\u4e3a\u4ec0\u4e48\u4f60\u7528\u4e86\u90a3\u4e48\u4e45'
)
: 'Level 14' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u4f60\u770b\u5230\u6bd4\u8428\u997c\u90a3\u4e9b\u5c0f\u5bb6\u4f19\u4e86\u5417\uff1f|\u6211\u2026\u2026\u662f\u7684\u662f\u7684\u3002|\u4ed6\u4eec\u771f\u68d2\u3002|\u4ed6\u4eec\u2026\u2026\u60f3\u6740\u6211\u2026\u2026|\u597d\u6781\u4e86\u3002'
)
: 'Level 15' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u563f\uff0c\u7238\u7238\uff01\u6211\u5728\u627e\u6d77\u53c2\uff01|\u600e\u4e48\u6837\uff1f|\u4e0d\u592a\u597d\uff0c\u5230\u76ee\u524d\u4e3a\u6b62\u6211\u8fd8\u6ca1\u6709\u627e\u5230\u3002|\u5662\uff0c\u90a3\u4e5f\u8bb8\u8be5\u56de\u5bb6\u4e86\u3002|\u4f46\u662f\u6d77\u53c2\u662f\u6211\u7684\u7231\u597d\uff01|\u56de\u5bb6\u662f\u6211\u7684\u7231\u597d\u3002|\u90a3\u4e0d\u662f\u4e00\u4e2a\u5f88\u597d\u7684\u7231\u597d\u3002'
)
: 'Level 16' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u6211\u4e0d\u77e5\u9053\u6211\u600e\u4e48\u4e0a\u5230\u8fd9\u91cc\u7684\u3002\u6211\u4e5f\u4e0d\u786e\u5b9a\u6211\u4eec\u5982\u4f55\u4e0b\u53bb\u3002|\u4e0d\u7528\u62c5\u5fc3\uff0c\u6211\u4eec\u53ea\u662f\u5728\u6bcf\u4e2a\u5173\u5361\u7684\u7ed3\u5c3e\u98de\u8d70\u3002|\u8fd9\u5f88\u65b9\u4fbf\uff01\u90a3\u4e2a\u600e\u4e48\u8fd0\u884c\uff1f|\u6211\u4e0d\u77e5\u9053\u3002|\u5173\u5361\u662f\u4ec0\u4e48\uff1f|\u518d\u6b21,\u201c no idea.\u201d'
)
: 'Level 17' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u6211\u5f88\u9ad8\u5174\u4f60\u6ca1\u6709\u88ab\u90a3\u4e9b\u5c16\u5c16\u7684\u5927\u4e1c\u897f\u538b\u788e\uff01|\u8c22\u8c22\u513f\u5b50\uff0c\u8fd9\u5bf9\u6211\u6765\u8bf4\u771f\u7684\u5f88\u91cd\u8981\u3002|\u6ca1\u95ee\u9898\uff01'
)
: 'Level 18' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u54e6\uff0c\u7238\u7238\uff01\u4f60\u5728\u8fd9\u91cc\u505a\u4ec0\u4e48\uff1f|\u4e3b\u8981\u662f\u5728\u5bfb\u627e\u6211\u7684\u8822\u5b69\u5b50\u3002|\u627e\u5230\u4ed6\u4eec\u4e86\u5417\uff1f|\u2026\u2026|\u54e6\u3002'
)
: 'Level 19' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u554a\uff0c\u591a\u4e48\u60a0\u95f2\u7684\u6d77\u6ee9\u65f6\u5149\uff01|\u4f60\u7740\u9646\u4e86\u3002|\u5475\u5475\uff1f|\u4f60\u4eec\u90fd\u7740\u9646\u4e86\u3002|\u4ec0\u4e48\uff1f|\u6c38\u8fdc\u3002'
)
: 'Level 20' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u54c7\uff01\u4f60\u51fb\u8d25\u4e86\u70ed\u72d7\uff01|\u90a3\u771f\u7684\u662f\u4ed6\u7684\u540d\u5b57\u5417\uff1f|\u662f\u7684\uff0c\u4ed6\u7684\u7236\u6bcd\u6709\u4e00\u79cd\u5947\u602a\u7684\u5e7d\u9ed8\u611f\u3002\u7236\u6bcd\u592a\u5947\u602a\u4e86\u3002|\u770b\u3002'
)
: 'Level 21' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u8fd9\u91cc\u592a\u51b7\u4e86\uff0c\u6211\u7684\u811a\u8dbe\u6ca1\u77e5\u89c9\u4e86\uff01|\u4f60\u662f\u841d\u535c\uff0c\u4f60\u6ca1\u6709\u811a\u8dbe\u3002|\u54e6\uff0c\u4e0d\uff01'
)
: 'Level 22' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u6211\u770b\u5230\u4e86\u96ea\u4eba\uff01|\u4e0d\uff0c\u4f60\u6ca1\u6709\u3002|\u6211\u6ca1\u6709\u3002'
)
: 'Level 23' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u7238\u7238\uff0c\u5723\u8bde\u8282\u5feb\u4e50\uff01|\u5443\uff0c\u8c22\u8c22\uff0c\u4f46\u73b0\u5728\u4e0d\u662f\u5723\u8bde\u65f6\u95f4\u3002|\u90a3\u4e3a\u4ec0\u4e48\u4e0b\u96ea\u4e86\uff1f|\u56e0\u4e3a\u6211\u4eec\u5728\u5c71\u4e0a\u3002|\u4e00\u5ea7\u5723\u8bde\u5c71\uff01|\u4e0d\uff0c\u53ea\u662f\u4e00\u5ea7\u666e\u901a\u7684\u5c71\u3002|\u8282\u65e5\u5feb\u4e50\uff01'
)
: 'Level 24' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u6211\u5728\u6d77\u6ee9\u4e0a\u5ea6\u8fc7\u4e86\u6109\u5feb\u7684\u65f6\u5149\uff01|\u8fd9\u4e0d\u662f\u6d77\u6ee9\uff0c\u8fd9\u662f\u4e00\u5ea7\u5c71\u3002|\u5982\u679c\u4f60\u6709\u79ef\u6781\u7684\u7cbe\u795e\u6001\u5ea6\uff0c\u4efb\u4f55\u5730\u65b9\u90fd\u53ef\u4ee5\u6210\u4e3a\u6d77\u6ee9\uff01|\u4e0d\u2026\u2026\u4e0d\uff0c\u6211\u8ba4\u4e3a\u90a3\u662f\u4e0d\u5bf9\u7684\u3002'
)
: 'Level 25' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u8fd9\u4e9b\u5bb6\u4f19\u5230\u5e95\u600e\u4e48\u56de\u4e8b\uff1f\uff01|\u592a\u9177\u4e86\u5bf9\u5427\uff01|\u4e0d\uff01\u4e0d\u9177\uff01\u4ed6\u4eec\u8bd5\u56fe\u6740\u6211\uff01\u4ed6\u4eec\u4ece\u54ea\u91cc\u5f97\u5230\u8fd9\u4e9b\u9999\u80a0\uff1f\uff01|\u54e6\uff0c\u4ed6\u4eec\u662f\u4ece\u591a\u7ef4\u9999\u80a0\u6da1\u6d41\u90a3\u91cc\u5f97\u5230\u7684\u3002|\u4ec0\u4e48\uff1f|\u6700\u597d\u4e0d\u8981\u53bb\u60f3\u5b83\u3002'
)
: 'Level 26' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u54c7\uff0c\u7238\u7238\uff01\u6454\u4e86\u4e00\u8de4\uff01\u4f60\u8fd8\u597d\u5417\uff1f|\u6211\u771f\u7684\u5f88\u9ad8\u5174\u6211\u6ca1\u6709\u9aa8\u5934\u3002|\u6211\u4e5f\u662f\uff01'
)
: 'Level 27' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u6211\u5df2\u7ecf\u538c\u5026\u4e86\u8fd9\u4e2a\u96ea\u6d1e\uff0c\u73b0\u5728\u6211\u4eec\u53ef\u4ee5\u56de\u5bb6\u4e86\u5417\uff1f|\u6211\u4eec\u672c\u6765\u53ef\u4ee5\u4e00\u76f4\u5446\u5728\u5bb6\u91cc\u3002'
)
: 'Level 28' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u6211\u51bb\u4f4f\u4e86|\u4f60\u8fd8\u597d\u3002|\u6211\u662f\u4e00\u5757\u51b0|\u4e0d\uff0c\u4f60\u4e0d\u662f\u3002|\u6211\u8981\u628a\u6211\u7684\u827a\u540d\u6539\u4e3a\u5c0f\u51b0\u67f1|\u90a3\u2026\u2026\u4e8b\u5b9e\u4e0a\u76f8\u5f53\u597d\u3002'
)
: 'Level 29' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u53c8\u662f\u4f60\uff01|\u770b\uff0c\u5173\u4e8e\u4e4b\u524d\u6211\u771f\u7684\u5f88\u62b1\u6b49\u3002\u6211\u4e0d\u662f\u6545\u610f\u90a3\u6837\u5c16\u53eb\uff0c\u53ea\u662f\u6211\u771f\u7684\u5f88\u60ca\u8bb6\u3002|\u563f\uff0c\u6ca1\u5173\u7cfb\uff0c\u4f19\u8ba1\uff0c\u4e0d\u7528\u62c5\u5fc3\u3002|*SCREECH*|\u5662\uff0c\u6211\u7684\u5929\u54ea\u3002'
)
: 'Level 30' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u4f60\u786e\u5b9a\u5411\u6c99\u9f99\u4ecb\u7ecd\u4e86\u8c01\u662f\u8001\u677f\uff01|\u6211\u611f\u89c9\u4e0d\u50cf\u8001\u677f\u3002\u6211\u7d2f\u4e86\u3002\u5f88\u7d2f\u3002\u6211\u53ea\u60f3\u627e\u5230\u6240\u6709\u7684\u5b69\u5b50\u7136\u540e\u56de\u5bb6\u3002\u4e3a\u4ec0\u4e48\u6211\u6709\u8fd9\u4e48\u591a\u5b69\u5b50\uff1f|\u55ef\u2026\u2026\u6211\u4e0d\u786e\u5b9a\u2026\u2026\u4e5f\u8bb8\u2026\u2026\u5b62\u5b50\uff1f|\u4e0d\uff0c\u542c\u8d77\u6765\u4e0d\u5bf9\u3002'
)
: 'Level 31' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u8fd9\u4e2a\u5730\u65b9\u5f88\u6050\u6016\uff01\u8fd9\u91cc\u95fb\u8d77\u6765\u5c31\u50cf\u5e7d\u7075\uff01|\u95fb\u8d77\u6765\u50cf\u9709\u83cc\u3002|\u9709\u83cc\u5e7d\u7075\uff01'
)
: 'Level 32' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u90a3\u4e9b\u5bb6\u4f19\u5c31\u50cf\u7206\u70b8\u4e86\uff01|\u6211\u6ce8\u610f\u5230\u4e86\u3002|\u4f60\u8ba4\u4e3a\u6211\u4eec\u5e94\u8be5\u627e\u533b\u751f\u5417\uff1f|\u4e0d\uff0c\u4ed6\u4eec\u4f1a\u6ca1\u4e8b\u7684\u3002'
)
: 'Level 33' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u6b22\u8fce\u6765\u5230\u6211\u7684\u79d8\u5bc6\u6050\u6016\u96a7\u9053\uff01|\u8c22\u8c22\uff0c\u6211\u8ba8\u538c\u5b83\u3002'
)
: 'Level 34' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u8fd9\u4e2a\u5730\u65b9\u6781\u4e3a\u5371\u9669\uff01\u4e3a\u4ec0\u4e48\u4f60\u8fd8\u5728\u8fd9\u91cc\uff1f|\u4e3a\u4ec0\u4e48\u4f60\u8fd8\u5728\u8fd9\u91cc\uff1f|\u6211\u5728\u8fd9\u91cc\u5bfb\u627e\u4f60\uff01|\u6211\u5728\u8fd9\u91cc\u5bfb\u627e\u4f60\uff01|\u505c\u4e0b\u6765\uff01'
)
: 'Level 35' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u8fd9\u662f\u675c\u7eb3\u514b\u52cb\u7235\u7684\u623f\u5b50\uff01\u4ed6\u662f\u4e00\u4e2a\u6709\u9b45\u529b\u7684\u7ec5\u58eb\uff01|\u54e6\uff0c\u8fd9\u662f\u4e2a\u597d\u6d88\u606f\uff01|\u4ed6\u4e5f\u662f\u4e00\u4e2a\u559c\u6b22\u6298\u78e8\u5165\u4fb5\u8005\u7684\u75af\u5b50\uff01|\u54e6\uff0c\u5bf9\u3002'
)
: 'Level 36' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u8fd9\u4e2a\u5730\u65b9\u8d85\u7ea7\u6050\u6016\u3002|\u6c14\u7403\u771f\u597d\u3002|\u662f\u7684\u3002\u5c31\u50cf\u4e00\u4e2a\u6050\u6016\u7684\u751f\u65e5\u805a\u4f1a\u3002|\u786e\u5b9e\u3002'
)
: 'Level 37' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u6211\u662f\u6050\u6016\u57ce\u5821\u5973\u738b\uff01|\u4f60\u662f\u4e00\u4e2a\u7761\u8fc7\u5934\u7684\u841d\u535c\u3002|\u6050\u6016\u57ce\u5821\u5973\u738b\u2026\u2026\uff01'
)
: 'Level 38' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u8fd9\u4e2a\u5ba4\u5185\u6e38\u6cf3\u6c60\u6709\u591a\u9177\uff1f|\u6211\u975e\u5e38\u786e\u5b9a\u8fd9\u662f\u6c61\u6c34\u3002|\u54e6\u2026\u2026\u4f60\u89c9\u5f97\u996e\u7528\u5b89\u5168\u5417\uff1f|\u6211\u8981\u8bf4\u2026\u2026\u4e0d\u3002|\u55ef\u54e6\u3002'
)
: 'Level 39' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\u54c7\uff0c\u7238\u7238\uff0c\u4f60\u771f\u4e86\u4e0d\u8d77\uff01\u6211\u6ca1\u60f3\u5230\u4f60\u80fd\u901a\u8fc7\u8fd9\u4e2a\u5c16\u5c16\u7684\u5347\u964d\u673a\uff01|\u5982\u679c\u4f60\u5446\u5728\u5bb6\u91cc\uff0c\u6211\u5c31\u4e0d\u7528\u8fd9\u4e48\u505a\u4e86\u3002|\u4e0d\u8fc7\u90a3\u6837\u6211\u5c31\u4e0d\u77e5\u9053\u4f60\u6709\u591a\u68d2\u4e86!'
)
: 'Level 40' == d.getCurrentSceneName() &&
c.setValue(
'Baby Logic',
'_DialogText',
'\u4f60\u505a\u5230\u4e86\uff0c\u7238\u7238\uff01\u4f60\u6551\u4e86\u6211\u4eec\u6240\u6709\u4eba\uff01|\u6211\u7cbe\u75b2\u529b\u5c3d\u4e86\u3002\u8be5\u56de\u5bb6\u4e86\u3002|\u6211\u7231\u4f60\uff0c\u7238\u7238\u3002|\u6211\u4e5f\u7231\u4f60\uff0c\u5b69\u5b50\u3002\u4f60\u7740\u9646\u4e86\u3002'
));
}
}
},
null
);
d.runLater(
200,
function (a) {
if (
'KR' == k.engine.getGameAttribute('Language') &&
!k.engine.getGameAttribute('Possum Mode')
) {
a = 0;
for (var b = d.getActorsOfType(d.getActorType(159)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
('Level 1' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc544\ube60 \uc548\ub155! \uc808 \ucc3e\uc73c\uc168\ub124\uc694!|\ubcc4\ub85c \uba40\ub9ac \uac00\uc9c0 \uc54a\uc558\uad6c\ub098...|\uc6b0\ub9ac \ud615\uc81c\ub4e4 \uc911\uc5d0\uc11c \uc804 \uac00\uc7a5 \uac8c\uc73c\ub974\uc796\uc544\uc694.|\ub2e4\ud589\uc774\uad6c\ub098.'
)
: 'Level 2' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc640, \uc544\ube60\uac00 \ub354\ube14 \uc810\ud504\ub97c \ud558\uc2e4 \uc904 \ubab0\ub790\uc5b4\uc694!|\uc74c, \ub108\ud76c\uac00 \uc9d1\uc5d0 \uc798 \uc788\uc5c8\ub2e4\uba74 \ub0b4\uac00 \uc810\ud504\ud560 \ud544\uc694\ub3c4 \uc5c6\uc5c8\uc744 \uac70\ub780\ub2e4.|\ub354\ube14 \uc810\ud504 \uba4b\uc838\uc694!|*#\ud55c\uc228*'
)
: 'Level 3' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc774\ubd10\uc694!|\ubb50?!|\ub2f9\uc7a5 \ub098\uac00\uc694!|\ubb50\ub77c\uace0?!|\uc5ec\uae34 \ubd80\ubaa8 \uae08\uc9c0\uad6c\uc5ed\uc774\uc5d0\uc694! \ub098\uac00\uc694!|\ub410\ub2e4, \ub10c \uc678\ucd9c \uae08\uc9c0\uc57c.|\uc8c4\uc1a1\ud574\uc694.'
)
: 'Level 4' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc5ec\uae30\uc5d0\uc11c \ubb50 \ud558\uace0 \uc788\ub2c8?|\uc81c \uc778\uc0dd\uc744 \uc990\uae30\uace0 \uc788\uc5c8\uc5b4\uc694!|\uadf8\ub798, \uc88b\uc740 \uac70 \uac19\uae34 \ud55c\ub370 \uc774\uc81c \uc9d1\uc5d0 \uac08 \uc2dc\uac04\uc774\ub2e4.|\ub124, \uc88b\uc544\uc694... \uc778\uc0dd\uc744 \uc990\uae30\ub294 \uac83\ub3c4 \uc880 \ud798\ub4dc\ub124\uc694.'
)
: 'Level 5' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc544\ube60 \uc548\ub155! \uc9d1\uc5d0 \uc624\ub77c\uace0 \ud558\uc2e4 \uac70\uc608\uc694?|\uadf8\ub798. \ub108\ubb34 \uac71\uc815\ud588\ub2e8\ub2e4!|\uc5b4, \uc800\ub450\uc694.|\ubb34\uc2a8 \ub9d0\uc774\ub2c8?|\uc804 \uc77c\ubd80\ub7ec \uacc4\uc18d \uc704\ud5d8\uc5d0 \ucc98\ud558\ub824\uace0 \ud588\uc5b4\uc694. \uc2a4\ub9b4\uc744 \uc990\uae30\ub294\ucc99 \ud588\uc9c0\ub9cc, \uc0ac\uc2e4\uc740 \uadf8\ub0e5 \uad00\uc2ec\ubc1b\uace0 \uc2f6\uc5c8\uc5b4\uc694.|\uadf8\ub807\uad6c\ub098.'
)
: 'Level 6' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc544\ube60 \uc548\ub155! \uc5ec\uae30 \uba4b\uc788\uc9c0 \uc54a\uc544\uc694?|\ubaa8\ub974\uaca0\uad6c\ub098... \ubfb0\uc871\ud558\uace0 \uc704\ud5d8\ud55c \ubb3c\uac74\uc774 \ub108\ubb34 \ub9ce\uc544.|\uc54c\uc544\uc694! \uc815\ub9d0 \uba4b\uc788\uc5b4\uc694!'
)
: 'Level 7' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc774 \ub3d9\uad74\uc774 \uc81c \uc0c8\uc9d1\uc774\uc5d0\uc694. \uc774\uc81c \uc5ec\uae30\uc5d0\uc11c \uc0b4 \uac70\uc608\uc694.|\uc548\ub3fc.|\uc5ec\uae30\uc11c \uc0b4 \uac70\uc608\uc694.|\uc548\ub41c\ub2e4\ub2c8\uae4c.|\uc54c\uc558\uc5b4\uc694. \uc8c4\uc1a1\ud574\uc694.'
)
: 'Level 8' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc5b4... \uc74c... \uc81c \uc544\uc774\uac00 \uc544\ub2c8\uc2dc\ub124\uc694...|*\uaf64\uc561*|\uc5b4 \uc774\ub7f0.'
)
: 'Level 9' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc598\ub4e4\uc544, \uc65c \uc774\ub807\uac8c \uc704\ud5d8\ud55c \uacf3\uc5d0 \uc228\ub294 \uac70\ub2c8? \uc1fc\ud551\ubab0 \uac19\uc740 \ub370\uc5d0 \uc228\uc744 \uc218\ub294 \uc5c6\ub2c8?|\uc7a0\uae50\ub9cc\uc694... \uc5ec\uae30 \uc1fc\ud551\ubab0 \uc544\ub2c8\uc5d0\uc694? \uc65c \ubc18\ubc14\uc9c0\ub97c \ubc18\ud488\ud574\uc8fc\uc9c0 \uc54a\uc558\ub294\uc9c0 \uc54c \uac83 \uac19\ub124\uc694.|\ubc18\ubc14\uc9c0?! \ub10c \ub2e4\ub9ac\ub3c4 \uc5c6\uc796\uc544!|\uc5b4, \uadf8\ub798\uc11c \ubc18\ubc14\uc9c0\ub97c \ud658\ubd88\ud558\ub824\uace0 \ud588\uc5b4\uc694!'
)
: 'Level 10' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc6b0\uc640! \uc800 \uc774\uc0c1\ud55c \ud584\ubc84\uac70\ub97c \uc774\uae30\uc168\ub124\uc694!|\uc608\uc57c, \ubcc4\ub85c \uae30\ubd84\uc774 \uc88b\uc9c4 \uc54a\uad6c\ub098. \uaf64 \uc88b\uc740 \uc0ac\ub78c \uac19\uc558\uc5b4.|\uc544\ube60\ub97c \uc8fd\uc774\ub824\uace0 \ud588\uc5b4\uc694!|\uadf8\ub2c8\uae4c \ubb50 \uadf8\ub7f0 \uac83 \uac19\uae34 \ud55c\ub370... \uc74c... \ubb34\uc0ac\ud55c \uac83 \uac19\uc544\uc11c \ub2e4\ud589\uc774\uad6c\ub098.|\uc544\ube60\ub3c4 \ubb34\uc0ac\ud574\uc11c \ub2e4\ud589\uc774\uc5d0\uc694. \uace0\ub9c8\uc6cc\uc694, \uc544\ube60.'
)
: 'Level 11' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\ubc14\ub2f7\uac00\uc5d0\uc11c \ub180\uace0 \uc788\uc5c8\uc5b4\uc694!|\uc5ec\uae34 \ub0b4\uac00 \uac00\ubcf8 \ubc14\ub2f7\uac00 \uc911\uc5d0\uc11c \uac00\uc7a5 \uc704\ud5d8\ud55c \uacf3\uc774\uad6c\ub098.|\uc81c\uac00 \uac00\ubcf8 \ubc14\ub2f7\uac00 \uc911 \uac00\uc7a5 \uc7ac\ubbf8\uc788\ub294 \uacf3\uc774\uc5d0\uc694!'
)
: 'Level 12' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc5ec\uae30 \uacbd\uce58\uac00 \uc815\ub9d0 \uba4b\uc838\uc694!|\uba4b\uc9c0\uad6c\ub098, \ud558\uc9c0\ub9cc \uc9d1\uc5d0\ub3c4 \uc774\ub7f0 \uacf3\uc774 \uc788\uc9c0 \uc54a\ub2c8.|\uac8c\uc784 \uc0b0\uc5c5\uc5d0\uc11c\ub294 \u201c\ub9ac\uc18c\uc2a4 \uc7ac\ud65c\uc6a9\u201d\uc774\ub77c\uace0 \ud558\uc8e0. \uba54\ubaa8\ub9ac\ub97c \uc808\uc57d\ud558\uace0 \uac1c\ubc1c \uc2dc\uac04\uc744 \uc544\ub07c\ub294 \ub370 \uc88b\uc740 \ubc29\ubc95\uc774\uc5d0\uc694.|\u201d\uac8c\uc784 \uc0b0\uc5c5\u201d\uc774 \ubb50\ub2c8\u201c\u201c?|\ubaa8\ub974\uaca0\uc5b4\uc694.'
)
: 'Level 13' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc544\ube60\uac00 \uc624\uc154\uc11c \ub2e4\ud589\uc774\uc5d0\uc694|\uc544\uac00\uc57c, \ub2e4\uc2dc \ubd10\uc11c \uc815\ub9d0 \ub2e4\ud589\uc774\uad6c\ub098!|\ud587\ubcd5\uc5d0 \ub108\ubb34 \ub9ce\uc774 \ud0d4\uc5b4\uc694|\uc774\ub7f0.|\uc65c \uc774\ub807\uac8c \uc624\ub798 \uac78\ub9ac\uc168\uc5b4\uc694'
)
: 'Level 14' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc800\uae30 \uc791\uc740 \ud53c\uc790 \ubcf4\uc168\uc5b4\uc694?|\uc5b4... \ubd24\uc9c0. \uadf8\ub798.|\uaf64 \uba4b\uc788\ub294 \uac70 \uac19\uc544\uc694.|\uc800\uac74... \ub0a0 \uc8fd\uc774\ub824\uace0 \ud588\uc5b4...|\uaf64 \uba4b\uc788\ub124\uc694.'
)
: 'Level 15' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc544\ube60! \ud574\uc0bc\uc744 \ucc3e\uace0 \uc788\uc5c8\uc5b4\uc694!|\uc5bc\ub9c8\ub098 \ucc3e\uc558\ub2c8?|\uadf8\ub2e4\uc9c0 \uc548 \uc88b\uc544\uc694. \ubcc4\ub85c \ubabb \uc7a1\uc558\uc5b4\uc694|\uadf8\ub7fc, \uc774\uc81c \uc9d1\uc5d0 \uac00\uba74 \ub418\uaca0\ub2e4.|\ud558\uc9c0\ub9cc \ud574\uc0bc\uc740 \uc81c \uc778\uc0dd\uc758 \ubaa9\ud45c\ub77c\uace0\uc694!|\uc9d1\uc5d0 \uac00\ub294 \uac74 \ub0b4 \uc778\uc0dd\uc758 \ubaa9\ud45c\ub780\ub2e4.|\uadf8\ub807\uac8c \uc88b\uc740 \ubaa9\ud45c\ub294 \uc544\ub2c8\ub124\uc694.'
)
: 'Level 16' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc5ec\uae30\uc5d0 \uc5b4\ub5bb\uac8c \uc654\ub294\uc9c0 \uc804\ud600 \ubaa8\ub974\uaca0\uc5b4\uc694. \uc5b4\ub5bb\uac8c \ub0b4\ub824\uac00\uc57c \ud558\ub294\uc9c0\ub3c4 \ubaa8\ub974\uaca0\uc5b4\uc694.|\uac71\uc815\ud558\uc9c0 \ub9d0\ub834. \ub808\ubca8\uc774 \ub05d\ub0a0 \ub54c\ub9c8\ub2e4 \uadf8\ub0e5 \ub0a0\uc544\uac04\ub2e8\ub2e4.|\uadf8\uac83\ucc38 \ud3b8\ub9ac\ud558\ub124\uc694! \uc5b4\ub5bb\uac8c \ud558\ub294 \uac70\uc608\uc694?|\ub098\ub3c4 \ubaa8\ub978\ub2e8\ub2e4.|\u201d\ub808\ubca8\u201d\uc740 \ub610 \ubb50\uc5d0\uc694?|\uadf8\uac83\ub3c4 \ubaa8\ub974\uaca0\uad6c\ub098.,\u201c no idea.\u201d'
)
: 'Level 17' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc800 \ucee4\ub2e4\ub780 \uac00\uc2dc \uc0c1\uc790\uc5d0 \uae54\ub9ac\uc9c0 \uc54a\uc544\uc11c \ucc38 \ub2e4\ud589\uc774\uc5d0\uc694!|\uace0\ub9d9\uad6c\ub098 \uc544\ub4e4\uc544. \uadf8\uac83\ucc38 \ub3c4\uc6c0\uc774 \ub410\uc5b4.|\ucc9c\ub9cc\uc5d0\uc694!'
)
: 'Level 18' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc640, \uc544\ube60 \uc548\ub155! \uc5ec\uae30\uc5d0\uc11c \ubb50 \ud558\uc138\uc694?|\uc6b0\ub9ac \uba4d\uccad\ud55c \uc544\uc774\ub4e4\uc744 \ucc3e\uace0 \uc788\uc9c0.|\uba4d\uccad\ud55c \uc560\ub4e4\uc740 \uc798 \ucc3e\uc73c\uc168\uc5b4\uc694?|...|\uc544.'
)
: 'Level 19' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\ud574\ubcc0\uc5d0\uc11c \uc26c\ub2c8\uae4c \uc88b\ub124\uc694!|\ub10c \uc678\ucd9c \uae08\uc9c0\uc57c..|\ub124?|\ub108\ub124 \uc804\ubd80 \uc678\ucd9c \uae08\uc9c0\uc57c.|\ubb50\ub77c\uace0\uc694?|\uc601\uc6d0\ud788.'
)
: 'Level 20' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc640! \ud56b\ub3c4\uadf8\ub97c \ubb3c\ub9ac\uce58\uc168\uc5b4\uc694!|\uadf8\uac70 \uc9c4\uc9dc \uc774\ub984\uc778 \uac70\uc57c?|\ub124, \ud56b\ub3c4\uadf8\ub124 \ubd80\ubaa8\ub2d8\ub4e4\uc758 \uc791\uba85 \uc13c\uc2a4\uac00 \ubcc4\ub85c\uc600\ub358 \uac70 \uac19\uc544\uc694. \ubd80\ubaa8\ub2d8\ub4e4\uc774 \uc815\ub9d0 \uc774\uc0c1\ud574\uc694.|\ub9d0\uc870\uc2ec\ud558\ub834.'
)
: 'Level 21' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\ub108\ubb34 \ucd94\uc6cc\uc694. \ubc1c\uac00\ub77d\uc5d0 \uac10\uac01\uc774 \uc5c6\uc5b4\uc694!|\ub108\ub294 \ubb34\ub2c8\uae4c \ubc1c\uac00\ub77d\ub3c4 \uc5c6\uc796\ub2c8.|\uc774\ub7f0!'
)
: 'Level 22' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc124\uc778\uc744 \ubd24\uc5b4\uc694!|\uc544\ub2c8, \ubcf8 \uc801 \uc5c6\ub2e4.|\ub124, \ubcf8 \uc801 \uc5c6\uc8e0.'
)
: 'Level 23' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc544\ube60, \uba54\ub9ac \ud06c\ub9ac\uc2a4\ub9c8\uc2a4!|\uc5b4, \uace0\ub9d9\uad6c\ub098. \uadfc\ub370 \ud06c\ub9ac\uc2a4\ub9c8\uc2a4 \uc2dc\uc98c\uc774 \uc544\ub2c8\ub780\ub2e4.|\uadf8\ub7fc \uc65c \ub208\uc774 \uc624\uc8e0?|\uc6b0\ub9ac\uac00 \uc0b0\uc5d0 \uc788\uc73c\ub2c8\uae4c.|\ud06c\ub9ac\uc2a4\ub9c8\uc2a4 \uc0b0\uc774\ub124\uc694!|\uc544\ub2c8, \uadf8\ub0e5 \uc0b0\uc774\uc57c.|\ud589\ubcf5\ud55c \uc131\ud0c4\uc808!'
)
: 'Level 24' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\ubc14\ub2f7\uac00\uc5d0\uc11c \uc815\ub9d0 \uba4b\uc9c4 \uc2dc\uac04\uc744 \ubcf4\ub0b4\uace0 \uc788\uc5c8\uc5b4\uc694!|\uc5ec\uae34 \ubc14\ub2f7\uac00\uac00 \uc544\ub2c8\ub780\ub2e4. \uc5ec\uae34 \uc0b0\uc774\uc9c0.|\uc5b4\ub514\ub4e0\uc9c0 \ubc14\ub2f7\uac00\uac00 \ub420 \uc218 \uc788\uc5b4\uc694. \uae0d\uc815\uc801\uc778 \uc790\uc138\ub97c \uac00\uc9c0\uc138\uc694!|\uc544\ub2c8... \uadf8\uac74 \uc633\uc9c0 \uc54a\uc544.'
)
: 'Level 25' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc800 \uc790\uc2dd\ub4e4\uc740 \ub300\uccb4 \uc65c \uc800\ub7ec\ub294 \uac70\uc57c?|\uc644\uc804 \uba4b\uc788\uc8e0!|\uc544\ub2c8! \uba4b\uc788\uc9c0 \uc54a\uc544! \ub0a0 \uc8fd\uc774\ub824\uace0 \ud588\ub2e4\uace0! \uc800 \uc18c\uc2dc\uc9c0\ub4e4\uc740 \ub300\uccb4 \uc5b4\ub514\uc5d0\uc11c \uc628 \uac70\uc57c?!|\uc5b4, \ub0b4\ucc28\uc6d0\uc758 \uc18c\uc2dc\uc9c0 \uc18c\uc6a9\ub3cc\uc774\uc5d0\uc11c \uc654\uc5b4\uc694.|\ub0b4\ucc28\uc6d0, \ubb50?|\uadf8\ub0e5 \uc0dd\uac01\ud558\uc9c0 \uc54a\ub294 \uac8c \ub098\uc744 \uac70 \uac19\uc544\uc694.'
)
: 'Level 26' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc640 \uc544\ube60! \uba4b\uc9c4 \ucc29\ub959\uc774\uc5c8\uc5b4\uc694! \uad1c\ucc2e\uc73c\uc138\uc694?|\ub0b4\uac8c \ubf08\uac00 \uc5c6\uc5b4\uc11c \uc815\ub9d0 \ub2e4\ud589\uc774\uad6c\ub098.|\uc800\ub450\uc694!'
)
: 'Level 27' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc5ec\uae30 \ub208 \ub3d9\uad74\uc5d0 \uc9c8\ub838\uc5b4\uc694. \uc9d1\uc5d0 \uac00\uba74 \uc548 \ub3fc\uc694?|\uc9c0\uae08\uae4c\uc9c0 \uacc4\uc18d \uc9d1\uc5d0 \uc788\uc5b4\uc57c \ud588\ub2e8\ub2e4.'
)
: 'Level 28' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
"\uc800\ub294 \uc5bc\uc5c8\uc5b4\uc694|\uad1c\ucc2e\ub2e8\ub2e4.|\uc800\ub294 \uc5bc\uc74c\ub369\uc5b4\ub9ac\uc608\uc694|\uc544\ub2c8\ub780\ub2e4.|\uc800\ub294 \ub7a9 \ub124\uc784\uc744 \u201cLIL' ICICLE\u201d\u201d\uc774\ub77c\uace0 \ubc14\uafc0 \uac70\uc608\uc694|\uadf8\uac70... \uaf64 \uba4b\uc9c0\uad6c\ub098."
)
: 'Level 29' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\ub610 \ubcf4\ub124\uc694!|\uc774\uc804\uc5d0\ub294 \ubbf8\uc548\ud588\uc5b4\uc694. \uadf8\ub807\uac8c \ube44\uba85\uc744 \uc9c0\ub97c \uc0dd\uac01\uc740 \uc5c6\uc5c8\uc5b4\uc694. \uadf8\ub0e5 \uc81c\uac00 \uc815\ub9d0 \uc798 \ub180\ub77c\uc694.|\uc774\ubd10\uc694, \uad1c\ucc2e\uc544\uc694. \uac71\uc815\ud558\uc9c0 \ub9c8\uc138\uc694.|*\uaf64\uc561*|\uc544, \uc774\ub7f0.'
)
: 'Level 30' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc0e4\ub860\uc5d0\uac8c \ubcf8\ub54c\ub97c \ubcf4\uc5ec\uc92c\uc5b4\uc694!|\ubcf8\ub54c\uac00 \ubb54\uc9c0\ub294 \uc798 \ubaa8\ub974\uaca0\uad6c\ub098. \ud53c\uace4\ud558\uad6c\ub098. \ub108\ubb34 \ud53c\uace4\ud574. \uadf8\ub0e5 \ub108\ud76c\ub4e4\uc744 \ubaa8\ub450 \ucc3e\uc544 \uc9d1\uc5d0 \uac00\uace0 \uc2f6\uad6c\ub098. \uc65c \uc774\ub807\uac8c \uc560\uac00 \ub9ce\uc740 \uac70\uc9c0?|\uc74c... \uc798 \ubaa8\ub974\uaca0\ub124\uc694... \uc544\ub9c8... \ud3ec\uc790\ub85c \ubc88\uc2dd\ud558\uc168\uc5b4\uc694?|\uc74c, \uadf8\uac74 \uc544\ub2cc \uac83 \uac19\uad6c\ub098.'
)
: 'Level 31' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc5ec\uae30 \uc815\ub9d0 \uc73c\uc2a4\uc2a4\ud574\uc694! \uadc0\uc2e0 \ub0c4\uc0c8\uac00 \ub098\ub294 \uac83 \uac19\uc544\uc694!|\uacf0\ud321\uc774 \ub0c4\uc0c8\uaca0\uc9c0.|\uacf0\ud321\uc774 \uadc0\uc2e0!'
)
: 'Level 32' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc7e4\ub124\ub4e4\uc774, \ub9c9, \ud130\uc84c\uc5b4\uc694!|\ubd24\ub2e8\ub2e4.|\uc758\uc0ac\ub97c \ubd88\ub7ec\uc57c \ud560\uae4c\uc694?|\uc544\ub2c8, \uc544\ub9c8 \uad1c\ucc2e\uc744 \uac8c\ub2e4.'
)
: 'Level 33' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc81c \ube44\ubc00\uc758 \uadc0\uc2e0 \ud130\ub110\uc5d0 \uc628 \uac78 \ud658\uc601\ud569\ub2c8\ub2e4!!|\uace0\ub9d9\uad6c\ub098, \ub9d8\uc5d0\ub294 \uc548 \ub4e4\uc9c0\ub9cc.'
)
: 'Level 34' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc5ec\uae30\ub294 \uc815\ub9d0 \uc704\ud5d8\ud574! \uc65c \uc5ec\uae30\uc5d0 \uc788\ub294 \uac70\ub2c8?|\uc65c \uc5ec\uae30\uc5d0 \uc788\uc73c\uc2e0 \uac74\ub370\uc694?|\ub09c \ub108\ub97c \ucc3e\uc73c\ub7ec \uc654\uc5b4!|\uc804 \uc544\ube60\ub97c \ucc3e\uc73c\ub7ec \uc654\uc5b4\uc694!|\uadf8\ub9cc\ud574!'
)
: 'Level 35' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc5ec\uae30\ub294 \ub85c\ub4dc \ub354\ub098\ud06c\uc758 \uc9d1\uc774\uc5d0\uc694! \uadf8\ub294 \uba4b\uc9c4 \uc2e0\uc0ac\uc608\uc694!|\uadf8\uac83\ucc38, \uc88b\uc740 \uc18c\uc2dd\uc774\uad6c\ub098!|\uadf8\ub9ac\uace0 \uce68\uc785\uc790\ub97c \uace0\ubb38\ud558\uae38 \uc88b\uc544\ud558\ub294 \ubbf8\uce5c\ub188\uc774\ub798\uc694!|\uc544, \uadf8\ub807\uad6c\ub098.'
)
: 'Level 36' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc815\ub9d0 \uc624\uc2f9\ud55c \uacf3\uc774\uad6c\ub098.|\ud48d\uc120\uc774 \uba4b\uc838\uc694.|\uadf8\uac74 \uadf8\ub798. \uc624\uc2f9\ud55c \uc0dd\uc77c\ud30c\ud2f0 \uac19\uad6c\ub098.|\uadf8\ub7ec\uac8c\uc694.'
)
: 'Level 37' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\ub098\ub294 \uc73c\uc2a4\uc2a4\ud55c \uc694\uc0c8\uc758 \uc5ec\uc655\uc774\ub2e4!|\ub10c \uc790\ub7ec \uac00\uc57c \ud560 \uc2dc\uac04\uc774 \uc9c0\ub09c \ubb34\ub780\ub2e4.|\uc73c\uc2a4\uc2a4\ud55c \uc694\uc0c8\uc758 \uc5ec\uc5b4\uc5b4\uc5b4\uc655!'
)
: 'Level 38' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc5ec\uae30 \uc2e4\ub0b4 \uc218\uc601\uc7a5 \uc9c4\uc9dc \uba4b\uc788\uc9c0 \uc54a\uc544\uc694?|\ub0b4 \uc0dd\uac01\uc5d0\ub294 \ud558\uc218\uad6c\uc778 \uac83 \uac19\uad6c\ub098.|\uc5b4... \ub9c8\uc154\ub3c4 \uc548\uc804\ud560\uae4c\uc694?|\uc544\ub9c8... \uc544\ub2d0 \uac83 \uac19\uad6c\ub098.|\uc5b4 \uc774\ub7f0.'
)
: 'Level 39' == d.getCurrentSceneName()
? c.setValue(
'Baby Logic',
'_DialogText',
'\uc640, \uc544\ube60 \uc815\ub9d0 \ub300\ub2e8\ud574\uc694! \uc800 \uac00\uc2dc \ub2ec\ub9b0 \uc5d8\ub9ac\ubca0\uc774\ud130\ub97c \uc9c0\ub098\uc624\uc2e4 \uc904 \ubab0\ub790\uc5b4\uc694!|\ub124\uac00 \uc9d1\uc5d0 \uc788\uc5c8\ub2e4\uba74 \uadf8\ub7f4 \ud544\uc694\uac00 \uc5c6\uc5c8\ub2e8\ub2e4.|\ud558\uc9c0\ub9cc \uadf8\ub7fc \uc544\ube60\uac00 \ub300\ub2e8\ud558\ub2e4\ub294 \uac83\ub3c4 \ubab0\ub790\uc744 \uac70\uc608\uc694!'
)
: 'Level 40' == d.getCurrentSceneName() &&
c.setValue(
'Baby Logic',
'_DialogText',
'\uc544\ube60\uac00 \ud574\ub0c8\uc5b4\uc694! \uc544\ube60\uac00 \ubaa8\ub450\ub97c \uad6c\ud588\uc5b4\uc694!|\ub108\ubb34 \uc9c0\ucce4\uad6c\ub098. \uc774\uc81c \uc9d1\uc5d0 \uac00\uc790.|\uc0ac\ub791\ud574\uc694 \uc544\ube60.|\ub098\ub3c4 \uc0ac\ub791\ud55c\ub2e8\ub2e4, \uc544\uac00. \ub10c \uc678\ucd9c \uae08\uc9c0\uc57c.'
));
}
}
},
null
);
this.addListener(d.engine.whenDrawing, q(this, this._event_Timer));
d.runPeriodically(1, q(this, this._event_TimerCount), null);
d.runPeriodically(700, q(this, this._event_Snow), null);
},
forwardMessage: function (a) {},
__class__: Pu
});
var Qu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Face Left'] = '_FaceLeft';
this._FaceLeft = !1;
this.nameMap.h.Speed = '_Speed';
this._Speed = 8;
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Distance X'] = '_DistanceX';
this._DistanceX = 0;
this.nameMap.h['Distance Y'] = '_DistanceY';
this._DistanceY = 0;
this.nameMap.h.Distance = '_Distance';
this._Distance = 0;
this.nameMap.h.Detonate = '_Detonate';
this._Detonate = !1;
this.nameMap.h['Debris Speed'] = '_DebrisSpeed';
this._DebrisSpeed = 0;
this.nameMap.h['Detonate Timer'] = '_DetonateTimer';
this._DetonateTimer = 0;
this.nameMap.h['Has Spring'] = '_HasSpring';
this._HasSpring = !1;
this.nameMap.h.Spring = '_Spring';
};
h['scripts.Design_51_51_BackAndForthMovement'] = Qu;
Qu.__name__ = 'scripts.Design_51_51_BackAndForthMovement';
Qu.__super__ = u;
Qu.prototype = r(u.prototype, {
_FaceLeft: null,
_Speed: null,
_Dude: null,
_DistanceX: null,
_DistanceY: null,
_Distance: null,
_Detonate: null,
_DebrisSpeed: null,
_DetonateTimer: null,
_HasSpring: null,
_Spring: null,
_event_Updating: function (a) {
var b = this;
if (this.wrapper.enabled) {
if (
!this._Detonate &&
(this._FaceLeft &&
(!d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32 + 1),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
) ||
(d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
) &&
7 <
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
)))
? ((this._FaceLeft = !1), this.actor.setAnimation('Right'))
: this._FaceLeft ||
(d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32 + 1),
Math.ceil(this.actor.getX() / 32),
d.engine.getLayerById(0)
) &&
!(
d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.ceil(this.actor.getX() / 32),
d.engine.getLayerById(0)
) &&
7 <
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.ceil(this.actor.getX() / 32),
d.engine.getLayerById(0)
)
)) ||
((this._FaceLeft = !0), this.actor.setAnimation('Left')),
this._FaceLeft
? this.actor.setXVelocity(-this._Speed)
: this.actor.setXVelocity(this._Speed),
this.actor.getType() == d.getActorType(401))
)
if (
((a = this._Dude),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
)
(a = this._Dude),
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.isAlive() &&
((this._DistanceX = this._Dude.getXCenter() - this.actor.getXCenter()),
(this._DistanceY = this._Dude.getYCenter() - this.actor.getYCenter()),
(this._Distance = Math.sqrt(
Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)
)),
100 > this._Distance &&
!this._Detonate &&
((this._Detonate = !0),
k.engine.getGameAttribute('Sound Disabled') ||
d.playSoundOnChannel(d.getSound(413), 9),
this.actor.setXVelocity(0),
this._FaceLeft
? this.actor.setAnimation('Left Detonate')
: this.actor.setAnimation('Right Detonate'),
d.runLater(
800,
function (a) {
d.stopSoundOnChannel(9);
b.actor.setAnimation('Explode');
d.runLater(
100,
function (a) {
b.actor.isOnScreen() &&
(k.engine.getGameAttribute('Sound Disabled') ||
d.playSound(d.getSound(405)),
d.startShakingScreen(0.01, 0.1));
a = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); a < c.length; ) {
var e = c[a];
++a;
null == e ||
e.dead ||
e.recycled ||
(b.actor.getXCenter() > e.getXCenter()
? d.setValueForScene(
'Stage Logic',
'_RumbleName',
'Cannon Right'
)
: d.setValueForScene(
'Stage Logic',
'_RumbleName',
'Cannon Left'
),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
}
d.createRecycledActorOnLayer(
d.getActorType(403),
b.actor.getXCenter() - 80,
b.actor.getYCenter() - 80,
d.engine.getLayerById(b.actor.getLayerID())
);
b._DebrisSpeed = 30;
d.createRecycledActor(
d.getActorType(406),
b.actor.getX() - 8,
b.actor.getY() - 4,
0
);
d.getLastCreatedActor().setAnimation('1');
d.getLastCreatedActor().setXVelocity(-b._DebrisSpeed);
d.getLastCreatedActor().setYVelocity(-b._DebrisSpeed);
d.createRecycledActor(
d.getActorType(406),
b.actor.getX() - 8,
b.actor.getY() + 24,
0
);
d.getLastCreatedActor().setAnimation('2');
d.getLastCreatedActor().setXVelocity(b._DebrisSpeed);
d.getLastCreatedActor().setYVelocity(-b._DebrisSpeed);
d.createRecycledActor(
d.getActorType(406),
b.actor.getX() + 14,
b.actor.getY() - 4,
0
);
d.getLastCreatedActor().setAnimation('3');
d.getLastCreatedActor().setXVelocity(-b._DebrisSpeed);
d.getLastCreatedActor().setYVelocity(b._DebrisSpeed);
d.createRecycledActor(
d.getActorType(406),
b.actor.getX() + 14,
b.actor.getY() + 24,
0
);
d.getLastCreatedActor().setAnimation('4');
d.getLastCreatedActor().setXVelocity(b._DebrisSpeed);
d.getLastCreatedActor().setYVelocity(b._DebrisSpeed);
d.recycleActor(b.actor);
},
b.actor
);
},
this.actor
)));
else {
a = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); a < c.length; ) {
var e = c[a];
++a;
null == e || e.dead || e.recycled || (this._Dude = e);
}
}
a = this._Spring;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
this._Spring.setX(this.actor.getX() + 2), this._Spring.setY(this.actor.getY() - 12);
}
},
_event_EveryNsecs: function (a) {
if (this.wrapper.enabled && this._Detonate) {
a = 0;
for (var b = Math.max(1, Math.round(this._DetonateTimer / 2)) | 0; a < b; )
a++,
d.createRecycledActorOnLayer(
d.getActorType(94),
d.randomInt((this.actor.getXCenter() - 16) | 0, this.actor.getXCenter() | 0),
this.actor.getY(),
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().moveToBottom(),
d.getLastCreatedActor().moveBy(0, d.randomInt(-16, -32), 0.3, J.backOut),
d.getLastCreatedActor().setAnimation('Dirt');
this._DetonateTimer += 1;
}
},
init: function () {
this.actor.makeAlwaysSimulate();
this._FaceLeft || this.actor.setAnimation('Right');
this._HasSpring &&
(d.createRecycledActorOnLayer(
d.getActorType(62),
this.actor.getX() + 2,
this.actor.getY() - 12,
d.engine.getLayerById(this.actor.getLayerID())
),
(this._Spring = d.getLastCreatedActor()),
this._Spring.moveToBottom(),
this.actor.moveToBottom());
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
d.runPeriodically(100, q(this, this._event_EveryNsecs), this.actor);
},
forwardMessage: function (a) {},
__class__: Qu
});
var Ru = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Camera Number'] = '_CameraNumber';
this._CameraNumber = 0;
};
h['scripts.Design_55_55_CameraSensorLogic'] = Ru;
Ru.__name__ = 'scripts.Design_55_55_CameraSensorLogic';
Ru.__super__ = u;
Ru.prototype = r(u.prototype, {
_CameraNumber: null,
init: function () {},
forwardMessage: function (a) {},
__class__: Ru
});
var Su = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h.Delay = '_Delay';
this._Delay = 0;
this.nameMap.h.Position = '_Position';
this._Position = '';
};
h['scripts.Design_63_63_TransitionBlockLogic'] = Su;
Su.__name__ = 'scripts.Design_63_63_TransitionBlockLogic';
Su.__super__ = u;
Su.prototype = r(u.prototype, {
_Delay: null,
_Position: null,
_customEvent_Go: function () {
var a = this;
d.runLater(
1e3 * this._Delay,
function (b) {
a.actor.setAnimation(a._Position);
},
this.actor
);
},
init: function () {
this.actor.makeAlwaysSimulate();
this.actor.anchorToScreen();
},
forwardMessage: function (a) {},
__class__: Su
});
var Tu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h.Up = '_Up';
this._Up = !1;
this.nameMap.h['Hover Distance'] = '_HoverDistance';
this._HoverDistance = 0;
};
h['scripts.Design_66_66_HoverMovement'] = Tu;
Tu.__name__ = 'scripts.Design_66_66_HoverMovement';
Tu.__super__ = u;
Tu.prototype = r(u.prototype, {
_Up: null,
_HoverDistance: null,
_customEvent_Move: function () {
var a = this;
this._Up
? (this.actor.moveBy(0, -this._HoverDistance, 0.4, J.quadInOut),
(this._Up = !1),
d.runLater(
500,
function (b) {
a.actor.shout('_customEvent_Move');
},
this.actor
))
: (this.actor.moveBy(0, this._HoverDistance, 0.4, J.quadInOut),
(this._Up = !0),
d.runLater(
500,
function (b) {
a.actor.shout('_customEvent_Move');
},
this.actor
));
},
init: function () {
this.actor.shout('_customEvent_Move');
},
forwardMessage: function (a) {},
__class__: Tu
});
var Uu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Face Left'] = '_FaceLeft';
this._FaceLeft = !1;
this.nameMap.h.Speed = '_Speed';
this._Speed = 8;
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Has Charged'] = '_HasCharged';
this._HasCharged = !1;
this.nameMap.h.Charging = '_Charging';
this._Charging = !1;
this.nameMap.h['Charge Speed'] = '_ChargeSpeed';
this._ChargeSpeed = 0;
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h.Bounce = '_Bounce';
this._Bounce = !1;
this.nameMap.h['X Distance'] = '_XDistance';
this._XDistance = 0;
this.nameMap.h.Stunned = '_Stunned';
this._Stunned = !1;
this.nameMap.h['Snooze Z List'] = '_SnoozeZList';
this.nameMap.h.Exclamation = '_Exclamation';
this.nameMap.h.Snore = '_Snore';
this._Snore = !1;
this.nameMap.h['Distance X'] = '_DistanceX';
this._DistanceX = 0;
this.nameMap.h['Distance Y'] = '_DistanceY';
this._DistanceY = 0;
this.nameMap.h.Distance = '_Distance';
this._Distance = 0;
this.nameMap.h.Detonate = '_Detonate';
this._Detonate = !1;
this.nameMap.h['Debris Speed'] = '_DebrisSpeed';
this._DebrisSpeed = 0;
this.nameMap.h.Spring = '_Spring';
this.nameMap.h.Wander = '_Wander';
this._Wander = !1;
this.nameMap.h['Start Awake'] = '_StartAwake';
this._StartAwake = !1;
this.nameMap.h['Going Left'] = '_GoingLeft';
this._GoingLeft = !1;
};
h['scripts.Design_68_68_ChargingMovement'] = Uu;
Uu.__name__ = 'scripts.Design_68_68_ChargingMovement';
Uu.__super__ = u;
Uu.prototype = r(u.prototype, {
_FaceLeft: null,
_Speed: null,
_Dude: null,
_HasCharged: null,
_Charging: null,
_ChargeSpeed: null,
_GravitySpeed: null,
_Bounce: null,
_XDistance: null,
_Stunned: null,
_SnoozeZList: null,
_Exclamation: null,
_Snore: null,
_DistanceX: null,
_DistanceY: null,
_Distance: null,
_Detonate: null,
_DebrisSpeed: null,
_Spring: null,
_Wander: null,
_StartAwake: null,
_GoingLeft: null,
_event_EveryNsecs: function (a) {
var b = this;
if (this.wrapper.enabled && this.actor.isOnScreen())
if (
('Idle Left' == this.actor.getAnimation() ||
'Left' == this.actor.getAnimation() ||
'Left Wander' == this.actor.getAnimation() ||
'Sleep' == this.actor.getAnimation()
? (this._GoingLeft = !0)
: (this._GoingLeft = !1),
(a = this._Dude),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
)
if (
((this._XDistance =
Math.max(this.actor.getXCenter(), this._Dude.getXCenter()) -
Math.min(this.actor.getXCenter(), this._Dude.getXCenter())),
this._Dude.getYCenter() > this.actor.getY() &&
this._Dude.getYCenter() < this.actor.getY() + this.actor.getHeight() &&
200 > this._XDistance)
) {
if (!this._Charging && !this._HasCharged && !this._Stunned) {
a = 0;
for (e = x.__cast(this._SnoozeZList, Array); a < e.length; ) {
var c = e[a];
++a;
c.isAlive() && d.recycleActor(c);
}
this._Dude.getX() > this.actor.getX()
? this._GoingLeft ||
((this._Charging = !0),
(this._Wander = !1),
(this._HasCharged = !0),
d.createRecycledActor(
d.getActorType(131),
this.actor.getXCenter() - 14,
this.actor.getY() - 28,
0
),
(this._Exclamation = d.getLastCreatedActor()),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(373)),
this.actor.setXVelocity(0),
this.actor.setYVelocity(-20),
this.actor.setAnimation('Idle Right'),
d.runLater(
300,
function (a) {
b.actor.setAnimation('Right');
},
this.actor
),
d.runLater(
500,
function (a) {
d.recycleActor(b._Exclamation);
},
this.actor
),
d.runLater(
700,
function (a) {
b.actor.setXVelocity(b._ChargeSpeed);
},
this.actor
))
: this._GoingLeft &&
((this._Charging = !0),
(this._Wander = !1),
(this._HasCharged = !0),
d.createRecycledActor(
d.getActorType(131),
this.actor.getXCenter() - 14,
this.actor.getY() - 28,
0
),
d.getLastCreatedActor().setAnimation('Right'),
(this._Exclamation = d.getLastCreatedActor()),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(373)),
this.actor.setXVelocity(0),
this.actor.setYVelocity(-20),
this.actor.setAnimation('Idle Left'),
d.runLater(
300,
function (a) {
b.actor.setAnimation('Left');
},
this.actor
),
d.runLater(
500,
function (a) {
d.recycleActor(b._Exclamation);
},
this.actor
),
d.runLater(
700,
function (a) {
b.actor.setXVelocity(-b._ChargeSpeed);
},
this.actor
));
}
} else this._Charging || (this._HasCharged = !1);
else {
a = 0;
for (var e = d.getActorsOfType(d.getActorType(2)); a < e.length; )
(c = e[a]), ++a, null == c || c.dead || c.recycled || (this._Dude = c);
}
},
_event_Sleep: function (a) {
this.wrapper.enabled &&
'Sleep' == this.actor.getAnimation() &&
(d.createRecycledActor(
d.getActorType(127),
this.actor.getXCenter() - 12,
this.actor.getY(),
0
),
this._SnoozeZList.push(d.getLastCreatedActor()),
this._Snore
? (this._Snore = !1)
: ((this._Snore = !0),
!k.engine.getGameAttribute('Sound Disabled') &&
this.actor.isOnScreen() &&
d.playSound(d.getSound(454))));
},
_event_SnoozeZKilled: function (a) {
this.wrapper.enabled &&
X.contains(this._SnoozeZList, a) &&
A.remove(this._SnoozeZList, a);
},
_event_Updating: function (a) {
this.wrapper.enabled &&
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
},
_event_HitsWalls: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = d.getActorGroup(1);
var e = a.otherActor.getType(),
f = a.otherActor.getGroup();
c = c == e || c == f;
} else c = !1;
c &&
!this._Wander &&
(this._Charging &&
(a.thisFromLeft
? ((this._Charging = !1),
d.startShakingScreen(0.01, 0.1),
this.actor.setYVelocity(-30),
this.actor.setXVelocity(14),
(this._Stunned = this._Bounce = !0),
this.actor.setAnimation('Idle Left'),
d.createRecycledActor(
d.getActorType(94),
this.actor.getX() - 8,
this.actor.getYCenter() - 8,
0
),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(117)),
d.createRecycledActorOnLayer(
d.getActorType(125),
this.actor.getX() + 16,
this.actor.getY() + 10,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('0'),
d.getLastCreatedActor().setXVelocity(12),
d.getLastCreatedActor().setYVelocity(-50),
d.createRecycledActorOnLayer(
d.getActorType(125),
this.actor.getX() + 16,
this.actor.getY() + 10,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('1'),
d.getLastCreatedActor().setXVelocity(18),
d.getLastCreatedActor().setYVelocity(-50),
d.createRecycledActorOnLayer(
d.getActorType(125),
this.actor.getX() + 16,
this.actor.getY() + 10,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('2'),
d.getLastCreatedActor().setXVelocity(24),
d.getLastCreatedActor().setYVelocity(-50),
d.runLater(
600,
function (a) {
b._Stunned = !1;
b._Wander = !0;
b._HasCharged = !1;
b.actor.setAnimation('Right Wander');
},
this.actor
))
: a.thisFromRight &&
((this._Charging = !1),
d.startShakingScreen(0.01, 0.1),
this.actor.setYVelocity(-30),
this.actor.setXVelocity(-14),
(this._Stunned = this._Bounce = !0),
this.actor.setAnimation('Idle Right'),
d.createRecycledActor(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getYCenter() - 8,
0
),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(117)),
d.createRecycledActorOnLayer(
d.getActorType(125),
this.actor.getX(),
this.actor.getY() + 10,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('2'),
d.getLastCreatedActor().setXVelocity(-12),
d.getLastCreatedActor().setYVelocity(-50),
d.createRecycledActorOnLayer(
d.getActorType(125),
this.actor.getX(),
this.actor.getY() + 10,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('1'),
d.getLastCreatedActor().setXVelocity(-18),
d.getLastCreatedActor().setYVelocity(-50),
d.createRecycledActorOnLayer(
d.getActorType(125),
this.actor.getX(),
this.actor.getY() + 10,
d.engine.getLayerById(this.actor.getLayerID())
),
d.getLastCreatedActor().setAnimation('0'),
d.getLastCreatedActor().setXVelocity(-24),
d.getLastCreatedActor().setYVelocity(-50),
d.runLater(
600,
function (a) {
b._Stunned = !1;
b._Wander = !0;
b._HasCharged = !1;
b.actor.setAnimation('Left Wander');
},
this.actor
))),
a.thisFromBottom &&
this._Bounce &&
-5 < this.actor.getYVelocity() &&
((this._Bounce = !1), this.actor.setXVelocity(0)));
},
_event_Updating2: function (a) {
this.wrapper.enabled &&
this._Wander &&
(0 > this.actor.getXVelocity() && 'Left Wander' != this.actor.getAnimation()
? this.actor.setAnimation('Left Wander')
: 0 < this.actor.getXVelocity() &&
'Right Wander' != this.actor.getAnimation() &&
this.actor.setAnimation('Right Wander'),
this._FaceLeft &&
(!d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32 + 1),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
) ||
(d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
) &&
(7 <
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
) ||
67 ==
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
) ||
66 ==
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.floor(this.actor.getX() / 32),
d.engine.getLayerById(0)
))))
? ((this._FaceLeft = !1), this.actor.setAnimation('Right Wander'))
: !this._FaceLeft &&
(!d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32 + 1),
Math.ceil(this.actor.getX() / 32),
d.engine.getLayerById(0)
) ||
(d.tileExistsAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.ceil(this.actor.getX() / 32),
d.engine.getLayerById(0)
) &&
(7 <
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.ceil(this.actor.getX() / 32),
d.engine.getLayerById(0)
) ||
67 ==
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.ceil(this.actor.getX() / 32),
d.engine.getLayerById(0)
) ||
66 ==
d.getTileIDAt(
Math.round((this.actor.getY() + (this.actor.getHeight() - 34)) / 32),
Math.ceil(this.actor.getX() / 32),
d.engine.getLayerById(0)
)))) &&
((this._FaceLeft = !0), this.actor.setAnimation('Left Wander')),
this._FaceLeft
? this.actor.setXVelocity(-this._Speed)
: this.actor.setXVelocity(this._Speed));
},
init: function () {
this._Speed = 4;
this.actor.makeAlwaysSimulate();
this._ChargeSpeed = 28;
this._GravitySpeed = 48;
this._SnoozeZList = [];
this._StartAwake && ((this._Wander = !0), this.actor.setAnimation('Left Wander'));
d.runPeriodically(100, q(this, this._event_EveryNsecs), this.actor);
d.runPeriodically(700, q(this, this._event_Sleep), this.actor);
this.addListenerWithKey(
d.engine.whenTypeGroupKilledEvents,
d.getActorType(127),
q(this, this._event_SnoozeZKilled)
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsWalls));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating2));
},
forwardMessage: function (a) {},
__class__: Uu
});
var Vu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Gravity Speed'] = '_GravitySpeed';
this._GravitySpeed = 0;
this.nameMap.h['On Ground'] = '_OnGround';
this._OnGround = !1;
this.nameMap.h['Ground Check'] = '_GroundCheck';
this._GroundCheck = !1;
this.nameMap.h.Left = '_Left';
this._Left = !1;
this.nameMap.h['Number Of Hops'] = '_NumberOfHops';
this._NumberOfHops = 1;
this.nameMap.h['Hop Count'] = '_HopCount';
this._HopCount = 0;
this.nameMap.h.Hopping = '_Hopping';
this._Hopping = !1;
this.nameMap.h['Start Y'] = '_StartY';
this._StartY = 0;
this.nameMap.h['On Platform'] = '_OnPlatform';
this._OnPlatform = !1;
this.nameMap.h.Dead = '_Dead';
this._Dead = !1;
this.nameMap.h['Straight Up'] = '_StraightUp';
this._StraightUp = !1;
this.nameMap.h.Splash = '_Splash';
this._Splash = !1;
};
h['scripts.Design_73_73_HoppingMovement'] = Vu;
Vu.__name__ = 'scripts.Design_73_73_HoppingMovement';
Vu.__super__ = u;
Vu.prototype = r(u.prototype, {
_GravitySpeed: null,
_OnGround: null,
_GroundCheck: null,
_Left: null,
_NumberOfHops: null,
_HopCount: null,
_Hopping: null,
_StartY: null,
_OnPlatform: null,
_Dead: null,
_StraightUp: null,
_Splash: null,
_event_Updating: function (a) {
var b = this;
if (this.wrapper.enabled && !this._Dead) {
if (this._GroundCheck || (this._OnPlatform && this.actor.getY() >= this._StartY)) {
if ((this._OnPlatform && this.actor.setY(this._StartY), !this._OnGround)) {
this._OnGround = !0;
this.actor.setAnimation('Idle');
this.actor.setXVelocity(0);
this._Splash &&
this.actor.isOnScreen() &&
(k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(617)),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(0)
),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(0)
),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth() - 8,
this.actor.getYCenter() - 8,
d.engine.getLayerById(0)
),
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut));
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().setAnimation('Small');
d.getLastCreatedActor().moveBy(-16, -16, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getXCenter() - 8,
this.actor.getY() + this.actor.getHeight() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(16, -16, 0.3, J.backOut);
d.getLastCreatedActor().setAnimation('Small');
if (this.actor.isOnScreen()) {
a = 0;
for (var c = d.getActorsOfType(d.getActorType(2)); a < c.length; ) {
var e = c[a];
++a;
null == e ||
e.dead ||
e.recycled ||
(this.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Small Thud Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
}
}
this.actor.isOnScreen() &&
!k.engine.getGameAttribute('Sound Disabled') &&
d.playSound(d.getSound(117));
this._Hopping &&
((this._Hopping = !1),
d.runLater(
500,
function (a) {
b.actor.say('Hopping Movement', '_customEvent_Hop');
},
this.actor
));
}
} else this._OnGround && (this._OnGround = !1);
this._GroundCheck = !1;
(this._OnPlatform && this.actor.getY() >= this._StartY) ||
this.actor.setYVelocity(Math.min(this.actor.getYVelocity() + 2, this._GravitySpeed));
}
},
_event_ActorAny: function (a) {
var b = this;
this.wrapper.enabled &&
(this._OnPlatform ||
(this.internalGetGroup(a.otherActor, a.otherShape, a) != d.getActorGroup(1) &&
this.internalGetGroup(a.otherActor, a.otherShape, a) != d.getActorGroup(8)) ||
!a.thisFromBottom ||
(this._GroundCheck = !0),
a.otherActor.getType() != d.getActorType(203) ||
this._Dead ||
((this._Dead = !0),
this.actor.setFilter([d.createBrightnessFilter(100)]),
d.runLater(
100,
function (a) {
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(378));
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
b.actor.getXCenter() - 8,
b.actor.getYCenter() - 8,
d.engine.getLayerById(b.actor.getLayerID())
);
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
d.recycleActor(b.actor);
},
this.actor
)));
},
_customEvent_Hop: function () {
var a = this;
this._Dead ||
((this._Hopping = !0),
this.actor.setAnimation('Crouch'),
d.runLater(
340,
function (b) {
a.actor.setAnimation('Jump');
},
this.actor
),
d.runLater(
400,
function (b) {
a.actor.setYVelocity(-80);
a._Splash &&
a.actor.isOnScreen() &&
(k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(617)),
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getXCenter() - 8,
a.actor.getYCenter() - 8,
d.engine.getLayerById(0)
),
d.getLastCreatedActor().moveBy(0, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() - 8,
a.actor.getYCenter() - 8,
d.engine.getLayerById(0)
),
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut),
d.createRecycledActorOnLayer(
d.getActorType(94),
a.actor.getX() + a.actor.getWidth() - 8,
a.actor.getYCenter() - 8,
d.engine.getLayerById(0)
),
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut));
a._StraightUp ||
(a._Left ? a.actor.setXVelocity(11.6) : a.actor.setXVelocity(-11.6));
},
this.actor
),
(this._HopCount += 1),
this._HopCount >= this._NumberOfHops &&
((this._HopCount = 0), (this._Left = this._Left ? !1 : !0)));
},
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
this._GravitySpeed = 48;
this._GroundCheck = this._OnGround = !0;
this._StartY = this.actor.getY();
d.runLater(
1e3,
function (b) {
a.actor.say('Hopping Movement', '_customEvent_Hop');
},
this.actor
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_ActorAny));
},
forwardMessage: function (a) {},
__class__: Vu
});
var Wu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h['Left Side'] = '_LeftSide';
this.nameMap.h['Right Side'] = '_RightSide';
this.nameMap.h['Text Scroll Up Delay'] = '_TextScrollUpDelay';
this._TextScrollUpDelay = 0;
this.nameMap.h['Text Scrolling Up'] = '_TextScrollingUp';
this._TextScrollingUp = !1;
this.nameMap.h['Display Character Count'] = '_DisplayCharacterCount';
this._DisplayCharacterCount = 0;
this.nameMap.h['Dialog Text List'] = '_DialogTextList';
this.nameMap.h['Current Page'] = '_CurrentPage';
this._CurrentPage = 0;
this.nameMap.h['Last Page'] = '_LastPage';
this._LastPage = !1;
this.nameMap.h['Auto Close'] = '_AutoClose';
this._AutoClose = !1;
this.nameMap.h['Current Paragraph'] = '_CurrentParagraph';
this._CurrentParagraph = 1;
this.nameMap.h['Paragraph List'] = '_ParagraphList';
this.nameMap.h['End Of Paragraph'] = '_EndOfParagraph';
this._EndOfParagraph = !1;
this.nameMap.h['Page Down Flash'] = '_PageDownFlash';
this._PageDownFlash = !1;
this.nameMap.h['Action Text Actioned'] = '_ActionTextActioned';
this._ActionTextActioned = !1;
this.nameMap.h['Show Down Arrow'] = '_ShowDownArrow';
this._ShowDownArrow = !1;
this.nameMap.h['All lines split'] = '_Alllinessplit';
this._Alllinessplit = !1;
this.nameMap.h['Dialog Text Has Value'] = '_DialogTextHasValue';
this._DialogTextHasValue = !1;
this.nameMap.h['Space Found'] = '_SpaceFound';
this._SpaceFound = !1;
this.nameMap.h['Space Finder'] = '_SpaceFinder';
this._SpaceFinder = 0;
this.nameMap.h["Don't Clear"] = '_DontClear';
this._DontClear = !1;
this.nameMap.h['Dialog Text'] = '_DialogText';
this._DialogText = '';
this.nameMap.h['Paragraph Text'] = '_ParagraphText';
this._ParagraphText = '';
this.nameMap.h['Line Limit'] = '_LineLimit';
this._LineLimit = 0;
this.nameMap.h.Portrait = '_Portrait';
this.nameMap.h['Down Arrow'] = '_DownArrow';
this.nameMap.h['Character Count Stagger'] = '_CharacterCountStagger';
this._CharacterCountStagger = 0;
this.nameMap.h['Last Character'] = '_LastCharacter';
this._LastCharacter = '';
this.nameMap.h['Voice On'] = '_VoiceOn';
this._VoiceOn = !1;
this.nameMap.h['Voice Stagger'] = '_VoiceStagger';
this._VoiceStagger = 0;
this.nameMap.h['Previous Voice Sample'] = '_PreviousVoiceSample';
this._PreviousVoiceSample = 0;
this.nameMap.h['Voice Sample RN'] = '_VoiceSampleRN';
this._VoiceSampleRN = 0;
this.nameMap.h['Vowels List'] = '_VowelsList';
this.nameMap.h['Sentence Pitch'] = '_SentencePitch';
this._SentencePitch = 0;
this.nameMap.h['Pitch Up'] = '_PitchUp';
this._PitchUp = !1;
this.nameMap.h['New Sentence'] = '_NewSentence';
this._NewSentence = !1;
this.nameMap.h['Ended Sentence'] = '_EndedSentence';
this._EndedSentence = !1;
this.nameMap.h.Start = '_Start';
this._Start = !1;
this.nameMap.h['Total Text Length'] = '_TotalTextLength';
this._TotalTextLength = 0;
this.nameMap.h['Display Character Count 2'] = '_DisplayCharacterCount2';
this._DisplayCharacterCount2 = 0;
this.nameMap.h['Pitch Jump Count'] = '_PitchJumpCount';
this._PitchJumpCount = 0;
this.nameMap.h['Skip Speech'] = '_SkipSpeech';
this._SkipSpeech = !1;
this.nameMap.h.Character = '_Character';
this._Character = 'Dadish';
this.nameMap.h['Character Voice'] = '_CharacterVoice';
this._CharacterVoice = '';
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h.Top = '_Top';
this._Top = !1;
this.nameMap.h['Character 1'] = '_Character1';
this._Character1 = '';
this.nameMap.h['Character 2'] = '_Character2';
this._Character2 = '';
this.nameMap.h['Switch Characters'] = '_SwitchCharacters';
this._SwitchCharacters = !1;
this.nameMap.h.Parent = '_Parent';
this.nameMap.h.Screech = '_Screech';
this._Screech = !1;
this.nameMap.h['No First Screech'] = '_NoFirstScreech';
this._NoFirstScreech = !1;
this.nameMap.h.Margin = '_Margin';
this._Margin = 0;
this.nameMap.h['Draw Shadow'] = '_DrawShadow';
this._DrawShadow = !1;
this.nameMap.h['Font To Use'] = '_FontToUse';
this.nameMap.h['Last Voice Character'] = '_LastVoiceCharacter';
this._LastVoiceCharacter = '';
this.nameMap.h['Dummy Text For Voice'] = '_DummyTextForVoice';
this._DummyTextForVoice = '';
this.nameMap.h['Dummy Text Position'] = '_DummyTextPosition';
this._DummyTextPosition = 0;
this.nameMap.h['Voice Off'] = '_VoiceOff';
this._VoiceOff = !1;
this.nameMap.h['Button Input'] = '_ButtonInput';
this._ButtonInput = '';
this.nameMap.h['Button Is Down'] = '_ButtonIsDown';
this._ButtonIsDown = !1;
this.nameMap.h['Down Button ID'] = '_DownButtonID';
this._DownButtonID = '';
};
h['scripts.Design_83_83_DialogBoxLogic'] = Wu;
Wu.__name__ = 'scripts.Design_83_83_DialogBoxLogic';
Wu.__super__ = u;
Wu.prototype = r(u.prototype, {
_LeftSide: null,
_RightSide: null,
_TextScrollUpDelay: null,
_TextScrollingUp: null,
_DisplayCharacterCount: null,
_DialogTextList: null,
_CurrentPage: null,
_LastPage: null,
_AutoClose: null,
_CurrentParagraph: null,
_ParagraphList: null,
_EndOfParagraph: null,
_PageDownFlash: null,
_ActionTextActioned: null,
_ShowDownArrow: null,
_Alllinessplit: null,
_DialogTextHasValue: null,
_SpaceFound: null,
_SpaceFinder: null,
_DontClear: null,
_DialogText: null,
_ParagraphText: null,
_LineLimit: null,
_Portrait: null,
_DownArrow: null,
_CharacterCountStagger: null,
_LastCharacter: null,
_VoiceOn: null,
_VoiceStagger: null,
_PreviousVoiceSample: null,
_VoiceSampleRN: null,
_VowelsList: null,
_SentencePitch: null,
_PitchUp: null,
_NewSentence: null,
_EndedSentence: null,
_Start: null,
_TotalTextLength: null,
_DisplayCharacterCount2: null,
_PitchJumpCount: null,
_SkipSpeech: null,
_Character: null,
_CharacterVoice: null,
_Go: null,
_Top: null,
_Character1: null,
_Character2: null,
_SwitchCharacters: null,
_Parent: null,
_Screech: null,
_NoFirstScreech: null,
_Margin: null,
_DrawShadow: null,
_FontToUse: null,
_LastVoiceCharacter: null,
_DummyTextForVoice: null,
_DummyTextPosition: null,
_VoiceOff: null,
_ButtonInput: null,
_ButtonIsDown: null,
_DownButtonID: null,
_event_Text: function (a, b, c) {
if (
this.wrapper.enabled &&
this._Go &&
0 < this._DisplayCharacterCount &&
(d.setDrawingLayer(d.engine.getLayerById(this.actor.getLayerID())), this._Alllinessplit)
)
if (
((c = d.getFont(165)),
null != c && c != a.font && (a.font = c),
this._TextScrollingUp)
) {
if (this._CurrentPage - 1 < this._DialogTextList.length) {
if (this._DrawShadow) {
c = d.getFont(165);
null != c && c != a.font && (a.font = c);
c = U.replace(
('' + B.string(this._DialogTextList[(this._CurrentPage - 1) | 0])).substring(
0,
Math.min(
('' + B.string(this._DialogTextList[(this._CurrentPage - 1) | 0])).length,
this._DisplayCharacterCount
) | 0
),
'#',
''
);
b = 96 + (this._Margin / 2 + 2);
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
if (a.drawActor)
if (null != a.actor && a.actor.isHUD) {
b = a.x + b * a.scaleX;
var e = a.y + 16 * a.scaleY;
} else
(b = a.x + b * a.scaleX - k.cameraX), (e = a.y + 16 * a.scaleY - k.cameraY);
else (b = a.x + b * a.scaleX), (e = a.y + 16 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, e);
var f = null,
g = a.font;
g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g))
(c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img);
else {
var h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale),
l = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g));
}
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill());
}
c = this._FontToUse;
null != c && c != a.font && (a.font = c);
c = U.replace(
('' + B.string(this._DialogTextList[(this._CurrentPage - 1) | 0])).substring(
0,
Math.min(
('' + B.string(this._DialogTextList[(this._CurrentPage - 1) | 0])).length,
this._DisplayCharacterCount
) | 0
),
'#',
''
);
b = 96 + this._Margin / 2;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 14 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + 14 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 14 * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, e);
f = null;
g = a.font;
g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g)));
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill());
}
this._CurrentPage < this._DialogTextList.length &&
(this._DrawShadow &&
((c = d.getFont(165)),
null != c && c != a.font && (a.font = c),
(c = U.replace(
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).substring(
0,
Math.min(
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length,
this._DisplayCharacterCount
) | 0
),
'#',
''
)),
(b = 96 + (this._Margin / 2 + 2)),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 44 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX),
(e = a.y + 44 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 44 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill())),
(c = this._FontToUse),
null != c && c != a.font && (a.font = c),
(c = U.replace(
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).substring(
0,
Math.min(
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length,
this._DisplayCharacterCount
) | 0
),
'#',
''
)),
(b = 96 + this._Margin / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 42 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + 42 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 42 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()));
} else
this._CurrentPage < this._DialogTextList.length &&
(this._DrawShadow &&
((c = d.getFont(165)),
null != c && c != a.font && (a.font = c),
(c = U.replace(
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).substring(
0,
Math.min(
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length,
this._DisplayCharacterCount
) | 0
),
'#',
''
)),
(b = 96 + (this._Margin / 2 + 2)),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 24 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX),
(e = a.y + 24 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 24 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill())),
(c = this._FontToUse),
null != c && c != a.font && (a.font = c),
(c = U.replace(
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).substring(
0,
Math.min(
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length,
this._DisplayCharacterCount
) | 0
),
'#',
''
)),
(b = 96 + this._Margin / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 22 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (e = a.y + 22 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 22 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill())),
this._CurrentPage + 1 < this._DialogTextList.length &&
this._DisplayCharacterCount >
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length &&
(this._DrawShadow &&
((c = d.getFont(165)),
null != c && c != a.font && (a.font = c),
(c = U.replace(
('' + B.string(this._DialogTextList[(this._CurrentPage + 1) | 0])).substring(
0,
Math.min(
('' + B.string(this._DialogTextList[(this._CurrentPage + 1) | 0])).length,
this._DisplayCharacterCount -
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length
) | 0
),
'#',
''
)),
(b = 96 + (this._Margin / 2 + 2)),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 52 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX),
(e = a.y + 52 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 52 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill())),
(c = this._FontToUse),
null != c && c != a.font && (a.font = c),
(c = U.replace(
('' + B.string(this._DialogTextList[(this._CurrentPage + 1) | 0])).substring(
0,
Math.min(
('' + B.string(this._DialogTextList[(this._CurrentPage + 1) | 0])).length,
this._DisplayCharacterCount -
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length
) | 0
),
'#',
''
)),
(b = 96 + this._Margin / 2),
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE)),
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (e = a.y + 50 * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX),
(e = a.y + 50 * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (e = a.y + 50 * a.scaleY)),
a.mtx.identity(),
a.mtx.translate(b, e),
(f = null),
(g = a.font),
(g = c + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE),
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g)
? ((c = W.drawnStringCache.h[g]), (c.lifetime = 5), (f = c.img))
: ((h = a.font.font.getTextWidth(c, a.font.letterSpacing, a.font.fontScale)),
(l = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
c,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(c = new Mb()),
(c.img = f),
(c.lifetime = 5),
(W.drawnStringCache.h[g] = c),
W.drawnStringCacheKeys.push(g))),
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, e, f.width, f.height),
a.graphics.endFill()));
},
_event_Updating: function (a) {
if (this.wrapper.enabled && this._Go) {
this.actor.setX(d.getScreenX() + this._Margin / 2);
this._Top
? this.actor.setY(d.getScreenY() + this._Margin / 2)
: this.actor.setY(
d.getScreenY() + d.getScreenHeight() - (this.actor.getHeight() + this._Margin / 2)
);
this._Portrait.setX(this.actor.getX());
this._Portrait.setY(this.actor.getY());
this._DownArrow.setY(this.actor.getY() + (this.actor.getHeight() - 24));
a = this._DialogText;
if (
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
!this._DialogTextHasValue
) {
this._DialogTextHasValue = !0;
this._ParagraphList = [];
a = 0;
for (var b = x.__cast(this._DialogText.split('|'), Array); a < b.length; ) {
var c = b[a];
++a;
this._ParagraphList.push(c);
}
this._DialogTextList = [];
for (
this._ParagraphText =
'' + B.string(this._ParagraphList[(this._CurrentParagraph - 1) | 0]);
!this._Alllinessplit;
)
if (this._ParagraphText.length < this._LineLimit + 1)
(this._Alllinessplit = !0), this._DialogTextList.push(this._ParagraphText);
else
for (
this._SpaceFound = !1,
this._SpaceFinder = Math.min(this._ParagraphText.length, this._LineLimit);
!this._SpaceFound;
)
' ' == this._ParagraphText.charAt(this._SpaceFinder | 0) ||
(('JP' == k.engine.getGameAttribute('Language') ||
'CN' == k.engine.getGameAttribute('Language')) &&
'\u3002' != this._ParagraphText.charAt((this._SpaceFinder + 1) | 0) &&
'\uff1f' != this._ParagraphText.charAt((this._SpaceFinder + 1) | 0) &&
'\uff01' != this._ParagraphText.charAt((this._SpaceFinder + 1) | 0) &&
'\u3001' != this._ParagraphText.charAt((this._SpaceFinder + 1) | 0) &&
'.' != this._ParagraphText.charAt((this._SpaceFinder + 1) | 0))
? ((this._SpaceFound = !0),
'JP' == k.engine.getGameAttribute('Language') ||
'CN' == k.engine.getGameAttribute('Language')
? this._DialogTextList.push(
this._ParagraphText.substring(
0,
(this._LineLimit - (this._LineLimit - this._SpaceFinder) + 1) | 0
)
)
: this._DialogTextList.push(
this._ParagraphText.substring(
0,
(this._LineLimit - (this._LineLimit - this._SpaceFinder)) | 0
)
),
(this._ParagraphText = this._ParagraphText.substring(
(this._LineLimit + 1 - (this._LineLimit - this._SpaceFinder)) | 0,
this._ParagraphText.length
)))
: --this._SpaceFinder;
}
this._CharacterVoice =
'Baby1' == this._Character ||
'Baby2' == this._Character ||
'Baby3' == this._Character ||
'Baby4' == this._Character ||
'Baby5' == this._Character ||
('Baby6' == this._Character && this._NoFirstScreech)
? 'Baby'
: 'Baby6' == this._Character
? 'Baby6'
: 'Boss 1' == this._Character ||
'Boss 2' == this._Character ||
'Boss 3' == this._Character ||
'Boss 4' == this._Character ||
'Boss 5' == this._Character
? 'Boss'
: 'Dadish';
}
},
_event_Text2Working: function (a) {
if (this.wrapper.enabled && this._Go) {
if (this._Alllinessplit) {
if (this._TextScrollingUp)
--this._TextScrollUpDelay,
0 == this._TextScrollUpDelay &&
((this._TextScrollingUp = !1),
(this._DisplayCharacterCount = (
'' + B.string(this._DialogTextList[this._CurrentPage | 0])
).length)),
this._CurrentPage - 1 < this._DialogTextList.length &&
(this._TotalTextLength =
('' + B.string(this._DialogTextList[(this._CurrentPage - 1) | 0])).length +
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length);
else {
this._TotalTextLength =
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length +
('' + B.string(this._DialogTextList[(this._CurrentPage + 1) | 0])).length;
this._CurrentPage < this._DialogTextList.length &&
((this._LastCharacter = (
'' + B.string(this._DialogTextList[this._CurrentPage | 0])
).charAt(
Math.min(
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length,
this._DisplayCharacterCount
) | 0
)),
(this._LastVoiceCharacter = this._DummyTextForVoice.charAt(
this._DummyTextPosition | 0
)));
this._CurrentPage + 1 < this._DialogTextList.length &&
this._DisplayCharacterCount >
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length &&
((this._LastCharacter = (
'' + B.string(this._DialogTextList[(this._CurrentPage + 1) | 0])
).charAt(
(Math.min(
('' + B.string(this._DialogTextList[(this._CurrentPage + 1) | 0])).length,
this._DisplayCharacterCount -
('' + B.string(this._DialogTextList[this._CurrentPage | 0])).length
) -
1) |
0
)),
(this._LastVoiceCharacter = this._DummyTextForVoice.charAt(
this._DummyTextPosition | 0
)));
this._CurrentPage + 2 >= this._DialogTextList.length &&
this._CurrentParagraph == this._ParagraphList.length
? ((this._LastPage = !0), this._AutoClose && (this._AutoClose = !1))
: this._CurrentPage + 2 >= this._DialogTextList.length &&
(this._EndOfParagraph = !0);
if (
'.' == this._LastCharacter ||
'!' == this._LastCharacter ||
'?' == this._LastCharacter ||
this._Start
)
(this._Start = !1), (this._SentencePitch = 6), (this._NewSentence = !1);
' ' == this._LastCharacter && 0 < this._SentencePitch && --this._SentencePitch;
}
this._DisplayCharacterCount >= this._TotalTextLength &&
!this._TextScrollingUp &&
(!this._LastPage || this._ShowDownArrow) &&
(this._PageDownFlash
? this._DownArrow.disableActorDrawing()
: this._DownArrow.enableActorDrawing(),
X.contains(
('' + B.string(this._DialogTextList[(this._CurrentPage + 1) | 0])).split(' '),
'~'
) &&
!this._ActionTextActioned &&
((this._ActionTextActioned = !0), d.shoutToScene('_customEvent_textAction')));
}
this._DisplayCharacterCount >= this._TotalTextLength &&
this._Portrait.getAnimation() != this._Character
? this._Portrait.setAnimation(this._Character)
: this._DisplayCharacterCount >= this._TotalTextLength ||
this._Portrait.getAnimation() == this._Character + ' Speak' ||
('Baby6' == this._Character
? this._Screech
? this._Portrait.setAnimation(this._Character)
: (this._Portrait.setAnimation(this._Character + ' Speak'),
(this._NoFirstScreech = !1))
: this._Portrait.setAnimation(this._Character + ' Speak'));
if (
this._DisplayCharacterCount < this._TotalTextLength &&
(1 <= this._CharacterCountStagger || this._ButtonIsDown || d.isMouseDown())
)
if (
((this._DisplayCharacterCount = Math.min(
this._DisplayCharacterCount + 1,
this._TotalTextLength
)),
(this._DummyTextPosition =
this._DummyTextPosition < this._DummyTextForVoice.length - 1
? this._DummyTextPosition + 1
: 0),
this._SkipSpeech && '#' != this._LastCharacter && '#' != this._LastCharacter)
)
this._SkipSpeech = !1;
else if ('Baby6' != this._Character || this._NoFirstScreech) {
if (
(('JP' != k.engine.getGameAttribute('Language') &&
'CN' != k.engine.getGameAttribute('Language') &&
'KR' != k.engine.getGameAttribute('Language')) ||
'#' == this._LastCharacter ||
(this._LastCharacter = this._LastVoiceCharacter),
X.contains(this._VowelsList, this._LastCharacter) || '#' == this._LastCharacter)
) {
this._SkipSpeech = !0;
if ('y' == this._LastCharacter || 'Y' == this._LastCharacter)
this._LastCharacter = 'E';
'#' == this._LastCharacter || '#' == this._LastCharacter
? ((this._VoiceOff = !0),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(575)))
: this._VoiceOff ||
(0 < this._SentencePitch
? k.engine.getGameAttribute('Sound Disabled') ||
d.playSound(
d.getSoundByName(
this._CharacterVoice +
' Voice ' +
this._LastCharacter.toUpperCase() +
' High'
)
)
: 4 > this._PitchJumpCount
? ((this._PitchJumpCount += 1),
k.engine.getGameAttribute('Sound Disabled') ||
d.playSound(
d.getSoundByName(
this._CharacterVoice + ' Voice ' + this._LastCharacter.toUpperCase()
)
))
: ((this._PitchJumpCount = 0),
k.engine.getGameAttribute('Sound Disabled') ||
d.playSound(
d.getSoundByName(
this._CharacterVoice +
' Voice ' +
this._LastCharacter.toUpperCase() +
' High'
)
)));
}
} else
this._Screech ||
((this._Screech = !0),
d.runLater(1200, function (a) {}, this.actor),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(442)));
this._CharacterCountStagger =
1 > this._CharacterCountStagger ? this._CharacterCountStagger + 1 : 0;
}
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled && this._Go && (this._PageDownFlash = this._PageDownFlash ? !1 : !0);
},
_event_KeyPressed: function (a) {
this.wrapper.enabled &&
(d.isKeyPressed('action1') ||
d.isKeyPressed('action2') ||
d.isKeyPressed('enter') ||
d.isKeyPressed('down')) &&
!this._ButtonIsDown &&
((this._ButtonIsDown = !0),
(this._DownButtonID = this._ButtonInput),
this.actor.say('Dialog Box Logic', '_customEvent_Pressed'));
},
_event_KeyReleased: function (a) {
this.wrapper.enabled &&
this._ButtonIsDown &&
(d.isKeyReleased('action1') ||
d.isKeyReleased('action2') ||
d.isKeyReleased('enter') ||
d.isKeyReleased('down')) &&
((this._ButtonIsDown = !1), (this._DownButtonID = this._ButtonInput));
},
_event_Click: function () {
this.wrapper.enabled && this.actor.say('Dialog Box Logic', '_customEvent_Pressed');
},
_customEvent_Go: function () {
if (!this._Go) {
for (var a = 0, b = d.getActorsOfType(d.getActorType(582)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.disableActorDrawing();
}
this._Go = !0;
this._Margin = 2 * Math.round((0.0714 * d.getScreenWidth()) / 2);
k.engine.gameAttributes.h['Dialog Box Open'] = !0;
d.engine.pause();
this.actor.makeAlwaysSimulate();
ba.setScale('width', d.getScreenWidth() - this._Margin, this.actor);
this.actor.setX(d.getScreenX() + this._Margin / 2);
this.actor.setY(
d.getScreenY() + d.getScreenHeight() - (this.actor.getHeight() + this._Margin / 2)
);
'JP' == k.engine.getGameAttribute('Language') ||
'CN' == k.engine.getGameAttribute('Language')
? (this._LineLimit = Math.floor((d.getScreenWidth() - (96 + 2 * this._Margin)) / 24))
: 'KR' == k.engine.getGameAttribute('Language')
? (this._LineLimit = Math.floor((d.getScreenWidth() - (96 + 2 * this._Margin)) / 19))
: (this._LineLimit = Math.floor((d.getScreenWidth() - (96 + 2 * this._Margin)) / 16));
d.createRecycledActor(d.getActorType(166), this.actor.getX(), this.actor.getY(), 0);
this._Portrait = d.getLastCreatedActor();
this._Character = this._Character1;
this._Portrait.setAnimation(this._Character);
d.createRecycledActor(
d.getActorType(169),
this.actor.getX() + (ba.scaledSize('width', this.actor) - 32),
this.actor.getY() + (this.actor.getHeight() - 24),
0
);
this._DownArrow = d.getLastCreatedActor();
this._DownArrow.makeAlwaysSimulate();
this._DownArrow.disableActorDrawing();
this._VowelsList = [];
this._VowelsList.push('a');
this._VowelsList.push('e');
this._VowelsList.push('i');
this._VowelsList.push('o');
this._VowelsList.push('u');
this._VowelsList.push('y');
this._VowelsList.push('A');
this._VowelsList.push('E');
this._VowelsList.push('I');
this._VowelsList.push('O');
this._VowelsList.push('U');
this._VowelsList.push('Y');
this._VowelsList.push('#');
this._VowelsList.push('#');
this._Start = !0;
'Level 29' == d.getCurrentSceneName() && (this._NoFirstScreech = this._Screech = !0);
}
},
_customEvent_clearDialogBox: function () {
this._Go &&
((this._ActionTextActioned = !1),
(this._TextScrollUpDelay = 0),
(this._TextScrollingUp = !1),
(this._DisplayCharacterCount = 0),
(this._DialogTextList = d.getDefaultValue(this._DialogTextList)),
(this._ParagraphList = d.getDefaultValue(this._ParagraphList)),
(this._ParagraphText = d.getDefaultValue(this._ParagraphText)),
(this._CurrentPage = 0),
(this._Alllinessplit = this._PageDownFlash = this._LastPage = !1),
(this._DialogText = d.getDefaultValue(this._DialogText)),
(this._EndOfParagraph =
this._AutoClose =
this._SpaceFound =
this._DialogTextHasValue =
!1),
(this._SpaceFinder = 0),
(this._CurrentParagraph = 1),
(this._ShowDownArrow = !1));
},
_customEvent_Pressed: function () {
if (this._Go)
if (this._LastPage && this._DisplayCharacterCount >= this._TotalTextLength) {
if (!this._DontClear) {
for (var a = 0, b = d.getActorsOfType(d.getActorType(166)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || d.recycleActor(c);
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(169)); a < b.length; )
(c = b[a]), ++a, null == c || c.dead || c.recycled || d.recycleActor(c);
if (k.engine.getGameAttribute('Direction Hint'))
for (a = 0, b = d.getActorsOfType(d.getActorType(2)); a < b.length; )
if (
((c = b[a]),
++a,
null != c && !c.dead && !c.recycled && !c.getValue('Dude Logic', '_Exiting'))
) {
c = 0;
for (var e = d.getActorsOfType(d.getActorType(582)); c < e.length; ) {
var f = e[c];
++c;
null == f || f.dead || f.recycled || f.enableActorDrawing();
}
}
d.engine.unpause();
a = this._Parent;
(d.isPrimitive(a) ||
('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Parent.shout('_customEvent_dialogComplete');
d.recycleActor(this.actor);
}
} else
this._EndOfParagraph && this._DisplayCharacterCount >= this._TotalTextLength
? ('Baby6' == this._Character && (this._Screech = !1),
(this._EndOfParagraph = !1),
(this._CurrentParagraph += 1),
(this._ParagraphText = d.getDefaultValue(this._ParagraphText)),
(this._DialogTextList = d.getDefaultValue(this._DialogTextList)),
(this._TextScrollUpDelay = this._DisplayCharacterCount = 0),
(this._PageDownFlash = this._TextScrollingUp = !1),
(this._CurrentPage = this._SpaceFinder = 0),
(this._DialogTextHasValue = this._SpaceFound = this._Alllinessplit = !1),
(this._Start = !0),
this._DownArrow.disableActorDrawing(),
this._Character == this._Character1
? (this._Character = this._Character2)
: this._Character == this._Character2 && (this._Character = this._Character1),
this._Top
? (this._Portrait.setAnimation(this._Character), (this._Top = !1))
: (this._Portrait.setAnimation(this._Character), (this._Top = !0)))
: this._DisplayCharacterCount >= this._TotalTextLength &&
((this._CurrentPage += 1),
(this._TextScrollingUp = !0),
(this._TextScrollUpDelay = 3),
this._DownArrow.disableActorDrawing());
},
init: function () {
this._DummyTextForVoice =
'Kia ora. Spit the dummy, this crook cuzzie is as pearler as a heaps good housie. Mean while, in that one episode of Tux Wonder Dogs, you know the one bro, The Topp Twins and Jonah Lomu were up to no good with a bunch of bung chilly bins. The fully sick force of his playing rugby was on par with John Key~x2019s beaut whitebait fritter. Put the jug on will you bro, all these whithouse sifebeater singlets can wait till later. ';
this._DummyTextPosition = d.randomInt(0, this._DummyTextForVoice.length - 4);
'JP' == k.engine.getGameAttribute('Language')
? ((this._DrawShadow = !1), (this._FontToUse = d.getFont(588)))
: 'CN' == k.engine.getGameAttribute('Language')
? ((this._DrawShadow = !1), (this._FontToUse = d.getFont(592)))
: 'KR' == k.engine.getGameAttribute('Language')
? ((this._DrawShadow = !1), (this._FontToUse = d.getFont(593)))
: ((this._DrawShadow = !0), (this._FontToUse = d.getFont(168)));
this.addListener(this.actor.whenDrawing, q(this, this._event_Text));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
d.runPeriodically(18, q(this, this._event_Text2Working), this.actor);
d.runPeriodically(400, q(this, this._event_EveryNsecs), this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_KeyPressed));
this.addListener(this.actor.whenUpdated, q(this, this._event_KeyReleased));
this.addListener(d.engine.whenMousePressed, q(this, this._event_Click));
},
forwardMessage: function (a) {},
__class__: Wu
});
var Xu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h.Delay = '_Delay';
this._Delay = 0;
};
h['scripts.Design_94_94_HiddenSpikeLogic'] = Xu;
Xu.__name__ = 'scripts.Design_94_94_HiddenSpikeLogic';
Xu.__super__ = u;
Xu.prototype = r(u.prototype, {
_Delay: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
('In' == this.actor.getAnimation()
? 5 == this.actor.getCurrentFrame() &&
(this.actor.setAnimation('Out'),
this.actor.isOnScreen() &&
!k.engine.getGameAttribute('Sound Disabled') &&
d.playSoundOnChannel(d.getSound(207), 4))
: 'Out' == this.actor.getAnimation() &&
4 == this.actor.getCurrentFrame() &&
this.actor.setAnimation('In'));
},
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
d.runLater(
1e3 * this._Delay,
function (b) {
a.actor.setAnimation('In');
},
this.actor
);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Xu
});
var Yu = function (a, b, c) {
u.call(this, b);
this.nameMap.h.Actor = 'actor';
this.nameMap.h.Left = '_Left';
this._Left = !1;
this.nameMap.h.Delay = '_Delay';
this._Delay = 0;
this.nameMap.h['Cannonball Speed'] = '_CannonballSpeed';
this._CannonballSpeed = 20;
this.nameMap.h.Frequency = '_Frequency';
this._Frequency = 2;
this.nameMap.h['Boss Cannon'] = '_BossCannon';
this._BossCannon = !1;
this.nameMap.h['Boss Cannon Number'] = '_BossCannonNumber';
this._BossCannonNumber = 0;
this.nameMap.h.Hide = '_Hide';
this._Hide = !1;
};
h['scripts.Design_96_96_CannonLogic'] = Yu;
Yu.__name__ = 'scripts.Design_96_96_CannonLogic';
Yu.__super__ = u;
Yu.prototype = r(u.prototype, {
_Left: null,
_Delay: null,
_CannonballSpeed: null,
_Frequency: null,
_BossCannon: null,
_BossCannonNumber: null,
_Hide: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
'Shoot' == this.actor.getAnimation() &&
3 == this.actor.getCurrentFrame() &&
this.actor.setAnimation('Normal');
},
_customEvent_Shoot: function () {
var a = this;
this.actor.setAnimation('Shoot');
this.actor.isOnScreen() &&
!k.engine.getGameAttribute('Sound Disabled') &&
d.playSound(d.getSound(210));
if (this._Left) {
if (this.actor.isOnScreen()) {
d.startShakingScreen(0.006, 0.05);
for (var b = 0, c = d.getActorsOfType(d.getActorType(2)); b < c.length; ) {
var e = c[b];
++b;
null == e ||
e.dead ||
e.recycled ||
(this.actor.getXCenter() > e.getXCenter()
? d.setValueForScene('Stage Logic', '_RumbleName', 'Cannon Right')
: d.setValueForScene('Stage Logic', '_RumbleName', 'Cannon Left'),
d.sayToScene('Stage Logic', '_customEvent_rumble'));
}
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth(),
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().setAnimation('Smoke');
d.getLastCreatedActor().moveBy(32, 0, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth(),
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().setAnimation('Smoke');
d.getLastCreatedActor().moveBy(32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() + this.actor.getWidth(),
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().setAnimation('Smoke');
d.getLastCreatedActor().moveBy(32, 32, 0.3, J.backOut);
}
d.createRecycledActorOnLayer(
d.getActorType(211),
this.actor.getX() + 32,
this.actor.getY() + 32,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().setAnimation('Right');
d.getLastCreatedActor().setXVelocity(this._CannonballSpeed);
} else {
if (this.actor.isOnScreen()) {
d.startShakingScreen(0.006, 0.05);
b = 0;
for (c = d.getActorsOfType(d.getActorType(2)); b < c.length; ) (e = c[b]), ++b;
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() - 16,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().setAnimation('Smoke');
d.getLastCreatedActor().moveBy(-32, 0, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() - 16,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().setAnimation('Smoke');
d.getLastCreatedActor().moveBy(-32, -32, 0.3, J.backOut);
d.createRecycledActorOnLayer(
d.getActorType(94),
this.actor.getX() - 16,
this.actor.getYCenter() - 8,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().moveToBottom();
d.getLastCreatedActor().setAnimation('Smoke');
d.getLastCreatedActor().moveBy(-32, 32, 0.3, J.backOut);
}
d.createRecycledActorOnLayer(
d.getActorType(211),
this.actor.getX(),
this.actor.getY() + 32,
d.engine.getLayerById(this.actor.getLayerID())
);
d.getLastCreatedActor().setAnimation('Left');
d.getLastCreatedActor().setXVelocity(-this._CannonballSpeed);
}
this._BossCannon &&
d.runLater(
400,
function (b) {
if (a.actor.getType() == d.getActorType(208)) {
a._Hide = !0;
a.actor.moveBy(-32, 0, 0.4, J.quadInOut);
b = 0;
for (var c = d.getActorsOfType(d.getActorType(213)); b < c.length; ) {
var e = c[b];
++b;
null == e ||
e.dead ||
e.recycled ||
1 != e.getValue('Cannon Logic', '_Hide') ||
(e.setValue('Cannon Logic', '_Hide', !1), e.moveBy(-32, 0, 0.4, J.quadInOut));
}
} else
for (
a._Hide = !0,
a.actor.moveBy(32, 0, 0.4, J.quadInOut),
b = 0,
c = d.getActorsOfType(d.getActorType(208));
b < c.length;
)
(e = c[b]),
++b,
null == e ||
e.dead ||
e.recycled ||
1 != e.getValue('Cannon Logic', '_Hide') ||
(e.setValue('Cannon Logic', '_Hide', !1),
e.moveBy(32, 0, 0.4, J.quadInOut));
},
this.actor
);
this._BossCannon ||
d.runLater(
1e3 * this._Frequency,
function (b) {
a.actor.say('Cannon Logic', '_customEvent_Shoot');
},
this.actor
);
},
init: function () {
var a = this;
this.actor.getType() == d.getActorType(208) && (this._Left = !0);
if (this._BossCannon) {
var b = this.actor;
if (0 == b.physicsMode)
for (b = b.getBody().getFixtureList(); null != b; )
b.getBody().DestroyFixture(b), (b = b.getNext());
} else
d.runLater(
1e3 * this._Delay,
function (b) {
a.actor.say('Cannon Logic', '_customEvent_Shoot');
},
this.actor
);
this._Hide && this.actor.setX(this.actor.getX() - 32);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Yu
});
var ix = function () {};
h['scripts.MyScripts'] = ix;
ix.__name__ = 'scripts.MyScripts';
var Zu = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_11'] = Zu;
Zu.__name__ = 'scripts.SceneEvents_11';
Zu.__super__ = sa;
Zu.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Zu
});
var $u = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_13'] = $u;
$u.__name__ = 'scripts.SceneEvents_13';
$u.__super__ = sa;
$u.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: $u
});
var av = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_16'] = av;
av.__name__ = 'scripts.SceneEvents_16';
av.__super__ = sa;
av.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: av
});
var bv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_17'] = bv;
bv.__name__ = 'scripts.SceneEvents_17';
bv.__super__ = sa;
bv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: bv
});
var cv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_18'] = cv;
cv.__name__ = 'scripts.SceneEvents_18';
cv.__super__ = sa;
cv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: cv
});
var dv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_19'] = dv;
dv.__name__ = 'scripts.SceneEvents_19';
dv.__super__ = sa;
dv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: dv
});
var ev = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_20'] = ev;
ev.__name__ = 'scripts.SceneEvents_20';
ev.__super__ = sa;
ev.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: ev
});
var fv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_21'] = fv;
fv.__name__ = 'scripts.SceneEvents_21';
fv.__super__ = sa;
fv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: fv
});
var gv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_22'] = gv;
gv.__name__ = 'scripts.SceneEvents_22';
gv.__super__ = sa;
gv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: gv
});
var hv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_23'] = hv;
hv.__name__ = 'scripts.SceneEvents_23';
hv.__super__ = sa;
hv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: hv
});
var iv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_24'] = iv;
iv.__name__ = 'scripts.SceneEvents_24';
iv.__super__ = sa;
iv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: iv
});
var jv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_25'] = jv;
jv.__name__ = 'scripts.SceneEvents_25';
jv.__super__ = sa;
jv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: jv
});
var kv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_26'] = kv;
kv.__name__ = 'scripts.SceneEvents_26';
kv.__super__ = sa;
kv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: kv
});
var lv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_27'] = lv;
lv.__name__ = 'scripts.SceneEvents_27';
lv.__super__ = sa;
lv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: lv
});
var mv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_28'] = mv;
mv.__name__ = 'scripts.SceneEvents_28';
mv.__super__ = sa;
mv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: mv
});
var nv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_29'] = nv;
nv.__name__ = 'scripts.SceneEvents_29';
nv.__super__ = sa;
nv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: nv
});
var ov = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_30'] = ov;
ov.__name__ = 'scripts.SceneEvents_30';
ov.__super__ = sa;
ov.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: ov
});
var pv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_31'] = pv;
pv.__name__ = 'scripts.SceneEvents_31';
pv.__super__ = sa;
pv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: pv
});
var qv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_32'] = qv;
qv.__name__ = 'scripts.SceneEvents_32';
qv.__super__ = sa;
qv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: qv
});
var rv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_33'] = rv;
rv.__name__ = 'scripts.SceneEvents_33';
rv.__super__ = sa;
rv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: rv
});
var sv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_34'] = sv;
sv.__name__ = 'scripts.SceneEvents_34';
sv.__super__ = sa;
sv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: sv
});
var tv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_35'] = tv;
tv.__name__ = 'scripts.SceneEvents_35';
tv.__super__ = sa;
tv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: tv
});
var uv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_36'] = uv;
uv.__name__ = 'scripts.SceneEvents_36';
uv.__super__ = sa;
uv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: uv
});
var vv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_37'] = vv;
vv.__name__ = 'scripts.SceneEvents_37';
vv.__super__ = sa;
vv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: vv
});
var wv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_38'] = wv;
wv.__name__ = 'scripts.SceneEvents_38';
wv.__super__ = sa;
wv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: wv
});
var xv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_39'] = xv;
xv.__name__ = 'scripts.SceneEvents_39';
xv.__super__ = sa;
xv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: xv
});
var yv = function (a, b) {
d.call(this);
this.nameMap.h['Can Start'] = '_CanStart';
this._CanStart = !1;
this.nameMap.h['Flash On'] = '_FlashOn';
this._FlashOn = !1;
this.nameMap.h.Logo = '_Logo';
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Transition Col Count'] = '_TransitionColCount';
this._TransitionColCount = 0;
this.nameMap.h['Transition Type'] = '_TransitionType';
this._TransitionType = 0;
this.nameMap.h.Go = '_Go';
this._Go = !1;
this.nameMap.h['Jumping Dadish'] = '_JumpingDadish';
this.nameMap.h['Transition X Center'] = '_TransitionXCenter';
this._TransitionXCenter = 0;
this.nameMap.h['Transition Y Center'] = '_TransitionYCenter';
this._TransitionYCenter = 0;
this.nameMap.h['Main Menu Walls Height'] = '_MainMenuWallsHeight';
this._MainMenuWallsHeight = 0;
this.nameMap.h['Clouds Width'] = '_CloudsWidth';
this._CloudsWidth = 0;
this.nameMap.h['Back Clouds Pacer'] = '_BackCloudsPacer';
this._BackCloudsPacer = !1;
this.nameMap.h['Settings Button'] = '_SettingsButton';
this.nameMap.h['Settings is Open'] = '_SettingsisOpen';
this._SettingsisOpen = !1;
this.nameMap.h['Set Landscape Left'] = '_SetLandscapeLeft';
this._SetLandscapeLeft = !1;
this.nameMap.h['Touch To Start Text'] = '_TouchToStartText';
this._TouchToStartText = '';
this.nameMap.h['Touch To Start Font'] = '_TouchToStartFont';
this.nameMap.h['CONTROL TEST'] = '_CONTROLTEST';
this._CONTROLTEST = '';
this.nameMap.h['Button Input'] = '_ButtonInput';
this._ButtonInput = '';
this.nameMap.h['Show Exit Text'] = '_ShowExitText';
this._ShowExitText = !1;
};
h['scripts.SceneEvents_4'] = yv;
yv.__name__ = 'scripts.SceneEvents_4';
yv.__super__ = sa;
yv.prototype = r(sa.prototype, {
_CanStart: null,
_FlashOn: null,
_Logo: null,
_Dude: null,
_TransitionColCount: null,
_TransitionType: null,
_Go: null,
_JumpingDadish: null,
_TransitionXCenter: null,
_TransitionYCenter: null,
_MainMenuWallsHeight: null,
_CloudsWidth: null,
_BackCloudsPacer: null,
_SettingsButton: null,
_SettingsisOpen: null,
_SetLandscapeLeft: null,
_TouchToStartText: null,
_TouchToStartFont: null,
_CONTROLTEST: null,
_ButtonInput: null,
_ShowExitText: null,
_event_Camera: function (a) {
this.wrapper.enabled &&
d.engine.moveCamera(d.getSceneWidth() / 2, d.getSceneHeight() / 2);
},
_event_AfterNsecs: function (a) {
this.wrapper.enabled && (this._CanStart = !0);
},
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
if (this._CanStart && this._FlashOn) {
var e = this._Logo;
e = d.isPrimitive(e)
? !0
: 'string' == typeof e
? '' != x.__cast(e, String)
: null != e;
} else e = !1;
if (e && !k.engine.getGameAttribute('Settings Open')) {
e = this._TouchToStartFont;
null != e && e != a.font && (a.font = e);
e = this._TouchToStartText;
b =
d.getScreenWidth() / 2 - a.font.getTextWidth(this._TouchToStartText) / k.SCALE / 2;
c = d.getScreenHeight() / 2 - 124 + this._Logo.getHeight() + 30;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
var f = null,
g = a.font;
g = e + ':' + g.ID + ':' + a.alpha + ':' + g.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, g))
(e = W.drawnStringCache.h[g]), (e.lifetime = 5), (f = e.img);
else {
var h = a.font.font.getTextWidth(e, a.font.letterSpacing, a.font.fontScale),
l = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < h &&
0 < l &&
((f = new ja(h, l, !0, 0)),
a.font.font.renderToImg(
f,
e,
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(e = new Mb()),
(e.img = f),
(e.lifetime = 5),
(W.drawnStringCache.h[g] = e),
W.drawnStringCacheKeys.push(g));
}
null != f &&
(a.graphics.beginBitmapFill(f, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, f.width, f.height),
a.graphics.endFill());
}
a = 0;
for (e = d.getActorsOfType(d.getActorType(475)); a < e.length; )
(b = e[a]),
++a,
null == b ||
b.dead ||
b.recycled ||
(b.setX(b.getX() - 1),
b.getX() <= -this._CloudsWidth &&
b.setX(this._CloudsWidth * Math.ceil(d.getScreenWidth() / this._CloudsWidth)));
if (this._BackCloudsPacer) this._BackCloudsPacer = !1;
else
for (
this._BackCloudsPacer = !0, a = 0, e = d.getActorsOfType(d.getActorType(477));
a < e.length;
)
(b = e[a]),
++a,
null == b ||
b.dead ||
b.recycled ||
(b.setX(b.getX() - 1),
b.getX() <= -this._CloudsWidth &&
b.setX(
this._CloudsWidth * Math.ceil(d.getScreenWidth() / this._CloudsWidth)
));
}
},
_event_Language: function (a) {
this.wrapper.enabled &&
((this._TouchToStartFont = d.getFont(479)),
'JP' == k.engine.getGameAttribute('Language')
? ((this._TouchToStartText =
'~x3044~x305a~x308c~x304b~x306e~x30ad~x30fc~x3092~x62bc~x3059'),
(this._TouchToStartFont = d.getFont(591)))
: 'CN' == k.engine.getGameAttribute('Language')
? ((this._TouchToStartText = '~x6309~x4e0b~x4efb~x610f~x952e'),
(this._TouchToStartFont = d.getFont(594)))
: 'KR' == k.engine.getGameAttribute('Language')
? ((this._TouchToStartText = '~xc544~xbb34 ~xd0a4~xb098 ~xb204~xb974~xc138~xc694'),
(this._TouchToStartFont = d.getFont(595)))
: (this._TouchToStartText = 'PRESS ANY KEY'));
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled && (this._FlashOn = this._FlashOn ? !1 : !0);
},
_event_AnyKey: function (a) {
var b = this;
if (
this.wrapper.enabled &&
(d.engine.unpause(),
!k.engine.getGameAttribute('Settings Open') &&
this._CanStart &&
!this._Go &&
((this._CanStart = !1),
d.recycleActor(this._SettingsButton),
(this._SettingsButton = d.getDefaultValue(this._SettingsButton)),
(this._Go = !0),
(a = this._Logo),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)))
) {
'JP' == k.engine.getGameAttribute('Language')
? (this._Logo.setAnimation('JP No Dadish'),
d.createRecycledActorOnLayer(
d.getActorType(232),
this._Logo.getX() + 126,
this._Logo.getY() + 6,
d.engine.getLayerById(this._Logo.getLayerID())
))
: 'CN' == k.engine.getGameAttribute('Language')
? (this._Logo.setAnimation('CN No Dadish'),
d.createRecycledActorOnLayer(
d.getActorType(232),
this._Logo.getX() + 98,
this._Logo.getY() + 6,
d.engine.getLayerById(this._Logo.getLayerID())
))
: (this._Logo.setAnimation('No Dadish'),
d.createRecycledActorOnLayer(
d.getActorType(232),
this._Logo.getX() + 76,
this._Logo.getY() + 6,
d.engine.getLayerById(this._Logo.getLayerID())
));
this._JumpingDadish = d.getLastCreatedActor();
this._JumpingDadish.moveToBottom();
a = 0;
for (var c = d.getActorsOfType(d.getActorType(475)); a < c.length; ) {
var e = c[a];
++a;
null == e || e.dead || e.recycled || e.moveToBottom();
}
a = 0;
for (c = d.getActorsOfType(d.getActorType(477)); a < c.length; )
(e = c[a]), ++a, null == e || e.dead || e.recycled || e.moveToBottom();
d.stopAllSounds();
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(119));
this._JumpingDadish.moveBy(0, -120, 0.6, J.quadOut);
d.runLater(
200,
function (a) {
b._JumpingDadish.setAnimation('Jump');
},
null
);
d.runLater(
620,
function (a) {
b._JumpingDadish.moveToTop();
b._JumpingDadish.moveTo(
b._JumpingDadish.getX(),
d.getScreenY() + (d.getScreenHeight() + 10),
d.getScreenHeight() / 600,
J.quadIn
);
d.runLater(
1e3 * (d.getScreenHeight() / 600 + 0.1),
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 2);
d.sayToScene('Transitions', '_customEvent_transitionOut');
d.runLater(
1e3,
function (a) {
if (31 <= k.engine.getGameAttribute('Last Stage Played')) {
a = Fa.get().scenes.h[8].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e));
k.engine.gameAttributes.h['Start Overworld Music'] = !0;
} else
21 <= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[7].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0))
: 11 <= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[6].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0))
: 1 >= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[57].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)))
: ((a = Fa.get().scenes.h[5].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0));
},
null
);
},
null
);
},
null
);
}
},
_event_MultiTouch: function (a) {
var b = this;
if (
this.wrapper.enabled &&
(d.engine.unpause(),
(k.engine.gameAttributes.h['MOBILE MODE'] = !0),
!k.engine.getGameAttribute('Settings Open') &&
this._CanStart &&
!this._Go &&
((this._CanStart = !1),
d.recycleActor(this._SettingsButton),
(this._SettingsButton = d.getDefaultValue(this._SettingsButton)),
(this._Go = !0),
(a = this._Logo),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)))
) {
'JP' == k.engine.getGameAttribute('Language')
? (this._Logo.setAnimation('JP No Dadish'),
d.createRecycledActorOnLayer(
d.getActorType(232),
this._Logo.getX() + 126,
this._Logo.getY() + 6,
d.engine.getLayerById(this._Logo.getLayerID())
))
: 'CN' == k.engine.getGameAttribute('Language')
? (this._Logo.setAnimation('CN No Dadish'),
d.createRecycledActorOnLayer(
d.getActorType(232),
this._Logo.getX() + 98,
this._Logo.getY() + 6,
d.engine.getLayerById(this._Logo.getLayerID())
))
: (this._Logo.setAnimation('No Dadish'),
d.createRecycledActorOnLayer(
d.getActorType(232),
this._Logo.getX() + 76,
this._Logo.getY() + 6,
d.engine.getLayerById(this._Logo.getLayerID())
));
this._JumpingDadish = d.getLastCreatedActor();
this._JumpingDadish.moveToBottom();
a = 0;
for (var c = d.getActorsOfType(d.getActorType(475)); a < c.length; ) {
var e = c[a];
++a;
null == e || e.dead || e.recycled || e.moveToBottom();
}
a = 0;
for (c = d.getActorsOfType(d.getActorType(477)); a < c.length; )
(e = c[a]), ++a, null == e || e.dead || e.recycled || e.moveToBottom();
d.stopAllSounds();
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(119));
this._JumpingDadish.moveBy(0, -120, 0.6, J.quadOut);
d.runLater(
200,
function (a) {
b._JumpingDadish.setAnimation('Jump');
},
null
);
d.runLater(
620,
function (a) {
b._JumpingDadish.moveToTop();
b._JumpingDadish.moveTo(
b._JumpingDadish.getX(),
d.getScreenY() + (d.getScreenHeight() + 10),
d.getScreenHeight() / 600,
J.quadIn
);
d.runLater(
1e3 * (d.getScreenHeight() / 600 + 0.1),
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 2);
d.sayToScene('Transitions', '_customEvent_transitionOut');
d.runLater(
1e3,
function (a) {
if (31 <= k.engine.getGameAttribute('Last Stage Played')) {
a = Fa.get().scenes.h[8].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e));
k.engine.gameAttributes.h['Start Overworld Music'] = !0;
} else
21 <= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[7].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0))
: 11 <= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[6].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0))
: 1 >= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[57].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)))
: ((a = Fa.get().scenes.h[5].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0));
},
null
);
},
null
);
},
null
);
}
},
_event_Click: function () {
var a = this;
if (
this.wrapper.enabled &&
(d.engine.unpause(),
!k.engine.getGameAttribute('Settings Open') && this._CanStart && !this._Go)
) {
this._CanStart = !1;
d.recycleActor(this._SettingsButton);
this._SettingsButton = d.getDefaultValue(this._SettingsButton);
this._Go = !0;
var b = this._Logo;
if (
d.isPrimitive(b) ||
('string' == typeof b ? '' != x.__cast(b, String) : null != b)
) {
'JP' == k.engine.getGameAttribute('Language')
? (this._Logo.setAnimation('JP No Dadish'),
d.createRecycledActorOnLayer(
d.getActorType(232),
this._Logo.getX() + 126,
this._Logo.getY() + 6,
d.engine.getLayerById(this._Logo.getLayerID())
))
: 'CN' == k.engine.getGameAttribute('Language')
? (this._Logo.setAnimation('CN No Dadish'),
d.createRecycledActorOnLayer(
d.getActorType(232),
this._Logo.getX() + 98,
this._Logo.getY() + 6,
d.engine.getLayerById(this._Logo.getLayerID())
))
: (this._Logo.setAnimation('No Dadish'),
d.createRecycledActorOnLayer(
d.getActorType(232),
this._Logo.getX() + 76,
this._Logo.getY() + 6,
d.engine.getLayerById(this._Logo.getLayerID())
));
this._JumpingDadish = d.getLastCreatedActor();
this._JumpingDadish.moveToBottom();
b = 0;
for (var c = d.getActorsOfType(d.getActorType(475)); b < c.length; ) {
var e = c[b];
++b;
null == e || e.dead || e.recycled || e.moveToBottom();
}
b = 0;
for (c = d.getActorsOfType(d.getActorType(477)); b < c.length; )
(e = c[b]), ++b, null == e || e.dead || e.recycled || e.moveToBottom();
d.stopAllSounds();
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(119));
this._JumpingDadish.moveBy(0, -120, 0.6, J.quadOut);
d.runLater(
200,
function (b) {
a._JumpingDadish.setAnimation('Jump');
},
null
);
d.runLater(
620,
function (b) {
a._JumpingDadish.moveToTop();
a._JumpingDadish.moveTo(
a._JumpingDadish.getX(),
d.getScreenY() + (d.getScreenHeight() + 10),
d.getScreenHeight() / 600,
J.quadIn
);
d.runLater(
1e3 * (d.getScreenHeight() / 600 + 0.1),
function (a) {
d.setValueForScene('Transitions', '_TransitionType', 2);
d.sayToScene('Transitions', '_customEvent_transitionOut');
d.runLater(
1e3,
function (a) {
if (31 <= k.engine.getGameAttribute('Last Stage Played')) {
a = Fa.get().scenes.h[8].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e));
k.engine.gameAttributes.h['Start Overworld Music'] = !0;
} else
21 <= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[7].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0))
: 11 <= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[6].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0))
: 1 >= k.engine.getGameAttribute('Last Stage Played')
? ((a = Fa.get().scenes.h[57].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)))
: ((a = Fa.get().scenes.h[5].getID()),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
(f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e)),
(e = c = b = 0),
null == e && (e = 0),
null == c && (c = 0),
null == b && (b = 0),
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e)),
(k.engine.gameAttributes.h['Start Overworld Music'] = !0));
},
null
);
},
null
);
},
null
);
}
}
},
_customEvent_newLogo: function () {
var a = this._Logo;
if (d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a))
d.recycleActor(this._Logo),
(this._Logo = d.getDefaultValue(this._Logo)),
d.createRecycledActor(
d.getActorType(226),
d.getScreenWidth() / 2 - 145,
d.getScreenHeight() / 2 - 124,
2
),
(this._Logo = d.getLastCreatedActor()),
'JP' == k.engine.getGameAttribute('Language') &&
(this._Logo.setAnimation('JP Idle'),
this._Logo.setX(d.getScreenWidth() / 2 - this._Logo.getWidth() / 2)),
'CN' == k.engine.getGameAttribute('Language') &&
(this._Logo.setAnimation('CN Idle'),
this._Logo.setX(d.getScreenWidth() / 2 - this._Logo.getWidth() / 2)),
this._Logo.shout('_customEvent_Move');
},
init: function () {
var a = this;
d.engine.unpause();
k.engine.gameAttributes.h['MOBILE MODE'] = !1;
d.runLater(
1e3,
function (b) {
a._ShowExitText = !0;
},
null
);
d.engine.moveCamera(d.getSceneWidth() / 2, d.getSceneHeight() / 2);
d.createRecycledActor(d.getActorType(758), 0, 0, 2);
d.stopAllSounds();
d.engine.unpause();
d.createRecycledActor(
d.getActorType(473),
-2,
d.getScreenY() + (d.getScreenHeight() - 50),
2
);
d.createRecycledActor(
d.getActorType(226),
d.getScreenX() + (d.getScreenWidth() / 2 - 145),
d.getScreenY() + (d.getScreenHeight() / 2 - 124),
2
);
this._Logo = d.getLastCreatedActor();
'JP' == k.engine.getGameAttribute('Language') &&
(this._Logo.setAnimation('JP Idle'),
this._Logo.setX(d.getScreenWidth() / 2 - this._Logo.getWidth() / 2));
'CN' == k.engine.getGameAttribute('Language') &&
(this._Logo.setAnimation('CN Idle'),
this._Logo.setX(d.getScreenWidth() / 2 - this._Logo.getWidth() / 2));
this._Logo.shout('_customEvent_Move');
k.engine.gameAttributes.h.Dead = !1;
k.engine.gameAttributes.h['Settings Open'] = !1;
k.engine.gameAttributes.h['Map Enter Left'] = !1;
k.engine.gameAttributes.h['Map Enter Right'] = !1;
k.engine.gameAttributes.h['Boss 1 Dialog Read'] = !1;
k.engine.gameAttributes.h['Boss 2 Dialog Read'] = !1;
k.engine.gameAttributes.h['Boss 3 Dialog Read'] = !1;
k.engine.gameAttributes.h['Boss 4 Dialog Read'] = !1;
k.engine.gameAttributes.h['Boss 5 Dialog Read'] = !1;
k.engine.gameAttributes.h['No Transition'] = !1;
k.engine.gameAttributes.h['Overworld Entered Left'] = !1;
k.engine.gameAttributes.h['Overworld Entered Right'] = !1;
k.engine.gameAttributes.h['Wipe In Left'] = !1;
k.engine.gameAttributes.h['Wipe In Right'] = !1;
k.engine.gameAttributes.h['Checkpoint Passed'] = !1;
k.engine.gameAttributes.h['Dialog Box Open'] = !1;
k.engine.gameAttributes.h['Start Overworld Music'] = !1;
k.engine.gameAttributes.h['Star Collected'] = !1;
k.engine.getGameAttribute('Music Disabled')
? d.setVolumeForChannel(0, 16)
: k.engine.getGameAttribute('Music Disabled') || d.setVolumeForChannel(1, 16);
d.setValueForScene('Transitions', '_TransitionType', 1);
d.sayToScene('Transitions', '_customEvent_transitionIn');
this._CloudsWidth = 960;
for (var b = 0, c = Math.ceil(d.getSceneWidth() / this._CloudsWidth) + 1; b < c; ) {
var e = b++;
d.createRecycledActor(
d.getActorType(475),
this._CloudsWidth * e,
d.getScreenY() + (d.getScreenHeight() - 318),
2
);
d.getLastCreatedActor().moveToBottom();
}
b = 0;
for (c = Math.ceil(d.getSceneWidth() / this._CloudsWidth) + 1; b < c; )
(e = b++),
d.createRecycledActor(
d.getActorType(477),
this._CloudsWidth * e,
d.getScreenY() + (d.getScreenHeight() - 318),
2
),
d.getLastCreatedActor().moveToBottom();
this.addListener(d.engine.whenUpdated, q(this, this._event_Camera));
d.runLater(500, q(this, this._event_AfterNsecs), null);
this.addListener(d.engine.whenDrawing, q(this, this._event_Drawing));
this.addListener(d.engine.whenUpdated, q(this, this._event_Language));
d.runPeriodically(200, q(this, this._event_EveryNsecs), null);
this.addListener(d.engine.whenAnyKeyPressed, q(this, this._event_AnyKey));
this.addListener(d.engine.whenMTStarted, q(this, this._event_MultiTouch));
this.addListener(d.engine.whenMousePressed, q(this, this._event_Click));
},
forwardMessage: function (a) {},
__class__: yv
});
var zv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_41'] = zv;
zv.__name__ = 'scripts.SceneEvents_41';
zv.__super__ = sa;
zv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: zv
});
var Av = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_42'] = Av;
Av.__name__ = 'scripts.SceneEvents_42';
Av.__super__ = sa;
Av.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Av
});
var Bv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_43'] = Bv;
Bv.__name__ = 'scripts.SceneEvents_43';
Bv.__super__ = sa;
Bv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Bv
});
var Cv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_44'] = Cv;
Cv.__name__ = 'scripts.SceneEvents_44';
Cv.__super__ = sa;
Cv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Cv
});
var Dv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_45'] = Dv;
Dv.__name__ = 'scripts.SceneEvents_45';
Dv.__super__ = sa;
Dv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Dv
});
var Ev = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_46'] = Ev;
Ev.__name__ = 'scripts.SceneEvents_46';
Ev.__super__ = sa;
Ev.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Ev
});
var Fv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_47'] = Fv;
Fv.__name__ = 'scripts.SceneEvents_47';
Fv.__super__ = sa;
Fv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Fv
});
var Gv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_48'] = Gv;
Gv.__name__ = 'scripts.SceneEvents_48';
Gv.__super__ = sa;
Gv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Gv
});
var Hv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_49'] = Hv;
Hv.__name__ = 'scripts.SceneEvents_49';
Hv.__super__ = sa;
Hv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Hv
});
var Iv = function (a, b) {
d.call(this);
this.nameMap.h.Overlay = '_Overlay';
this.nameMap.h['Leaf Speed'] = '_LeafSpeed';
this._LeafSpeed = 10;
};
h['scripts.SceneEvents_5'] = Iv;
Iv.__name__ = 'scripts.SceneEvents_5';
Iv.__super__ = sa;
Iv.prototype = r(sa.prototype, {
_Overlay: null,
_LeafSpeed: null,
_event_EveryNsecs: function (a) {
if (this.wrapper.enabled) {
1 == d.randomInt(1, 2)
? (this._LeafSpeed = Math.min(15, this._LeafSpeed + 1))
: (this._LeafSpeed = Math.max(5, this._LeafSpeed - 1));
a = 0;
for (var b = d.randomInt(1, 3); a < b; )
a++,
d.createRecycledActor(
d.getActorType(90),
d.randomInt(
(d.getScreenX() - 128) | 0,
(d.getScreenX() + d.getScreenWidth() - 64) | 0
),
d.getScreenY() - 10,
0
),
d
.getLastCreatedActor()
.setXVelocity(0.002 * this._LeafSpeed * d.randomInt(80, 100)),
d.getLastCreatedActor().setYVelocity(2);
a = 0;
for (b = d.getActorsOfType(d.getActorType(90)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
d
.getLastCreatedActor()
.setXVelocity(0.002 * this._LeafSpeed * d.randomInt(80, 100));
}
}
},
_customEvent_createBorders: function () {
d.createRecycledActor(d.getActorType(255), 0, d.getScreenY(), 1);
d.getLastCreatedActor().moveToBottom();
d.createRecycledActor(
d.getActorType(257),
0,
d.getScreenY() + (d.getScreenHeight() - 80),
1
);
d.getLastCreatedActor().moveToBottom();
},
init: function () {
for (var a = 0; 6 > a; )
a++,
d.createRecycledActor(
d.getActorType(90),
d.randomInt(
(d.getScreenX() - 64) | 0,
(d.getScreenX() + d.getScreenWidth() - 64) | 0
),
d.randomInt(
(d.getScreenY() - 64) | 0,
(d.getScreenY() + d.getScreenHeight() - 64) | 0
),
0
),
d.getLastCreatedActor().setXVelocity(0.002 * this._LeafSpeed * d.randomInt(80, 100)),
d.getLastCreatedActor().setYVelocity(2);
d.runPeriodically(5e3, q(this, this._event_EveryNsecs), null);
},
forwardMessage: function (a) {},
__class__: Iv
});
var Jv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_50'] = Jv;
Jv.__name__ = 'scripts.SceneEvents_50';
Jv.__super__ = sa;
Jv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Jv
});
var Kv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_51'] = Kv;
Kv.__name__ = 'scripts.SceneEvents_51';
Kv.__super__ = sa;
Kv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Kv
});
var Lv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_52'] = Lv;
Lv.__name__ = 'scripts.SceneEvents_52';
Lv.__super__ = sa;
Lv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Lv
});
var Mv = function (a, b) {
d.call(this);
this.nameMap.h.Dude = '_Dude';
};
h['scripts.SceneEvents_53'] = Mv;
Mv.__name__ = 'scripts.SceneEvents_53';
Mv.__super__ = sa;
Mv.prototype = r(sa.prototype, {
_Dude: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
((a = this._Dude),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getX() > d.getScreenX() + (d.getScreenWidth() + 64) &&
(d.sayToScene('Cutscene Logic', '_customEvent_Finished'),
d.stopAllSounds(),
d.recycleActor(this._Dude),
(this._Dude = d.getDefaultValue(this._Dude))));
},
init: function () {
var a = this;
d.loopSoundOnChannel(d.getSound(135), 15);
k.engine.getGameAttribute('Sound Disabled')
? d.setVolumeForChannel(0, 15)
: k.engine.getGameAttribute('Sound Disabled') || d.setVolumeForChannel(1, 15);
d.runLater(
500,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('1 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
700,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('2 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
900,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('3 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1100,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('4 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1300,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('5 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1500,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('1 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1700,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('2 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1900,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('3 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
},
null
);
d.runLater(
2100,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('4 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
},
null
);
d.runLater(
2300,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('5 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
},
null
);
d.runLater(
4e3,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(431),
d.getScreenX() - 48,
504,
d.engine.getLayerById(3)
);
a._Dude = d.getLastCreatedActor();
a._Dude.setAnimation('Walk Right');
a._Dude.setXVelocity(24);
},
null
);
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Mv
});
var Nv = function (a, b) {
d.call(this);
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Beach BG Width'] = '_BeachBGWidth';
this._BeachBGWidth = 0;
this.nameMap.h['Beach BG Created'] = '_BeachBGCreated';
this._BeachBGCreated = !1;
};
h['scripts.SceneEvents_54'] = Nv;
Nv.__name__ = 'scripts.SceneEvents_54';
Nv.__super__ = sa;
Nv.prototype = r(sa.prototype, {
_Dude: null,
_BeachBGWidth: null,
_BeachBGCreated: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
((a = this._Dude),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getX() > d.getScreenX() + (d.getScreenWidth() + 64) &&
(d.sayToScene('Cutscene Logic', '_customEvent_Finished'),
d.stopAllSounds(),
d.recycleActor(this._Dude),
(this._Dude = d.getDefaultValue(this._Dude))));
},
init: function () {
var a = this;
d.createRecycledActorOnLayer(d.getActorType(756), -1, -1, d.engine.getLayerById(7));
d.createRecycledActorOnLayer(d.getActorType(541), 0, 0, d.engine.getLayerById(7));
for (this._BeachBGWidth = d.getLastCreatedActor().getWidth(); !this._BeachBGCreated; )
960 > this._BeachBGWidth
? (d.createRecycledActorOnLayer(
d.getActorType(541),
d.getLastCreatedActor().getX() + d.getLastCreatedActor().getWidth(),
0,
d.engine.getLayerById(7)
),
(this._BeachBGWidth += d.getLastCreatedActor().getWidth()))
: (this._BeachBGCreated = !0);
d.loopSoundOnChannel(d.getSound(148), 15);
k.engine.getGameAttribute('Sound Disabled')
? d.setVolumeForChannel(0, 15)
: k.engine.getGameAttribute('Sound Disabled') || d.setVolumeForChannel(1, 15);
d.runLater(
500,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('1 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
700,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('2 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
900,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('3 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1100,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('4 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1300,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('5 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1500,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('1 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1700,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('2 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1900,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('3 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
},
null
);
d.runLater(
2100,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('4 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
},
null
);
d.runLater(
2300,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('5 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
},
null
);
d.runLater(
2800,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
d.getLastCreatedActor().setAnimation('6 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setX(d.getScreenX() - 48);
d.getLastCreatedActor().setY(512);
},
null
);
d.runLater(
4500,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(431),
d.getScreenX() - 48,
504,
d.engine.getLayerById(3)
);
a._Dude = d.getLastCreatedActor();
a._Dude.setAnimation('Walk Right');
a._Dude.setXVelocity(24);
},
null
);
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Nv
});
var Ov = function (a, b) {
d.call(this);
this.nameMap.h['Snow Speed'] = '_SnowSpeed';
this._SnowSpeed = 0;
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['First Baby'] = '_FirstBaby';
this.nameMap.h.Fries = '_Fries';
this.nameMap.h['Fries Shocked'] = '_FriesShocked';
this._FriesShocked = !1;
this.nameMap.h.Exclamation = '_Exclamation';
this.nameMap.h['Fries Run'] = '_FriesRun';
this._FriesRun = !1;
this.nameMap.h['Fries Dead'] = '_FriesDead';
this._FriesDead = !1;
this.nameMap.h['Beach BG Width'] = '_BeachBGWidth';
this._BeachBGWidth = 0;
this.nameMap.h['Beach BG Created'] = '_BeachBGCreated';
this._BeachBGCreated = !1;
};
h['scripts.SceneEvents_55'] = Ov;
Ov.__name__ = 'scripts.SceneEvents_55';
Ov.__super__ = sa;
Ov.prototype = r(sa.prototype, {
_SnowSpeed: null,
_Dude: null,
_FirstBaby: null,
_Fries: null,
_FriesShocked: null,
_Exclamation: null,
_FriesRun: null,
_FriesDead: null,
_BeachBGWidth: null,
_BeachBGCreated: null,
_event_Snow: function (a) {
if (this.wrapper.enabled) {
d.createRecycledActorOnLayer(d.getActorType(754), -1, -1, d.engine.getLayerById(7));
d.createRecycledActorOnLayer(d.getActorType(615), 0, 0, d.engine.getLayerById(7));
for (this._BeachBGWidth = d.getLastCreatedActor().getWidth(); !this._BeachBGCreated; )
960 > this._BeachBGWidth
? (d.createRecycledActorOnLayer(
d.getActorType(615),
d.getLastCreatedActor().getX() + d.getLastCreatedActor().getWidth(),
0,
d.engine.getLayerById(7)
),
(this._BeachBGWidth += d.getLastCreatedActor().getWidth()))
: (this._BeachBGCreated = !0);
1 == d.randomInt(1, 2) &&
(1 == d.randomInt(1, 2)
? (this._SnowSpeed = Math.min(this._SnowSpeed + 1, 12))
: (this._SnowSpeed = Math.max(this._SnowSpeed - 1, -12)));
a = 0;
for (var b = d.randomInt(1, 3); a < b; )
a++,
d.createRecycledActorOnLayer(
d.getActorType(155),
d.randomInt(
(d.getScreenX() - d.getScreenWidth() / 2) | 0,
(d.getScreenX() + (d.getScreenWidth() + d.getScreenWidth() / 2)) | 0
),
d.getScreenY() - 16 - d.randomInt(0, d.getScreenHeight()),
d.engine.getLayerById(6)
);
}
},
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled &&
((a = this._Fries),
d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)
? ((a = this._FirstBaby),
(a = d.isPrimitive(a)
? !0
: 'string' == typeof a
? '' != x.__cast(a, String)
: null != a))
: (a = !1),
a &&
(260 > this._Fries.getX() - this._FirstBaby.getX() &&
!this._FriesShocked &&
((this._FriesShocked = !0),
d.createRecycledActor(
d.getActorType(131),
this._Fries.getXCenter() - 14,
this._Fries.getY() - 28,
0
),
(this._Exclamation = d.getLastCreatedActor()),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(373)),
this._Fries.setYVelocity(-20)),
160 > this._Fries.getX() - this._FirstBaby.getX() &&
!this._FriesRun &&
((this._FriesRun = !0),
d.recycleActor(this._Exclamation),
this._Fries.setAnimation('Right'),
d.runLater(
100,
function (a) {
b._Fries.setXVelocity(16);
},
null
)),
5 > this._Fries.getX() - this._FirstBaby.getX() &&
!this._FriesDead &&
((this._FriesDead = !0),
d.createRecycledActorOnLayer(
d.getActorType(445),
this._Fries.getX() - 8,
this._Fries.getY() + 6,
d.engine.getLayerById(3)
),
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(378)),
d.recycleActor(this._Fries),
(this._Fries = d.getDefaultValue(this._Fries)))));
},
_event_Updating2: function (a) {
this.wrapper.enabled &&
((a = this._Dude),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getX() > d.getScreenX() + (d.getScreenWidth() + 64) &&
(d.sayToScene('Cutscene Logic', '_customEvent_Finished'),
d.stopAllSounds(),
d.recycleActor(this._Dude),
(this._Dude = d.getDefaultValue(this._Dude))));
},
init: function () {
var a = this;
d.loopSoundOnChannel(d.getSound(157), 15);
k.engine.getGameAttribute('Sound Disabled')
? d.setVolumeForChannel(0, 15)
: k.engine.getGameAttribute('Sound Disabled') || d.setVolumeForChannel(1, 15);
d.createRecycledActorOnLayer(
d.getActorType(443),
d.getSceneWidth() / 2 - 18,
496,
d.engine.getLayerById(3)
);
this._Fries = d.getLastCreatedActor();
d.runLater(
500,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('1 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
a._FirstBaby = d.getLastCreatedActor();
},
null
);
d.runLater(
700,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('2 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
900,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('3 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1100,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('4 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1300,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('5 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1500,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('1 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1700,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('2 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1900,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('3 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
},
null
);
d.runLater(
2100,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('4 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
},
null
);
d.runLater(
2300,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('5 Right Jump');
d.getLastCreatedActor().setXVelocity(30);
},
null
);
d.runLater(
3500,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(431),
d.getScreenX() - 48,
504,
d.engine.getLayerById(3)
);
a._Dude = d.getLastCreatedActor();
a._Dude.setAnimation('Walk Right');
a._Dude.setXVelocity(24);
},
null
);
for (var b = 0; 24 > b; )
b++,
d.createRecycledActor(
d.getActorType(155),
d.randomInt(
(d.getScreenX() - d.getScreenWidth() / 2) | 0,
(d.getScreenX() + (d.getScreenWidth() + d.getScreenWidth() / 2)) | 0
),
d.randomInt(
(d.getScreenY() - d.getScreenHeight() / 2) | 0,
(d.getScreenY() + d.getScreenHeight() / 2) | 0
),
0
);
d.runPeriodically(300, q(this, this._event_Snow), null);
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating));
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating2));
},
forwardMessage: function (a) {},
__class__: Ov
});
var Pv = function (a, b) {
d.call(this);
this.nameMap.h.Dude = '_Dude';
this.nameMap.h.Boss = '_Boss';
};
h['scripts.SceneEvents_56'] = Pv;
Pv.__name__ = 'scripts.SceneEvents_56';
Pv.__super__ = sa;
Pv.prototype = r(sa.prototype, {
_Dude: null,
_Boss: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
((a = this._Boss),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Boss.getX() > d.getScreenX() + (d.getScreenWidth() + 64) &&
(d.sayToScene('Cutscene Logic', '_customEvent_Finished'),
d.stopAllSounds(),
d.recycleActor(this._Boss),
(this._Boss = d.getDefaultValue(this._Boss))),
(a = this._Dude),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getX() > d.getScreenX() + (d.getScreenWidth() + 64) &&
(d.recycleActor(this._Dude), (this._Dude = d.getDefaultValue(this._Dude))));
},
init: function () {
var a = this;
d.loopSoundOnChannel(d.getSound(196), 15);
k.engine.getGameAttribute('Sound Disabled')
? d.setVolumeForChannel(0, 15)
: k.engine.getGameAttribute('Sound Disabled') || d.setVolumeForChannel(1, 15);
d.runLater(
500,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('1 Right Jump');
d.getLastCreatedActor().setXVelocity(40);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
700,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('2 Right Jump');
d.getLastCreatedActor().setXVelocity(40);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
900,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('3 Right Jump');
d.getLastCreatedActor().setXVelocity(40);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1100,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('4 Right Jump');
d.getLastCreatedActor().setXVelocity(40);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1300,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('5 Right Jump');
d.getLastCreatedActor().setXVelocity(40);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1500,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('1 Right Jump');
d.getLastCreatedActor().setXVelocity(40);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1700,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('2 Right Jump');
d.getLastCreatedActor().setXVelocity(40);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
1900,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('3 Right Jump');
d.getLastCreatedActor().setXVelocity(40);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
2100,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('4 Right Jump');
d.getLastCreatedActor().setXVelocity(40);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
2300,
function (a) {
d.createRecycledActorOnLayer(
d.getActorType(433),
d.getScreenX() - 48,
512,
d.engine.getLayerById(3)
);
k.engine.getGameAttribute('Possum Mode')
? d.getLastCreatedActor().setAnimation('6 Right Jump')
: d.getLastCreatedActor().setAnimation('5 Right Jump');
d.getLastCreatedActor().setXVelocity(40);
d.getLastCreatedActor().setYVelocity(-30);
},
null
);
d.runLater(
3e3,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(431),
d.getScreenX() - 48,
504,
d.engine.getLayerById(3)
);
a._Dude = d.getLastCreatedActor();
a._Dude.setAnimation('Walk Right');
a._Dude.setXVelocity(34);
},
null
);
d.runLater(
3500,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(447),
d.getScreenX() - 96,
402,
d.engine.getLayerById(3)
);
a._Boss = d.getLastCreatedActor();
},
null
);
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Pv
});
var Qv = function (a, b) {
d.call(this);
this.nameMap.h.Dude = '_Dude';
this.nameMap.h.Balloon = '_Balloon';
this.nameMap.h['Last Baby'] = '_LastBaby';
this._LastBaby = !1;
this.nameMap.h['Wake Dude'] = '_WakeDude';
this._WakeDude = !1;
this.nameMap.h['Beach BG Width'] = '_BeachBGWidth';
this._BeachBGWidth = 0;
this.nameMap.h['Beach BG Created'] = '_BeachBGCreated';
this._BeachBGCreated = !1;
};
h['scripts.SceneEvents_57'] = Qv;
Qv.__name__ = 'scripts.SceneEvents_57';
Qv.__super__ = sa;
Qv.prototype = r(sa.prototype, {
_Dude: null,
_Balloon: null,
_LastBaby: null,
_WakeDude: null,
_BeachBGWidth: null,
_BeachBGCreated: null,
_event_Updating: function (a) {
if (
this.wrapper.enabled &&
((a = this._Dude),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getX() > d.getScreenX() + (d.getScreenWidth() + 64) &&
(d.sayToScene('Cutscene Logic', '_customEvent_Finished'),
d.stopAllSounds(),
d.recycleActor(this._Dude),
(this._Dude = d.getDefaultValue(this._Dude))),
(a = this._Balloon),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Balloon.getX() > d.getScreenX() + d.getScreenWidth())
) {
d.recycleActor(this._Balloon);
a = 0;
for (var b = d.getActorsOfType(d.getActorType(433)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
(c.setValue('Cutscene Baby Logic', '_BackandForth', !1),
c.setValue('Cutscene Baby Logic', '_Surprised', !1));
}
}
},
_event_ActorCreated: function (a) {
var b = this;
if (this.wrapper.enabled) {
this._LastBaby = !0;
a = 0;
for (var c = d.getActorsOfType(d.getActorType(433)); a < c.length; ) {
var e = c[a];
++a;
null == e || e.dead || e.recycled || !e.isOnScreen() || (this._LastBaby = !1);
}
this._LastBaby &&
!this._WakeDude &&
((this._WakeDude = !0),
d.runLater(
1e3,
function (a) {
b._Dude.shout('_customEvent_Wake');
},
null
));
}
},
init: function () {
var a = this;
d.createRecycledActorOnLayer(d.getActorType(756), -1, -1, d.engine.getLayerById(8));
d.createRecycledActorOnLayer(d.getActorType(541), 0, 0, d.engine.getLayerById(8));
for (this._BeachBGWidth = d.getLastCreatedActor().getWidth(); !this._BeachBGCreated; )
960 > this._BeachBGWidth
? (d.createRecycledActorOnLayer(
d.getActorType(541),
d.getLastCreatedActor().getX() + d.getLastCreatedActor().getWidth(),
0,
d.engine.getLayerById(8)
),
(this._BeachBGWidth += d.getLastCreatedActor().getWidth()))
: (this._BeachBGCreated = !0);
for (var b = 0, c = d.getActorsOfType(d.getActorType(431)); b < c.length; ) {
var e = c[b];
++b;
null == e || e.dead || e.recycled || (this._Dude = e);
}
d.loopSoundOnChannel(d.getSound(148), 15);
k.engine.getGameAttribute('Sound Disabled')
? d.setVolumeForChannel(0, 15)
: k.engine.getGameAttribute('Sound Disabled') || d.setVolumeForChannel(1, 15);
d.runLater(
4e3,
function (b) {
a._Dude.shout('_customEvent_Sleep');
},
null
);
d.runLater(
6e3,
function (b) {
d.createRecycledActorOnLayer(
d.getActorType(452),
d.getScreenX() - 48,
d.getScreenYCenter() - 48 - 48,
d.engine.getLayerById(3)
);
a._Balloon = d.getLastCreatedActor();
a._Balloon.setXVelocity(16);
b = 0;
for (var c = d.getActorsOfType(d.getActorType(433)); b < c.length; ) {
var e = c[b];
++b;
null == e ||
e.dead ||
e.recycled ||
e.setValue('Cutscene Baby Logic', '_Balloon', a._Balloon);
}
},
null
);
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating));
this.addListenerWithKey(
d.engine.whenTypeGroupKilledEvents,
d.getActorType(433),
q(this, this._event_ActorCreated)
);
},
forwardMessage: function (a) {},
__class__: Qv
});
var Rv = function (a, b) {
d.call(this);
this.nameMap.h.Dude = '_Dude';
this.nameMap.h['Can Skip'] = '_CanSkip';
this._CanSkip = !1;
this.nameMap.h['Set Landscape Left'] = '_SetLandscapeLeft';
this._SetLandscapeLeft = !1;
};
h['scripts.SceneEvents_58'] = Rv;
Rv.__name__ = 'scripts.SceneEvents_58';
Rv.__super__ = sa;
Rv.prototype = r(sa.prototype, {
_Dude: null,
_CanSkip: null,
_SetLandscapeLeft: null,
_event_AnyKey: function (a) {
this.wrapper.enabled && d.shoutToScene('_customEvent_Skip');
},
_event_Updating: function (a) {
this.wrapper.enabled &&
(d.engine.moveCamera(d.getSceneWidth() / 2, d.getSceneHeight() / 2),
(a = this._Dude),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._Dude.getY() > d.getScreenHeight() &&
(d.recycleActor(this._Dude),
(this._Dude = d.getDefaultValue(this._Dude)),
d.runLater(
800,
function (a) {
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(480));
a = 0;
for (var b = d.getActorsOfType(d.getActorType(467)); a < b.length; ) {
var e = b[a];
++a;
null == e || e.dead || e.recycled || d.recycleActor(e);
}
a = 0;
for (b = d.getActorsOfType(d.getActorType(459)); a < b.length; )
(e = b[a]), ++a, null == e || e.dead || e.recycled || e.setAnimation('Close');
a = 0;
for (b = d.getActorsOfType(d.getActorType(461)); a < b.length; )
(e = b[a]), ++a, null == e || e.dead || e.recycled || e.setAnimation('Close');
d.runLater(
500,
function (a) {
a = Fa.get().scenes.h[4].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var f = d.createFadeOut(0.2, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, f, d.createFadeIn(0.2, (b << 16) | (c << 8) | e));
},
null
);
},
null
)));
},
_event_AfterNsecs: function (a) {
this.wrapper.enabled && (this._CanSkip = !0);
},
_event_AnyButton: function (a) {
this.wrapper.enabled && d.shoutToScene('_customEvent_Skip');
},
_customEvent_Skip: function () {
if (this._CanSkip) {
this._CanSkip = !1;
var a = Fa.get().scenes.h[4].getID(),
b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var f = d.createCircleOut(0.3, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e));
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(252));
}
},
init: function () {
var a = this;
d.engine.moveCamera(d.getSceneWidth() / 2, d.getSceneHeight() / 2);
d.createRecycledActor(
d.getActorType(457),
d.getScreenX() + (d.getScreenWidth() / 2 - 68),
d.getScreenY() + (d.getScreenHeight() / 2 - 80),
0
);
this._Dude = d.getLastCreatedActor();
d.runLater(
3e3,
function (b) {
d.createRecycledActor(
d.getActorType(461),
d.getScreenX() + (d.getScreenWidth() / 2 - 86),
a._Dude.getY() + 122,
0
);
d.getLastCreatedActor().moveToBottom();
d.createRecycledActor(
d.getActorType(459),
d.getScreenX() + (d.getScreenWidth() / 2 - 86),
-1,
0
);
ba.setScale('height', d.getSceneHeight() / 2 + 43, d.getLastCreatedActor());
d.getLastCreatedActor().moveToBottom();
},
null
);
d.runLater(
6e3,
function (b) {
a._Dude.setAnimation('Wake Up');
k.engine.getGameAttribute('Sound Disabled') || d.playSound(d.getSound(178));
},
null
);
this.addListener(d.engine.whenAnyKeyPressed, q(this, this._event_AnyKey));
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating));
d.runLater(500, q(this, this._event_AfterNsecs), null);
this.addListener(d.engine.whenAnyGamepadPressed, q(this, this._event_AnyButton));
},
forwardMessage: function (a) {},
__class__: Rv
});
var Sv = function (a, b) {
d.call(this);
this.nameMap.h['Top Letterbox'] = '_TopLetterbox';
this.nameMap.h['Bottom Letterbox'] = '_BottomLetterbox';
this.nameMap.h['Layer Number'] = '_LayerNumber';
this._LayerNumber = 0;
this.nameMap.h.Camera = '_Camera';
this.nameMap.h['Area Clear Text List'] = '_AreaClearTextList';
this.nameMap.h['Area Clear Text'] = '_AreaClearText';
this._AreaClearText = '';
this.nameMap.h['Area Clear Total Text Width'] = '_AreaClearTotalTextWidth';
this._AreaClearTotalTextWidth = 0;
this.nameMap.h['Area Clear Text Width'] = '_AreaClearTextWidth';
this._AreaClearTextWidth = 0;
this.nameMap.h['Area Clear Float Up'] = '_AreaClearFloatUp';
this._AreaClearFloatUp = !1;
this.nameMap.h.Credits = '_Credits';
this.nameMap.h['Credits Item Count'] = '_CreditsItemCount';
this._CreditsItemCount = 0;
this.nameMap.h['Last Letter'] = '_LastLetter';
this._LastLetter = !1;
this.nameMap.h['Text Y'] = '_TextY';
this._TextY = 0;
this.nameMap.h['Can Show Credits'] = '_CanShowCredits';
this._CanShowCredits = !1;
this.nameMap.h['Credits Titles'] = '_CreditsTitles';
this.nameMap.h['Title Text List'] = '_TitleTextList';
this.nameMap.h['Title Text Width'] = '_TitleTextWidth';
this._TitleTextWidth = 0;
this.nameMap.h['Title Total Text Width'] = '_TitleTotalTextWidth';
this._TitleTotalTextWidth = 0;
this.nameMap.h['Title Text'] = '_TitleText';
this._TitleText = '';
};
h['scripts.SceneEvents_59'] = Sv;
Sv.__name__ = 'scripts.SceneEvents_59';
Sv.__super__ = sa;
Sv.prototype = r(sa.prototype, {
_TopLetterbox: null,
_BottomLetterbox: null,
_LayerNumber: null,
_Camera: null,
_AreaClearTextList: null,
_AreaClearText: null,
_AreaClearTotalTextWidth: null,
_AreaClearTextWidth: null,
_AreaClearFloatUp: null,
_Credits: null,
_CreditsItemCount: null,
_LastLetter: null,
_TextY: null,
_CanShowCredits: null,
_CreditsTitles: null,
_TitleTextList: null,
_TitleTextWidth: null,
_TitleTotalTextWidth: null,
_TitleText: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
((a = this._TopLetterbox),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._TopLetterbox.setX(d.getScreenX() - 5),
(a = this._BottomLetterbox),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
this._BottomLetterbox.setX(d.getScreenX() - 5));
},
_event_EveryNsecs: function (a) {
this.wrapper.enabled &&
(8 > this._LayerNumber
? (d.fadeTileLayerTo(d.engine.getLayerById(this._LayerNumber | 0), 0, 8),
d.fadeTileLayerTo(d.engine.getLayerById((this._LayerNumber + 10) | 0), 0, 8),
(this._LayerNumber += 1))
: 8 == this._LayerNumber &&
(d.fadeTileLayerTo(d.engine.getLayerById((this._LayerNumber + 10) | 0), 0, 8),
(this._LayerNumber += 1)));
},
_event_CreditsCheck: function (a) {
if (
this.wrapper.enabled &&
this._CanShowCredits &&
this._CreditsItemCount <= this._Credits.length
) {
this._LastLetter = !0;
a = 0;
for (var b = d.getActorsOfType(d.getActorType(523)); a < b.length; ) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._LastLetter = !1);
}
this._LastLetter && d.shoutToScene('_customEvent_showCredits');
}
},
_customEvent_creditsStart: function () {
this._CanShowCredits = !0;
this._TextY =
this._BottomLetterbox.getScreenY() +
(d.getScreenHeight() - this._BottomLetterbox.getScreenY()) / 2;
},
_customEvent_showCredits: function () {
var a = this;
this._AreaClearTextList = [];
this._AreaClearTotalTextWidth = this._AreaClearTextWidth = 0;
this._AreaClearText = '' + B.string(this._Credits[this._CreditsItemCount | 0]);
for (var b = 0, c = this._AreaClearText.length; b < c; ) {
var e = b++;
this._AreaClearTextList.push(this._AreaClearText.charAt(e));
}
b = 0;
for (c = this._AreaClearTextList.length; b < c; )
(e = b++),
(this._AreaClearTotalTextWidth +=
d.getFont(479).getTextWidth('' + B.string(this._AreaClearTextList[e])) / k.SCALE);
b = 0;
for (c = this._AreaClearTextList.length; b < c; )
(e = [b++]),
d.runLater(
(e[0] / 10) * 1e3,
(function (b) {
return function (c) {
d.createRecycledActor(d.getActorType(523), -32, a._TextY + 3, 0);
d.getLastCreatedActor().setValue(
'Area Clear Letter Logic',
'_Letter',
a._AreaClearTextList[b[0]]
);
if (0 < b[0]) {
c = a._AreaClearTextWidth;
var e =
d.getFont(479).getTextWidth('' + B.string(a._AreaClearTextList[b[0] - 1])) /
k.SCALE;
a._AreaClearTextWidth = c + e;
}
a._AreaClearFloatUp
? ((a._AreaClearFloatUp = !1),
d.getLastCreatedActor().setValue('Area Clear Letter Logic', '_Up', !0))
: (a._AreaClearFloatUp = !0);
d.getLastCreatedActor().moveTo(
d.getScreenWidth() / 2 -
a._AreaClearTotalTextWidth / 2 +
a._AreaClearTextWidth,
d.getLastCreatedActor().getY(),
0.4,
J.quadInOut
);
};
})(e),
null
);
this._TitleTextList = [];
this._TitleTotalTextWidth = this._TitleTextWidth = 0;
this._TitleText = '' + B.string(this._CreditsTitles[this._CreditsItemCount | 0]);
this._CreditsItemCount += 1;
b = 0;
for (c = this._TitleText.length; b < c; )
(e = b++), this._TitleTextList.push(this._TitleText.charAt(e));
b = 0;
for (c = this._TitleTextList.length; b < c; )
(e = b++),
(this._TitleTotalTextWidth +=
d.getFont(479).getTextWidth('' + B.string(this._TitleTextList[e])) / k.SCALE);
b = 0;
for (c = this._TitleTextList.length; b < c; )
(e = [b++]),
d.runLater(
(e[0] / 10) * 1e3,
(function (b) {
return function (c) {
d.createRecycledActor(
d.getActorType(523),
-32,
a._TextY - (d.getFont(479).getHeight() / k.SCALE + 3),
0
);
d.getLastCreatedActor().setValue(
'Area Clear Letter Logic',
'_Letter',
a._TitleTextList[b[0]]
);
d.getLastCreatedActor().setValue('Area Clear Letter Logic', '_White', !0);
if (0 < b[0]) {
c = a._TitleTextWidth;
var e =
d.getFont(479).getTextWidth('' + B.string(a._TitleTextList[b[0] - 1])) /
k.SCALE;
a._TitleTextWidth = c + e;
}
d.getLastCreatedActor().moveTo(
d.getScreenWidth() / 2 - a._TitleTotalTextWidth / 2 + a._TitleTextWidth,
d.getLastCreatedActor().getY(),
0.4,
J.quadInOut
);
};
})(e),
null
);
},
init: function () {
var a = this;
d.stopAllSounds();
gb.happyTime(100);
d.runLater(
500,
function (a) {
k.engine.getGameAttribute('Music Disabled') ||
d.playSoundOnChannel(d.getSound(525), 16);
},
null
);
d.engine.moveCamera(d.getScreenWidth() / 2, d.getSceneHeight() / 2 + 268);
d.createRecycledActor(d.getActorType(437), d.getScreenX() - 5, d.getScreenY() - 5, 0);
this._TopLetterbox = d.getLastCreatedActor();
d.createRecycledActor(
d.getActorType(437),
d.getScreenX() - 5,
d.getScreenY() + d.getScreenHeight() / 2,
0
);
this._BottomLetterbox = d.getLastCreatedActor();
d.createRecycledActor(
d.getActorType(514),
d.getScreenWidth() / 2,
d.getSceneHeight() / 2 + 268,
0
);
this._Camera = d.getLastCreatedActor();
d.runLater(
300,
function (b) {
a._TopLetterbox.moveBy(0, -(d.getScreenHeight() / 2), 0.4, J.backOut);
a._BottomLetterbox.moveBy(0, (0.309 * d.getScreenHeight()) / 2, 0.4, J.backOut);
d.runLater(
1e3,
function (b) {
d.recycleActor(a._TopLetterbox);
d.shoutToScene('_customEvent_creditsStart');
},
null
);
},
null
);
this._LayerNumber = 1;
this._Credits = [];
this._CreditsTitles = [];
this._CreditsTitles.push('A GAME BY');
this._Credits.push('TOM YOUNG');
this._CreditsTitles.push('THANKS');
this._Credits.push('NIKI THOMPSON');
this._CreditsTitles.push('THANKS');
this._Credits.push('HADLEY DONALDSON');
this._CreditsTitles.push('THANKS');
this._Credits.push('JOHN MUNRO');
this._CreditsTitles.push('THANKS');
this._Credits.push('JEREMY HANSEN');
this._CreditsTitles.push('THANKS');
this._Credits.push('ROSE YOUNG');
this._CreditsTitles.push('THANKS');
this._Credits.push('...YOU!');
this._CreditsTitles.push(' ');
this._Credits.push('DADISH WILL RETURN IN DADISH 2');
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating));
d.runPeriodically(8e3, q(this, this._event_EveryNsecs), null);
d.runPeriodically(500, q(this, this._event_CreditsCheck), null);
},
forwardMessage: function (a) {},
__class__: Sv
});
var Tv = function (a, b) {
d.call(this);
this.nameMap.h.Overlay = '_Overlay';
this.nameMap.h['Leaf Speed'] = '_LeafSpeed';
this._LeafSpeed = 10;
};
h['scripts.SceneEvents_6'] = Tv;
Tv.__name__ = 'scripts.SceneEvents_6';
Tv.__super__ = sa;
Tv.prototype = r(sa.prototype, {
_Overlay: null,
_LeafSpeed: null,
_customEvent_createBorders: function () {
d.createRecycledActor(d.getActorType(295), 0, d.getScreenY(), 1);
d.getLastCreatedActor().moveToBottom();
d.createRecycledActor(
d.getActorType(293),
0,
d.getScreenY() + (d.getScreenHeight() - 60),
1
);
d.getLastCreatedActor().moveToBottom();
},
init: function () {},
forwardMessage: function (a) {},
__class__: Tv
});
var Uv = function (a, b) {
d.call(this);
this.nameMap.h.Logo = '_Logo';
this.nameMap.h.Copyright = '_Copyright';
this.nameMap.h.Angle = '_Angle';
this._Angle = 0;
this.nameMap.h['Current Orientation'] = '_CurrentOrientation';
this._CurrentOrientation = 0;
this.nameMap.h['Landscape Left'] = '_LandscapeLeft';
this._LandscapeLeft = !1;
};
h['scripts.SceneEvents_60'] = Uv;
Uv.__name__ = 'scripts.SceneEvents_60';
Uv.__super__ = sa;
Uv.prototype = r(sa.prototype, {
_Logo: null,
_Copyright: null,
_Angle: null,
_CurrentOrientation: null,
_LandscapeLeft: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
d.engine.moveCamera(d.getSceneWidth() / 2, d.getSceneHeight() / 2);
},
init: function () {
d.engine.moveCamera(d.getSceneWidth() / 2, d.getSceneHeight() / 2);
d.runLater(
300,
function (a) {
d.loadGame('mySave', function (a) {
'EN' != k.engine.getGameAttribute('Language') &&
((k.engine.gameAttributes.h.Language = 'EN'),
d.saveGame('mySave', function (a) {}));
d.engine.unpause();
a = Fa.get().scenes.h[4].getID();
var b = 0,
e = 0,
f = 0;
null == f && (f = 0);
null == e && (e = 0);
null == b && (b = 0);
var g = d.createFadeOut(0.2, (b << 16) | (e << 8) | f);
f = e = b = 0;
null == f && (f = 0);
null == e && (e = 0);
null == b && (b = 0);
d.switchScene(a, g, d.createFadeIn(0.2, (b << 16) | (e << 8) | f));
});
},
null
);
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating));
},
forwardMessage: function (a) {},
__class__: Uv
});
var Vv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_63'] = Vv;
Vv.__name__ = 'scripts.SceneEvents_63';
Vv.__super__ = sa;
Vv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Vv
});
var Wv = function (a, b) {
d.call(this);
this.nameMap.h['Back Button'] = '_BackButton';
this.nameMap.h['Button Pressed'] = '_ButtonPressed';
this._ButtonPressed = !1;
};
h['scripts.SceneEvents_65'] = Wv;
Wv.__name__ = 'scripts.SceneEvents_65';
Wv.__super__ = sa;
Wv.prototype = r(sa.prototype, {
_BackButton: null,
_ButtonPressed: null,
_event_Updating: function (a) {
if (
this.wrapper.enabled &&
((a = this._BackButton),
(d.isPrimitive(a) || ('string' == typeof a ? '' != x.__cast(a, String) : null != a)) &&
!this._ButtonPressed &&
this._BackButton.isMousePressed())
) {
this._ButtonPressed = !0;
this._BackButton.setAnimation('Down');
d.playSound(d.getSound(119));
k.engine.gameAttributes.h['Ignore Load Fail'] = !0;
a = Fa.get().scenes.h[60].getID();
var b = 0,
c = 0,
e = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
var f = d.createFadeOut(0.1, (b << 16) | (c << 8) | e);
e = c = b = 0;
null == e && (e = 0);
null == c && (c = 0);
null == b && (b = 0);
d.switchScene(a, f, d.createFadeIn(0.1, (b << 16) | (c << 8) | e));
}
},
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
b = d.getFont(479);
null != b && b != a.font && (a.font = b);
b = d.getScreenWidth() / 2 - a.font.getTextWidth('ERROR:') / k.SCALE / 2;
c = d.getScreenHeight() / 2 - 100;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
var e = null,
f = a.font;
f = 'ERROR:' + f.ID + ':' + a.alpha + ':' + f.letterSpacing + ':' + k.SCALE;
if (Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)) {
var g = W.drawnStringCache.h[f];
g.lifetime = 5;
e = g.img;
} else {
g = a.font.font.getTextWidth('ERROR', a.font.letterSpacing, a.font.fontScale);
var h = (a.font.font.getFontHeight() * a.font.fontScale) | 0;
0 < g &&
0 < h &&
((e = new ja(g, h, !0, 0)),
a.font.font.renderToImg(
e,
'ERROR',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f));
}
null != e &&
(a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, e.width, e.height),
a.graphics.endFill());
b = d.getScreenWidth() / 2 - a.font.getTextWidth('SAVE FAILED TO LOAD!') / k.SCALE / 2;
c = d.getScreenHeight() / 2 - 80;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
e = null;
f = a.font;
f =
'SAVE FAILED TO LOAD!:' +
f.ID +
':' +
a.alpha +
':' +
f.letterSpacing +
':' +
k.SCALE;
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)
? ((g = W.drawnStringCache.h[f]), (g.lifetime = 5), (e = g.img))
: ((g = a.font.font.getTextWidth(
'SAVE FAILED TO LOAD!',
a.font.letterSpacing,
a.font.fontScale
)),
(h = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < g &&
0 < h &&
((e = new ja(g, h, !0, 0)),
a.font.font.renderToImg(
e,
'SAVE FAILED TO LOAD!',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f)));
null != e &&
(a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, e.width, e.height),
a.graphics.endFill());
b = d.getFont(526);
null != b && b != a.font && (a.font = b);
b = d.getScreenWidth() / 2 - a.font.getTextWidth('RESTART THE GAME,') / k.SCALE / 2;
c = d.getScreenHeight() / 2 - 40;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
e = null;
f = a.font;
f = 'RESTART THE GAME,:' + f.ID + ':' + a.alpha + ':' + f.letterSpacing + ':' + k.SCALE;
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)
? ((g = W.drawnStringCache.h[f]), (g.lifetime = 5), (e = g.img))
: ((g = a.font.font.getTextWidth(
'RESTART THE GAME,',
a.font.letterSpacing,
a.font.fontScale
)),
(h = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < g &&
0 < h &&
((e = new ja(g, h, !0, 0)),
a.font.font.renderToImg(
e,
'RESTART THE GAME,',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f)));
null != e &&
(a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, e.width, e.height),
a.graphics.endFill());
b = d.getScreenWidth() / 2 - a.font.getTextWidth('RESTART YOUR DEVICE,') / k.SCALE / 2;
c = d.getScreenHeight() / 2 - 20;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
e = null;
f = a.font;
f =
'RESTART YOUR DEVICE,:' +
f.ID +
':' +
a.alpha +
':' +
f.letterSpacing +
':' +
k.SCALE;
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)
? ((g = W.drawnStringCache.h[f]), (g.lifetime = 5), (e = g.img))
: ((g = a.font.font.getTextWidth(
'RESTART YOUR DEVICE,',
a.font.letterSpacing,
a.font.fontScale
)),
(h = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < g &&
0 < h &&
((e = new ja(g, h, !0, 0)),
a.font.font.renderToImg(
e,
'RESTART YOUR DEVICE,',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f)));
null != e &&
(a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, e.width, e.height),
a.graphics.endFill());
b = d.getScreenWidth() / 2 - a.font.getTextWidth('OR CONTINUE AT') / k.SCALE / 2;
c = d.getScreenHeight() / 2;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
e = null;
f = a.font;
f = 'OR CONTINUE AT:' + f.ID + ':' + a.alpha + ':' + f.letterSpacing + ':' + k.SCALE;
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)
? ((g = W.drawnStringCache.h[f]), (g.lifetime = 5), (e = g.img))
: ((g = a.font.font.getTextWidth(
'OR CONTINUE AT',
a.font.letterSpacing,
a.font.fontScale
)),
(h = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < g &&
0 < h &&
((e = new ja(g, h, !0, 0)),
a.font.font.renderToImg(
e,
'OR CONTINUE AT',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f)));
null != e &&
(a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, e.width, e.height),
a.graphics.endFill());
b = d.getScreenWidth() / 2 - a.font.getTextWidth('YOUR OWN RISK:') / k.SCALE / 2;
c = d.getScreenHeight() / 2 + 20;
null == a.font &&
((a.font = a.defaultFont),
a.font.fontScale != k.SCALE && (a.font.fontScale = k.SCALE));
a.drawActor
? null != a.actor && a.actor.isHUD
? ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY))
: ((b = a.x + b * a.scaleX - k.cameraX), (c = a.y + c * a.scaleY - k.cameraY))
: ((b = a.x + b * a.scaleX), (c = a.y + c * a.scaleY));
a.mtx.identity();
a.mtx.translate(b, c);
e = null;
f = a.font;
f = 'YOUR OWN RISK::' + f.ID + ':' + a.alpha + ':' + f.letterSpacing + ':' + k.SCALE;
Object.prototype.hasOwnProperty.call(W.drawnStringCache.h, f)
? ((g = W.drawnStringCache.h[f]), (g.lifetime = 5), (e = g.img))
: ((g = a.font.font.getTextWidth(
'YOUR OWN RISK:',
a.font.letterSpacing,
a.font.fontScale
)),
(h = (a.font.font.getFontHeight() * a.font.fontScale) | 0),
0 < g &&
0 < h &&
((e = new ja(g, h, !0, 0)),
a.font.font.renderToImg(
e,
'YOUR OWN RISK:',
0,
a.alpha,
0,
0,
a.font.letterSpacing,
a.font.fontScale,
0,
!1
),
(g = new Mb()),
(g.img = e),
(g.lifetime = 5),
(W.drawnStringCache.h[f] = g),
W.drawnStringCacheKeys.push(f)));
null != e &&
(a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, e.width, e.height),
a.graphics.endFill());
}
},
init: function () {
d.createRecycledActor(
d.getActorType(685),
d.getScreenWidth() / 2 - 90,
d.getScreenHeight() / 2 + 60,
0
);
this._BackButton = d.getLastCreatedActor();
this._BackButton.setValue('Button Logic', '_ButtonText', 'Continue');
this.addListener(d.engine.whenUpdated, q(this, this._event_Updating));
this.addListener(d.engine.whenDrawing, q(this, this._event_Drawing));
},
forwardMessage: function (a) {},
__class__: Wv
});
var Xv = function (a, b) {
d.call(this);
this.nameMap.h.Overlay = '_Overlay';
this.nameMap.h['Leaf Speed'] = '_LeafSpeed';
this._LeafSpeed = 8;
};
h['scripts.SceneEvents_7'] = Xv;
Xv.__name__ = 'scripts.SceneEvents_7';
Xv.__super__ = sa;
Xv.prototype = r(sa.prototype, {
_Overlay: null,
_LeafSpeed: null,
_event_EveryNsecs: function (a) {
if (this.wrapper.enabled) {
1 == d.randomInt(1, 2)
? (this._LeafSpeed = Math.min(12, this._LeafSpeed + 1))
: (this._LeafSpeed = Math.max(3, this._LeafSpeed - 1));
a = 0;
for (var b = d.randomInt(1, 3); a < b; )
a++,
d.createRecycledActor(
d.getActorType(155),
d.randomInt(
(d.getScreenX() - 128) | 0,
(d.getScreenX() + d.getScreenWidth() - 64) | 0
),
d.getScreenY() - 10,
0
),
d.getLastCreatedActor().setAnimation('2'),
d
.getLastCreatedActor()
.setXVelocity(-(0.01 * this._LeafSpeed * d.randomInt(80, 100))),
d.getLastCreatedActor().setYVelocity(10);
a = 0;
for (b = d.getActorsOfType(d.getActorType(155)); a < b.length; ) {
var c = b[a];
++a;
null == c ||
c.dead ||
c.recycled ||
d
.getLastCreatedActor()
.setXVelocity(-(0.01 * this._LeafSpeed * d.randomInt(80, 100)));
}
}
},
_customEvent_createBorders: function () {
d.createRecycledActor(d.getActorType(309), 0, d.getScreenY(), 1);
d.getLastCreatedActor().moveToBottom();
d.createRecycledActor(
d.getActorType(311),
0,
d.getScreenY() + (d.getScreenHeight() - 60),
1
);
d.getLastCreatedActor().moveToBottom();
},
init: function () {
for (var a = 0; 6 > a; )
a++,
d.createRecycledActor(
d.getActorType(155),
d.randomInt(
(d.getScreenX() - 64) | 0,
(d.getScreenX() + d.getScreenWidth() - 64) | 0
),
d.randomInt(
(d.getScreenY() - 64) | 0,
(d.getScreenY() + d.getScreenHeight() - 64) | 0
),
0
),
d.getLastCreatedActor().setAnimation('2'),
d
.getLastCreatedActor()
.setXVelocity(-(0.01 * this._LeafSpeed * d.randomInt(80, 100))),
d.getLastCreatedActor().setYVelocity(10);
d.runPeriodically(2e3, q(this, this._event_EveryNsecs), null);
},
forwardMessage: function (a) {},
__class__: Xv
});
var Yv = function (a, b) {
d.call(this);
this.nameMap.h.Overlay = '_Overlay';
this.nameMap.h['Leaf Speed'] = '_LeafSpeed';
this._LeafSpeed = 10;
};
h['scripts.SceneEvents_8'] = Yv;
Yv.__name__ = 'scripts.SceneEvents_8';
Yv.__super__ = sa;
Yv.prototype = r(sa.prototype, {
_Overlay: null,
_LeafSpeed: null,
_customEvent_createBorders: function () {
d.createRecycledActor(d.getActorType(325), 0, d.getScreenY(), 1);
d.getLastCreatedActor().moveToBottom();
d.createRecycledActor(
d.getActorType(329),
d.getLastCreatedActor().getX(),
d.getLastCreatedActor().getY() + d.getLastCreatedActor().getHeight(),
2
);
d.getLastCreatedActor().moveToBottom();
d.createRecycledActor(
d.getActorType(327),
0,
d.getScreenY() + (d.getScreenHeight() - 64),
1
);
d.getLastCreatedActor().moveToBottom();
},
init: function () {},
forwardMessage: function (a) {},
__class__: Yv
});
var Zv = function (a, b) {
d.call(this);
};
h['scripts.SceneEvents_9'] = Zv;
Zv.__name__ = 'scripts.SceneEvents_9';
Zv.__super__ = sa;
Zv.prototype = r(sa.prototype, {
init: function () {},
forwardMessage: function (a) {},
__class__: Zv
});
var $v = function () {};
h['scripts.SplashBox'] = $v;
$v.__name__ = 'scripts.SplashBox';
$v.prototype = { __class__: $v };
var rk = function () {
this.onComplete = new Ld();
var a = this;
Ca.call(this);
Ma.get_current().addChild(this);
this.locked = !1;
var b = k.SCALE,
c = '';
this.background = new Ca();
this.background.get_graphics().beginFill(-15592942, 1);
this.background.get_graphics().drawRect(0, 0, this.getWidth(), this.getHeight());
this.addChild(this.background);
X.getConfigBitmap('config/preloader-bg.png').onComplete(function (b) {
a.addChildAt(b, a.getChildIndex(a.background) + 1);
});
var d = 2 * b;
this.barWidth = (b * k.screenScaleX * 120) | 0;
this.barHeight = (b * k.screenScaleY * 8) | 0;
var f = 0 * b;
b *= 0;
c = this.getWidth() / 2 - this.barWidth / 2;
var g = this.getHeight() - this.barHeight - d;
this.barBorder = new Ca();
this.barBorder.get_graphics().beginFill(-12303292, 1);
this.barBorder
.get_graphics()
.drawRect(-d, -d, this.barWidth + 2 * d, this.barHeight + 2 * d);
this.barBorder.set_x(c + f);
this.barBorder.set_y(g + b);
this.addChild(this.barBorder);
this.barBackground = new Ca();
this.barBackground.get_graphics().beginFill(-12303292, 1);
this.barBackground.get_graphics().drawRect(0, 0, this.barWidth, this.barHeight);
this.barBackground.set_x(c + f);
this.barBackground.set_y(g + b);
this.barBackground.set_scaleX(1);
this.addChild(this.barBackground);
this.bar = new Ca();
this.bar.get_graphics().beginFill(-13382452, 1);
this.bar.get_graphics().drawRect(0, 0, this.barWidth, this.barHeight);
d = new fa(0, 0, 0, this.barHeight);
this.bar.set_scrollRect(d);
this.bar.set_x(c + f);
this.bar.set_y(g + b);
this.addChild(this.bar);
'' != this.getURL() && this.addEventListener('mouseDown', q(this, this.onMouseDown), !1, 2);
c = this.getLockURL();
if (this.isSiteLocked() && null != c && '' != c) {
d = !1;
f = Ma.get_current().get_loaderInfo().url;
if (null == f) d = !0;
else if (0 > f.indexOf('http://') && 0 > f.indexOf('https://')) d = !0;
else if (0 < f.indexOf('stencyl.com') || 0 < f.indexOf('localhost')) d = !0;
if (!d) {
b = c.split(',');
for (c = 0; c < b.length; )
(d = b[c]),
++c,
(d = U.trim(d)),
0 <= d.indexOf('*') || (U.startsWith(d, '^') && U.endsWith(d, '$'))
? ((d = new Ja(d, '')), (d = d.match(f)))
: (d = 0 <= f.indexOf(d));
d || this.showLockScreen(b[0]);
}
}
};
h['scripts.StencylPreloader'] = rk;
rk.__name__ = 'scripts.StencylPreloader';
rk.__super__ = Ca;
rk.prototype = r(Ca.prototype, {
barBorder: null,
bar: null,
barBackground: null,
background: null,
barWidth: null,
barHeight: null,
locked: null,
onComplete: null,
adPlaying: null,
ready: null,
getLockURL: function () {
return '';
},
isSiteLocked: function () {
return !1;
},
showLockScreen: function (a) {
this.locked = !0;
X.removeAllChildren(this);
var b = new Mc(new ja(this.getWidth() | 0, this.getHeight() | 0, !1, 5658198));
this.addChild(b);
var c = new Ze();
c.set_width(this.getWidth() - 16);
c.set_height(this.getHeight() - 16);
c.set_x(8);
c.set_y(8);
c.set_textColor(16777215);
c.set_multiline(!0);
c.set_wordWrap(!0);
c.set_text(
'Hi there! It looks like somebody copied this game without my permission. Just click anywhere, or copy-paste this URL into your browser.\n\n' +
a +
'\n\nThanks, and have fun!'
);
a = new Qg(null, 25);
c.setTextFormat(a);
this.addChild(c);
this.removeEventListener('mouseDown', q(this, this.onMouseDown));
c.addEventListener('click', q(this, this.goToLockURL));
b.addEventListener('click', q(this, this.goToLockURL));
},
getURL: function () {
return '';
},
goToLockURL: function (a) {
Ma.getURL(new Tg(this.getLockURL().split(',')[0]), '_parent');
},
onMouseDown: function (a) {
this.removeEventListener('mouseDown', q(this, this.onMouseDown));
Ma.getURL(new Tg(this.getURL()), '_blank');
},
getBackgroundColor: function () {
return 3368601;
},
getWidth: function () {
return ya.windowWidth;
},
getHeight: function () {
return ya.windowHeight;
},
onUpdate: function (a, b) {
Ma.get_current().get_loaderInfo().__update(a, b);
null != this.bar &&
((a = new fa(0, 0, (a / b) * this.barWidth, this.barHeight)),
this.bar.set_scrollRect(a));
},
onLoaded: function () {
Ma.get_current().get_loaderInfo().__complete();
this.ready = !0;
this.adPlaying || this.unload();
},
adFinished: function () {
this.adPlaying = !1;
this.ready && this.unload();
},
unload: function () {
new $v();
(this.isSiteLocked() && this.locked) ||
(this.parent == Ma.get_current() && Ma.get_current().removeChild(this),
Ma.get_current().stage.set_focus(null),
this.onComplete.dispatch());
},
__class__: rk
});
var Ib = function () {};
h['tweenxcore.Easing'] = Ib;
Ib.__name__ = 'tweenxcore.Easing';
Ib.linear = function (a) {
return a;
};
Ib.sineIn = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : 1 - Math.cos(1.5707963267948966 * a);
};
Ib.sineOut = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : Math.sin(1.5707963267948966 * a);
};
Ib.sineInOut = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : -0.5 * (Math.cos(3.141592653589793 * a) - 1);
};
Ib.sineOutIn = function (a) {
return 0 == a
? 0
: 1 == a
? 1
: 0.5 > a
? 0.5 * Math.sin(3.141592653589793 * a)
: -0.5 * Math.cos(1.5707963267948966 * (2 * a - 1)) + 1;
};
Ib.quadIn = function (a) {
return a * a;
};
Ib.quadOut = function (a) {
return -a * (a - 2);
};
Ib.quadInOut = function (a) {
return 0.5 > a ? 2 * a * a : -2 * --a * a + 1;
};
Ib.quadOutIn = function (a) {
if (0.5 > a) return -0.5 * (a *= 2) * (a - 2);
a = 2 * a - 1;
return 0.5 * a * a + 0.5;
};
Ib.cubicIn = function (a) {
return a * a * a;
};
Ib.cubicOut = function (a) {
return --a * a * a + 1;
};
Ib.cubicInOut = function (a) {
return 1 > (a *= 2) ? 0.5 * a * a * a : 0.5 * ((a -= 2) * a * a + 2);
};
Ib.cubicOutIn = function (a) {
a = 2 * a - 1;
return 0.5 * (a * a * a + 1);
};
Ib.quartIn = function (a) {
return (a *= a) * a;
};
Ib.quartOut = function (a) {
a *= --a;
return 1 - a * a;
};
Ib.quartInOut = function (a) {
if (1 > (a *= 2)) return 0.5 * (a *= a) * a;
a *= a -= 2;
return -0.5 * (a * a - 2);
};
Ib.quartOutIn = function (a) {
if (0.5 > a) return (a = 2 * a - 1), -0.5 * (a *= a) * a + 0.5;
a = 2 * a - 1;
return 0.5 * (a *= a) * a + 0.5;
};
Ib.quintIn = function (a) {
return a * (a *= a) * a;
};
Ib.quintOut = function (a) {
return --a * (a *= a) * a + 1;
};
Ib.quintInOut = function (a) {
return 1 > (a *= 2) ? 0.5 * a * (a *= a) * a : 0.5 * (a -= 2) * (a *= a) * a + 1;
};
Ib.quintOutIn = function (a) {
a = 2 * a - 1;
return 0.5 * (a * (a *= a) * a + 1);
};
Ib.expoIn = function (a) {
return 0 == a ? 0 : Math.exp(6.931471805599453 * (a - 1));
};
Ib.expoOut = function (a) {
return 1 == a ? 1 : 1 - Math.exp(-6.931471805599453 * a);
};
Ib.expoInOut = function (a) {
return 0 == a
? 0
: 1 == a
? 1
: 1 > (a *= 2)
? 0.5 * Math.exp(6.931471805599453 * (a - 1))
: 0.5 * (2 - Math.exp(-6.931471805599453 * (a - 1)));
};
Ib.expoOutIn = function (a) {
return 0.5 > a
? 0.5 * (1 - Math.exp(-13.862943611198906 * a))
: 0.5 == a
? 0.5
: 0.5 * (Math.exp(13.862943611198906 * (a - 1)) + 1);
};
Ib.circIn = function (a) {
return -1 > a || 1 < a ? 0 : 1 - Math.sqrt(1 - a * a);
};
Ib.circOut = function (a) {
return 0 > a || 2 < a ? 0 : Math.sqrt(a * (2 - a));
};
Ib.circInOut = function (a) {
return -0.5 > a || 1.5 < a
? 0.5
: 1 > (a *= 2)
? -0.5 * (Math.sqrt(1 - a * a) - 1)
: 0.5 * (Math.sqrt(1 - (a -= 2) * a) + 1);
};
Ib.circOutIn = function (a) {
if (0 > a) return 0;
if (1 < a) return 1;
if (0.5 > a) return (a = 2 * a - 1), 0.5 * Math.sqrt(1 - a * a);
a = 2 * a - 1;
return -0.5 * (Math.sqrt(1 - a * a) - 1 - 1);
};
Ib.bounceIn = function (a) {
a = 1 - a;
return 0.36363636363636365 > a
? 1 - 7.5625 * a * a
: 0.7272727272727273 > a
? 1 - (7.5625 * (a -= 0.5454545454545454) * a + 0.75)
: 0.9090909090909091 > a
? 1 - (7.5625 * (a -= 0.8181818181818182) * a + 0.9375)
: 1 - (7.5625 * (a -= 0.9545454545454546) * a + 0.984375);
};
Ib.bounceOut = function (a) {
return 0.36363636363636365 > a
? 7.5625 * a * a
: 0.7272727272727273 > a
? 7.5625 * (a -= 0.5454545454545454) * a + 0.75
: 0.9090909090909091 > a
? 7.5625 * (a -= 0.8181818181818182) * a + 0.9375
: 7.5625 * (a -= 0.9545454545454546) * a + 0.984375;
};
Ib.bounceInOut = function (a) {
if (0.5 > a)
return (
(a = 1 - 2 * a),
0.36363636363636365 > a
? 0.5 * (1 - 7.5625 * a * a)
: 0.7272727272727273 > a
? 0.5 * (1 - (7.5625 * (a -= 0.5454545454545454) * a + 0.75))
: 0.9090909090909091 > a
? 0.5 * (1 - (7.5625 * (a -= 0.8181818181818182) * a + 0.9375))
: 0.5 * (1 - (7.5625 * (a -= 0.9545454545454546) * a + 0.984375))
);
a = 2 * a - 1;
return 0.36363636363636365 > a
? 7.5625 * a * a * 0.5 + 0.5
: 0.7272727272727273 > a
? 0.5 * (7.5625 * (a -= 0.5454545454545454) * a + 0.75) + 0.5
: 0.9090909090909091 > a
? 0.5 * (7.5625 * (a -= 0.8181818181818182) * a + 0.9375) + 0.5
: 0.5 * (7.5625 * (a -= 0.9545454545454546) * a + 0.984375) + 0.5;
};
Ib.bounceOutIn = function (a) {
if (0.5 > a)
return 0.36363636363636365 > (a *= 2)
? 3.78125 * a * a
: 0.7272727272727273 > a
? 0.5 * (7.5625 * (a -= 0.5454545454545454) * a + 0.75)
: 0.9090909090909091 > a
? 0.5 * (7.5625 * (a -= 0.8181818181818182) * a + 0.9375)
: 0.5 * (7.5625 * (a -= 0.9545454545454546) * a + 0.984375);
a = 1 - (2 * a - 1);
return 0.36363636363636365 > a
? 0.5 - 3.78125 * a * a + 0.5
: 0.7272727272727273 > a
? 0.5 - 0.5 * (7.5625 * (a -= 0.5454545454545454) * a + 0.75) + 0.5
: 0.9090909090909091 > a
? 0.5 - 0.5 * (7.5625 * (a -= 0.8181818181818182) * a + 0.9375) + 0.5
: 0.5 - 0.5 * (7.5625 * (a -= 0.9545454545454546) * a + 0.984375) + 0.5;
};
Ib.backIn = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : a * a * (2.70158 * a - 1.70158);
};
Ib.backOut = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : --a * a * (2.70158 * a + 1.70158) + 1;
};
Ib.backInOut = function (a) {
return 0 == a
? 0
: 1 == a
? 1
: 1 > (a *= 2)
? 0.5 * a * a * (3.5949095 * a - 2.5949095)
: 0.5 * ((a -= 2) * a * (3.5949095 * a + 2.5949095) + 2);
};
Ib.backOutIn = function (a) {
if (0 == a) return 0;
if (1 == a) return 1;
if (0.5 > a) return (a = 2 * a - 1), 0.5 * (a * a * (2.70158 * a + 1.70158) + 1);
a = 2 * a - 1;
return 0.5 * a * a * (2.70158 * a - 1.70158) + 0.5;
};
Ib.elasticIn = function (a) {
return 0 == a
? 0
: 1 == a
? 1
: -(
Math.exp(6.931471805599453 * --a) *
Math.sin((6.283185307179586 * (0.001 * a - 7.5e-5)) / 3e-4)
);
};
Ib.elasticOut = function (a) {
return 0 == a
? 0
: 1 == a
? 1
: Math.exp(-6.931471805599453 * a) *
Math.sin((6.283185307179586 * (0.001 * a - 7.5e-5)) / 3e-4) +
1;
};
Ib.elasticInOut = function (a) {
return 0 == a
? 0
: 1 == a
? 1
: 1 > (a *= 2)
? -0.5 *
Math.exp(6.931471805599453 * --a) *
Math.sin((6.283185307179586 * (0.001 * a - 7.5e-5)) / 3e-4)
: Math.exp(-6.931471805599453 * --a) *
Math.sin((6.283185307179586 * (0.001 * a - 7.5e-5)) / 3e-4) *
0.5 +
1;
};
Ib.elasticOutIn = function (a) {
if (0.5 > a)
return 0 == (a *= 2)
? 0
: 0.5 *
Math.exp(-6.931471805599453 * a) *
Math.sin((6.283185307179586 * (0.001 * a - 7.5e-5)) / 3e-4) +
0.5;
if (0.5 == a) return 0.5;
if (1 == a) return 1;
a = 2 * a - 1;
return (
-(
0.5 *
Math.exp(6.931471805599453 * --a) *
Math.sin((6.283185307179586 * (0.001 * a - 7.5e-5)) / 3e-4)
) + 0.5
);
};
Ib.warpOut = function (a) {
return 0 >= a ? 0 : 1;
};
Ib.warpIn = function (a) {
return 1 > a ? 0 : 1;
};
Ib.warpInOut = function (a) {
return 0.5 > a ? 0 : 1;
};
Ib.warpOutIn = function (a) {
return 0 >= a ? 0 : 1 > a ? 0.5 : 1;
};
var Cc = function () {};
h['tweenxcore.FloatTools'] = Cc;
Cc.__name__ = 'tweenxcore.FloatTools';
Cc.revert = function (a) {
return 1 - a;
};
Cc.clamp = function (a, b, c) {
null == c && (c = 1);
null == b && (b = 0);
return a <= b ? b : c <= a ? c : a;
};
Cc.lerp = function (a, b, c) {
return b * (1 - a) + c * a;
};
Cc.inverseLerp = function (a, b, c) {
return (a - b) / (c - b);
};
Cc.repeat = function (a, b, c) {
null == c && (c = 1);
null == b && (b = 0);
a = (a - b) / (c - b);
return a - Math.floor(a);
};
Cc.shake = function (a, b, c) {
null == b && (b = 0);
null == c && (c = Math.random);
c = c();
return b + (-a * (1 - c) + a * c);
};
Cc.spread = function (a, b) {
return -b * (1 - a) + b * a;
};
Cc.sinByRate = function (a) {
return Math.sin(2 * a * Math.PI);
};
Cc.cosByRate = function (a) {
return Math.cos(2 * a * Math.PI);
};
Cc.yoyo = function (a, b) {
return b(2 * (0.5 > a ? a : 1 - a));
};
Cc.zigzag = function (a, b) {
return 0.5 > a ? b(2 * a) : 1 - b(2 * (a - 0.5));
};
Cc.mixEasing = function (a, b, c, d) {
null == d && (d = 0.5);
return b(a) * (1 - d) + c(a) * d;
};
Cc.crossfadeEasing = function (a, b, c, d, f, g) {
null == g && (g = 1);
null == f && (f = 0);
d = d(a);
f = f * (1 - d) + g * d;
return b(a) * (1 - f) + c(a) * f;
};
Cc.connectEasing = function (a, b, c, d, f) {
null == f && (f = 0.5);
null == d && (d = 0.5);
if (a < d) return (a = b(a / d)), 0 * (1 - a) + f * a;
a = c((a - d) / (1 - d));
return f * (1 - a) + a;
};
Cc.oneTwoEasing = function (a, b, c, d) {
null == d && (d = 0.5);
return a < d ? b(a / d) : c((a - d) / (1 - d));
};
Cc.binarySearch = function (a, b, c) {
null == c && (c = 0);
var d = 0,
f = a.length;
if (0 == c)
for (;;) {
c = (((f - d) / 2) | 0) + d;
var g = a[c];
g <= b ? (d = c + 1) : (f = c);
if (d == f) break;
}
else
for (
;
(c = (((f - d) / 2) | 0) + d), (g = a[c]), g < b ? (d = c + 1) : (f = c), d != f;
);
return d;
};
Cc.polyline = function (a, b) {
if (2 > b.length) throw M.thrown('points length must be more than 2');
var c = b.length - 1;
a *= c;
var d = 0;
--c;
null == c && (c = 1);
null == d && (d = 0);
c = Math.floor(a <= d ? d : c <= a ? c : a);
a -= c;
return b[c] * (1 - a) + b[c + 1] * a;
};
Cc.bezier2 = function (a, b, c, d) {
return (b * (1 - a) + c * a) * (1 - a) + (c * (1 - a) + d * a) * a;
};
Cc.bezier3 = function (a, b, c, d, f) {
var e = c * (1 - a) + d * a;
return (
((b * (1 - a) + c * a) * (1 - a) + e * a) * (1 - a) +
(e * (1 - a) + (d * (1 - a) + f * a) * a) * a
);
};
Cc.bezier = function (a, b) {
if (2 > b.length) throw M.thrown('points length must be more than 2');
if (2 == b.length) return b[0] * (1 - a) + b[1] * a;
if (3 == b.length) {
var c = b[1];
return (b[0] * (1 - a) + c * a) * (1 - a) + (c * (1 - a) + b[2] * a) * a;
}
return Cc._bezier(a, b);
};
Cc._bezier = function (a, b) {
if (4 == b.length) {
var c = b[1],
d = b[2],
f = c * (1 - a) + d * a;
return (
((b[0] * (1 - a) + c * a) * (1 - a) + f * a) * (1 - a) +
(f * (1 - a) + (d * (1 - a) + b[3] * a) * a) * a
);
}
c = [];
d = 0;
for (f = b.length - 1; d < f; ) {
var g = d++;
c.push(b[g] * (1 - a) + b[g + 1] * a);
}
return Cc._bezier(a, c);
};
Cc.uniformQuadraticBSpline = function (a, b) {
if (2 > b.length) throw M.thrown('points length must be more than 2');
if (2 == b.length) return b[0] * (1 - a) + b[1] * a;
var c = b.length - 2;
a *= c;
var d = 0;
--c;
null == c && (c = 1);
null == d && (d = 0);
c = Math.floor(a <= d ? d : c <= a ? c : a);
a -= c;
d = b[c];
var f = b[c + 1];
return a * a * (d / 2 - f + b[c + 2] / 2) + a * (-d + f) + d / 2 + f / 2;
};
Cc.frameToSecond = function (a, b) {
return a / b;
};
Cc.secondToFrame = function (a, b) {
return a * b;
};
Cc.degreeToRate = function (a) {
return a / 360;
};
Cc.rateToDegree = function (a) {
return 360 * a;
};
Cc.radianToRate = function (a) {
return a / (2 * Math.PI);
};
Cc.rateToRadian = function (a) {
return 2 * a * Math.PI;
};
Cc.millisecondToBeat = function (a, b) {
return (a * b) / 6e4;
};
Cc.beatToMillisecond = function (a, b) {
return (6e4 * a) / b;
};
var pk = function () {};
h['tweenxcore.PointTools'] = pk;
pk.__name__ = 'tweenxcore.PointTools';
pk.polyline = function (a, b, c) {
var d = [],
f = [];
for (c = O(c); c.hasNext(); ) {
var g = c.next();
d.push(g.x);
f.push(g.y);
}
if (2 > d.length) throw M.thrown('points length must be more than 2');
var k = d.length - 1;
c = b * k;
g = 0;
--k;
null == k && (k = 1);
null == g && (g = 0);
g = Math.floor(c <= g ? g : k <= c ? k : c);
c -= g;
d = d[g] * (1 - c) + d[g + 1] * c;
a.x = d;
if (2 > f.length) throw M.thrown('points length must be more than 2');
k = f.length - 1;
c = b * k;
g = 0;
--k;
null == k && (k = 1);
null == g && (g = 0);
g = Math.floor(c <= g ? g : k <= c ? k : c);
c -= g;
d = f[g] * (1 - c) + f[g + 1] * c;
a.y = d;
};
pk.bezier2 = function (a, b, c, d, f) {
f = d.x;
a.x = (c.x * (1 - b) + f * b) * (1 - b) + (f * (1 - b) + c.x * b) * b;
f = d.y;
a.y = (c.y * (1 - b) + f * b) * (1 - b) + (f * (1 - b) + c.y * b) * b;
};
pk.bezier3 = function (a, b, c, d, f, g) {
g = d.x;
var e = f.x,
k = g * (1 - b) + e * b;
a.x =
((c.x * (1 - b) + g * b) * (1 - b) + k * b) * (1 - b) +
(k * (1 - b) + (e * (1 - b) + c.x * b) * b) * b;
g = d.y;
e = f.y;
k = g * (1 - b) + e * b;
a.y =
((c.y * (1 - b) + g * b) * (1 - b) + k * b) * (1 - b) +
(k * (1 - b) + (e * (1 - b) + c.y * b) * b) * b;
};
pk.bezier = function (a, b, c) {
var d = [],
f = [];
for (c = O(c); c.hasNext(); ) {
var g = c.next();
d.push(g.x);
f.push(g.y);
}
if (2 > d.length) throw M.thrown('points length must be more than 2');
2 == d.length
? (d = d[0] * (1 - b) + d[1] * b)
: 3 == d.length
? ((c = d[1]), (d = (d[0] * (1 - b) + c * b) * (1 - b) + (c * (1 - b) + d[2] * b) * b))
: (d = Cc._bezier(b, d));
a.x = d;
if (2 > f.length) throw M.thrown('points length must be more than 2');
2 == f.length
? (d = f[0] * (1 - b) + f[1] * b)
: 3 == f.length
? ((c = f[1]), (d = (f[0] * (1 - b) + c * b) * (1 - b) + (c * (1 - b) + f[2] * b) * b))
: (d = Cc._bezier(b, f));
a.y = d;
};
pk.uniformQuadraticBSpline = function (a, b, c) {
for (var d = [], f = [], g = O(c); g.hasNext(); ) (c = g.next()), d.push(c.x), f.push(c.y);
if (2 > d.length) throw M.thrown('points length must be more than 2');
if (2 == d.length) d = d[0] * (1 - b) + d[1] * b;
else {
var k = d.length - 2;
c = b * k;
g = 0;
--k;
null == k && (k = 1);
null == g && (g = 0);
g = Math.floor(c <= g ? g : k <= c ? k : c);
k = c - g;
var l = d[g];
c = d[g + 1];
d = d[g + 2];
d = k * k * (l / 2 - c + d / 2) + k * (-l + c) + l / 2 + c / 2;
}
a.x = d;
if (2 > f.length) throw M.thrown('points length must be more than 2');
2 == f.length
? (d = f[0] * (1 - b) + f[1] * b)
: ((k = f.length - 2),
(c = b * k),
(g = 0),
--k,
null == k && (k = 1),
null == g && (g = 0),
(g = Math.floor(c <= g ? g : k <= c ? k : c)),
(k = c - g),
(l = f[g]),
(c = f[g + 1]),
(d = f[g + 2]),
(d = k * k * (l / 2 - c + d / 2) + k * (-l + c) + l / 2 + c / 2));
a.y = d;
};
var Uw = function () {};
h['tweenxcore.MatrixTools'] = Uw;
Uw.__name__ = 'tweenxcore.MatrixTools';
Uw.createSimilarityTransform = function (a, b, c, d, f) {
d -= b;
var e = f - c;
f = Math.atan2(e, d);
d = Math.sqrt(d * d + e * e);
a.a = d * Math.cos(f);
a.b = d * Math.sin(f);
a.c = -d * Math.sin(f);
a.d = d * Math.cos(f);
a.tx = b;
a.ty = c;
};
R.$haxeUID |= 0;
'undefined' != typeof performance &&
'function' == typeof performance.now &&
(A.now = performance.now.bind(performance));
h.Math = Math;
null == String.fromCodePoint &&
(String.fromCodePoint = function (a) {
return 65536 > a
? String.fromCharCode(a)
: String.fromCharCode((a >> 10) + 55232) + String.fromCharCode((a & 1023) + 56320);
});
String.prototype.__class__ = h.String = String;
String.__name__ = 'String';
h.Array = Array;
Array.__name__ = 'Array';
Date.prototype.__class__ = h.Date = Date;
Date.__name__ = 'Date';
var Ab = {},
kx = {},
Nb = Number,
Ob = Boolean,
ew = {},
bx = {};
Jc.count = 0;
yh.content = [
{
name: 'config_game_config_json',
data: 'ewoJImFudGlhbGlhcyI6IGZhbHNlLAoJImJ1aWxkQ29uZmlnIjogeyJkZWJ1ZyI6dHJ1ZSwiZXh0cmEiOltdLCJwbGF0Zm9ybSI6Imh0bWw1In0sCgkiZGVidWdEcmF3IjogZmFsc2UsCgkiZGlzcG9zZUltYWdlcyI6IGZhbHNlLAoJImZvcmNlSGlSZXNBc3NldHMiOiB0cnVlLAoJImluaXRTY2VuZUlEIjogNjAsCgkia2V5cyI6IHsKCQkidXAiOiBbIlVQIiwiVyJdLAoJCSJkb3duIjogWyJET1dOIiwiUyJdLAoJCSJsZWZ0IjogWyJMRUZUIiwiQSJdLAoJCSJyaWdodCI6IFsiUklHSFQiLCJEIl0sCgkJImFjdGlvbjEiOiBbIkMiLCJDT05UUk9MIiwiU1BBQ0UiXSwKCQkiYWN0aW9uMiI6IFsiWCJdLAoJCSJlbnRlciI6IFsiRU5URVIiXSwKCQkiRXNjYXBlIjogWyJFU0NBUEUiXSwKCQkiUCI6IFsiUCJdLAoJCSJUIjogWyJUIl0KCQkKCX0sCgkicGl4ZWxzbmFwIjogZmFsc2UsCgkicGh5c2ljc01vZGUiOiAiTk9STUFMX1BIWVNJQ1MiLAoJInJlbGVhc2VNb2RlIjogdHJ1ZSwKCSJzaG93Q29uc29sZSI6IGZhbHNlLAoJInN0YWdlV2lkdGgiOiA3NjgsCgkic3RhZ2VIZWlnaHQiOiA0MzIsCgkidG9vbHNldEludGVyZmFjZUhvc3QiOiAibG9jYWxob3N0IiwKCSJ0b29sc2V0SW50ZXJmYWNlUG9ydCI6IC0xLAoJInByb2plY3ROYW1lIjogIkRhZGlzaCBQT0tJIiwKCSJ1c2VHY2lMb2dnaW5nIjogZmFsc2UsCgkKCSJjb25maWctbW9iaWxlIjogewoJCSJhZFBvc2l0aW9uQm90dG9tIjogdHJ1ZSwKCQkiYXV0b3JvdGF0ZSI6IGZhbHNlLAoJCSJnYW1lU2NhbGUiOiAxLAoJCSJsYW5kc2NhcGUiOiB0cnVlLAoJCSJ0ZXN0QWRzIjogZmFsc2UsCgkJInRvb2xzZXRJbnRlcmZhY2VIb3N0IjogIjE5Mi4xNjguMS4yNDgiLAoKCQkiY29uZmlnLWFuZHJvaWQiOiB7CgkJCSJkaXNhYmxlQmFja0J1dHRvbiI6IHRydWUsCgkJCSJzY2FsZU1vZGUiOiAiRlVMTFNDUkVFTiIsCgkJCSJzY2FsZXMiOiBbIjF4Il0KCQl9LAoJCQoJCSJjb25maWctaW9zIjogewoJCQkic2NhbGVNb2RlIjogIkZVTExTQ1JFRU4iLAoJCQkic2NhbGVzIjogWyIxeCJdCgkJfQoJfSwKCQoJImNvbmZpZy1kZXNrdG9wIjogewoJCSJnYW1lU2NhbGUiOiAyLjAsCgkJInNjYWxlTW9kZSI6ICJTQ0FMRV9UT19GSVRfRlVMTFNDUkVFTiIsCgkJInNjYWxlcyI6IFsiMXgiXSwKCQkic3RhcnRJbkZ1bGxTY3JlZW4iOiB0cnVlCgl9LAoJCgkiY29uZmlnLXdlYiI6IHsKCQkiZ2FtZVNjYWxlIjogMS4wLAoJCSJzdGFydEluRnVsbFNjcmVlbiI6IGZhbHNlLAoJCSJzY2FsZXMiOiBbIjF4Il0sCgoJCSJjb25maWctZmxhc2giOiB7CgkJCSJzY2FsZU1vZGUiOiAiTk9fU0NBTElORyIKCQl9LAoJCQoJCSJjb25maWctaHRtbDUiOiB7CgkJCSJ0b29sc2V0SW50ZXJmYWNlSG9zdCI6ICIxOTIuMTY4LjEuMjQ4IgoJCX0KCX0KfQ'
},
{
name: 'config_preloadpaths_txt',
data: 'YXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0zLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMy0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTMtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0zLTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMy00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTMtNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0zLTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMy03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTMtOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0zLTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMy0xMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0zLTExLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTMtMTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMy0xOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0zLTE5LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTctMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTEtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMy0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTctMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xOS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIxLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjEtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMS0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIxLTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjMtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yNS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTI3LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjktMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0zMS0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTMxLTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMzMtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0zNS01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTM5LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMzktMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQxLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDEtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00My0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQ1LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDctMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00OS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTUxLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTEtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01My0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU1LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTUtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01Ny0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU3LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTktMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01OS0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTYxLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNjEtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS02My0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTYzLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNjUtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS02Ny0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTY5LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNzEtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03My0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc1LTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNzUtNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03OS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTgxLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtODMtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS04OS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTkxLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtOTMtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS05My0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTk1LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtOTUtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS05NS0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTk1LTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtOTUtNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS05NS01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTk1LTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtOTUtNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS05NS04LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTk1LTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtOTUtMTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtOTctMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS05OS0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTk5LTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtOTktNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS05OS04LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTk5LTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTAxLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTAxLTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTAxLTcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTAxLTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTAxLTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTEwMi5mbnQKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtMTAyLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEwNC0wLnBuZwphc3NldHMvc2Z4L3NvdW5kLTEwNS5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0xMDYub2dnCmFzc2V0cy9zZngvc291bmQtMTA3Lm9nZwphc3NldHMvc2Z4L3NvdW5kLTEwOC5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0xMDkub2dnCmFzc2V0cy9zZngvc291bmQtMTEwLm9nZwphc3NldHMvc2Z4L3NvdW5kLTExMS5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0xMTIub2dnCmFzc2V0cy9zZngvc291bmQtMTEzLm9nZwphc3NldHMvc2Z4L3NvdW5kLTExNC5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0xMTUub2dnCmFzc2V0cy9zZngvc291bmQtMTE2Lm9nZwphc3NldHMvc2Z4L3NvdW5kLTExNy5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0xMTgub2dnCmFzc2V0cy9zZngvc291bmQtMTE5Lm9nZwphc3NldHMvc2Z4L3NvdW5kLTEyMC5vZ2cKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMjItMTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTIyLTE3LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEyMi0xOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMjItNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMjItNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMjItOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMjItOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMjItMTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTIyLTExLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEyMi0xMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMjItMTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTI2LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTI2LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTI2LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTI4LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTMyLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTMyLTEucG5nCmFzc2V0cy9zZngvc291bmQtMTM0Lm9nZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEzNy01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEzNy02LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEzNy03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEzOS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE0MS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE0My0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvdGlsZXNldC0xNDQtNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3RpbGVzZXQtMTQ0LTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS90aWxlc2V0LTE0NC0xMjYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS90aWxlc2V0LTE0NC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNTEtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNTYtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNTYtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNTYtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYwLTExLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2MC0xMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYwLTE0LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2MC0xNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYwLTE3LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2MC0xOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYwLTIwLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2MC0yMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMjIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYwLTIzLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2MC0yNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMjUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYwLTI2LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2MC0yNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMjgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYwLTI5LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2MC0zMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMzEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYwLTMyLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2MC0zMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMzQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYwLTM1LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2MC0zNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjAtMzcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYyLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTE2NS5mbnQKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtMTY1LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny02LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny04LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny05LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny0xMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjctMTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY3LTEyLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny0xMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjctMTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY3LTE1LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny0xNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjctMTcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY3LTE4LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny0xOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjctMjAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY3LTIyLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny0yMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNjctMjQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY3LTI1LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE2Ny0yNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtMTY4LmZudAphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC0xNjgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTcwLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xNzEuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xNzMuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xNzUuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xNzYuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xNzcuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xNzguU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xNzkuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xODAuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xODEuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xODIuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xODMuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xODQuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xODUuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xODYuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xODcuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xODguU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xODkuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xOTAuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xOTEuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xOTIuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTk4LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjAwLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjAyLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA0LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA0LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA2LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA2LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA2LTIucG5nCmFzc2V0cy9zZngvc291bmQtMjA3Lm9nZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwOS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwOS0xLnBuZwphc3NldHMvc2Z4L3NvdW5kLTIxMC5vZ2cKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMTItMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMTItMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMTQtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMTQtMS5wbmcKYXNzZXRzL3NmeC9zb3VuZC0yMTUub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjE3LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjE3LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjE3LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjE3LTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjE3LTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjE5LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjE5LTEucG5nCmFzc2V0cy9zZngvc291bmQtMjIwLm9nZwphc3NldHMvc2Z4L3NvdW5kLTIyMS5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0yMjIub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjI0LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjI0LTEucG5nCmFzc2V0cy9zZngvc291bmQtMjI1Lm9nZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIyNy0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIyNy0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIyNy0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIyNy00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIyNy01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIyNy03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIyNy04LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIyNy05LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC0yMjguZm50CmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTIyOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtMjI5LmZudAphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC0yMjkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjMzLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjMzLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjMzLTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjM1LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjM1LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjM3LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjM5LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjM5LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQxLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQxLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQzLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQzLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ1LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ1LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ1LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ1LTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ1LTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ1LTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ1LTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ1LTcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ1LTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ3LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ3LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ3LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ5LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ5LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ5LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjUxLTAucG5nCmFzc2V0cy9zZngvc291bmQtMjUyLm9nZwphc3NldHMvc2Z4L3NvdW5kLTI1My5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0yNTQub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjg0LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjkyLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjkyLTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjk4LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjk4LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMzA2LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMzA4LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMzQyLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMzQ0LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMzUwLTAucG5nCmFzc2V0cy9zZngvc291bmQtMzUxLm9nZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvdGlsZXNldC0zNTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMzU0LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMzU0LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8zNjcuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8zNjguU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8zNjkuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8zNzAuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8zNzEuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8zNzIuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8zNzMuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8zNzQuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8zNzUuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8zNzYuU09VTkRfRVhUCmFzc2V0cy9zZngvc291bmQtMzc3Lm9nZwphc3NldHMvc2Z4L3NvdW5kLTM3OC5vZ2cKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0zODAtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0zODItMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MDItNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MDItNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MDItMTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDAyLTE0LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQwMi0xNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MDQtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MDQtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MDQtMi5wbmcKYXNzZXRzL3NmeC9zb3VuZC00MDUub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDA3LTcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDA3LTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDA3LTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDA3LTEwLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQwOS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQwOS0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQxMS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQxMS0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQxMS0yLnBuZwphc3NldHMvc2Z4L3NvdW5kLTQxMi5vZ2cKYXNzZXRzL3NmeC9zb3VuZC00MTMub2dnCmFzc2V0cy9zZngvc291bmQtNDE0Lm9nZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQxOC0wLnBuZwphc3NldHMvc2Z4L3NvdW5kLTQyMy5vZ2cKYXNzZXRzL3NmeC9zb3VuZC00MjQub2dnCmFzc2V0cy9zZngvc291bmQtNDI5Lm9nZwphc3NldHMvc2Z4L3NvdW5kLTQzMC5vZ2cKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItMTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDMyLTExLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzMi0xMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItMTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDMyLTE5LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzMi0yMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzItMjEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTEwLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNC0xMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzQtMTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTEzLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNC0xNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzQtMTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTE2LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNC0xNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzQtMTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTE5LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNC0yMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzQtMjEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTIyLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNC0yMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzQtMjQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTI1LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNC0yNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzQtMjcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTI4LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNC0yOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzQtMzAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTMxLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNC0zMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzQtMzMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTM0LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNC0zNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00MzQtMzYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDM0LTM3LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNi0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNi0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNi0zLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNi00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzNi01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQzOC0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQ0MC0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQ0MC0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQ0MC0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQ0MC0zLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQ0MC00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC00NDEuZm50CmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTQ0MS5wbmcKYXNzZXRzL3NmeC9zb3VuZC00NDIub2dnCmFzc2V0cy9zZngvc291bmQtNDQ5Lm9nZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQ1My0wLnBuZwphc3NldHMvc2Z4L3NvdW5kLTQ1NC5vZ2cKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NTYtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NTgtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NTgtNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NTgtNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NTgtNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjAtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjAtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjAtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjItMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjItMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjItMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjQtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjYtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjYtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjgtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjgtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjgtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjgtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00NjgtNC5wbmcKYXNzZXRzL3NmeC9zb3VuZC00Njkub2dnCmFzc2V0cy9zZngvc291bmQtNDcwLm9nZwphc3NldHMvc2Z4L3NvdW5kLTQ3MS5vZ2cKYXNzZXRzL3NmeC9zb3VuZC00NzIub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDc0LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDc2LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDc4LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTQ3OS5mbnQKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtNDc5LnBuZwphc3NldHMvc2Z4L3NvdW5kLTQ4MC5vZ2cKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01MjQtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtNTI2LmZudAphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC01MjYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM0LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM0LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM0LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM0LTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM4LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM4LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM4LTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM4LTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM4LTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM4LTEwLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTUzOC0xMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01MzgtMTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM4LTE5LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTUzOC0yMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01MzgtMjEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM4LTIyLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTUzOC0yMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01MzgtMjQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTM4LTI1LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTUzOC0yNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01MzgtMjcucG5nCmFzc2V0cy9zZngvc291bmQtNTQ1Lm9nZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU0Ny0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU0Ny0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU1OC0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU1OC0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU2MC0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU2MC0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU2Mi0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU2OC0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU2OC0yLnBuZwphc3NldHMvc2Z4L3NvdW5kLTU3NS5vZ2cKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01NzctMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01NzktMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01NzktMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01NzktMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01NzktNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODEtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODEtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODEtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODEtNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODMtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODMtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODMtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODMtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODMtNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODMtNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODUtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODUtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01ODUtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01OTAtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01OTctMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01OTktMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS02MDEtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS02MDMtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS02MDgtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS02MTAtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS02MTItMC5wbmcKYXNzZXRzL3NmeC9zb3VuZC02MTcub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNjIzLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNjIzLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNjIzLTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTYyNC5mbnQKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtNjI0LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTYyNi0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTYzMC0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTYzMi0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTYzNC02LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTYzNi0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTYzOC0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTY4Ni0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTY4Ni0xLnBuZwphc3NldHMvc2Z4L3NvdW5kLTcyNC5vZ2cKYXNzZXRzL3NmeC9zb3VuZC03MjUub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNzI3LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNzI3LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNzI3LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9iYWNrZ3JvdW5kLTcyOC0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc1OS0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2MS0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2MS0zLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2MS00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2MS01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2MS02LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2My0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2My0zLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2My00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2My01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2My02LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2NS0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2NS00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2Ny0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc2Ny0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc3MS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc3MS0xLnBuZwo'
},
{
name: 'config_preloader_bg_txt',
data: 'aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQXdBQUFBR3dDQUlBQUFDUnRwV0ZBQUNBQUVsRVFWUjRYc1RkWjNjY1I3SXU2dmxaWjBaZQpvaWRCZ2dEaENlKzliZThOUENuTjN1ZmU3M2Z2R1VuMDhONERCT2k5TnlJcE96THpJMDVrUmxaVVZHWjFBOUxNUG5ldGQyRlZGNXNrCkpEUzdubzZJelBwVC9WcWlZVDNadUpHU1NVQ2FOcFBOVzZtbXE1aEU4M1lTMHJLVGFybVdhTDJlaExUZFNFSGFiNmJiYjZZNmJxVWgKbmJmN3UrNG11KytsZXU2bjRXdjN2UVNtNTM2eTYwRzYrMkUvcHVkUkd0UDdHQjZtOE1EemRCRFQ5MlFBSG5xZnBIMVArekgrWndPWQp3UFBCNElzaE02R1h3NkdYUTJiQ3I0WWpyMGNvOEpBUy9jWWxzVGNqc1RkbnpNVGZuazIrTzVONE8wcUJoNURVdCtJOEJSNVMwdCtkCk1kUC92ZU04UEtTa2YzQlAvNDluWEpQNnlUM0puODRrZmh3MUUvdHBSR1kwK3VNSUpQTERjT1NIVVV6NCs1SFF0Nk9VNExzemdiZWoKd1c5RUFxOUgvSytHZlM5SHZDK0dQYytISUgxUFIzc2VEM2M5SEpTQmcrR08rNE50ZC90Yjd3MUFXdTRPTk4vcGI3cWRicnlWYXJpWgpodFRkU0dGcXJ5ZHJib2hVWDA5QUtxN0hJZVhYWXFkM29pVlh3OFZib2FMTklDUi8wNHZKMi9DYzNQRGtydmVkV09zOXZ0cHpiS1VUCmMzUzU0K0JpMi83NWxzOW1tejZkYWZ4a3V2R2o2Zm9QSnF2Zkg2dis0R0xkcDErMkhmbWJMK2UvWWlmK3YxanVmOFZQL25jaTcyL0oKL0wrbktBVmZwd3JQcGEwa0ljVVgwcVdYQm9yT3ArQ2c1R0kvSEpkZVNwZGQ3b2ZBUVNVY1RNYXFOc0wxRDhMMWovMk5ULzJkTDJLZAp6NUxkcjJLOTN5UThiMVBlZDJuZnU1VC8yM1RndS83Zzl3T1JId2VpUHczR2Z4NU8vREtTK0dVSWsveDF1UC9YTTVDQjM4NE8vaW95CjlOdm5Jektqdi8wSDVJek02SzkvUGZPTHl0bGYvcFB5K2EvL20vTEZiLzhQZjhoTy9yOFpvai9aVEthL2krZk1yLy81dXpMNm01MlIKWC8rRE12U2J5TUN2ZiszLzVRdEkrdWZQazc5OG52ajU3QUE4L1BselRQcW5MekNwSHo5UC9lTUxUUEtuenhNL2ZoSC80ZlBZOTJlagozNTJKZmZjRkpmNzlYeW5SYnorWCtTTHk3bk5JK08zWjhOc3ZJUGg2RG41ekZoSjY4N25JTjMrRkJGOS9FWGoxT2NiLzhpekY5K0t2CkdPL3pMeUNlWjU5aitwNmV4ZlErT2RQNytDeWs1OUVaU1BmRDBhNEhJendkOTRiYTd3NjIzVHZUZW5lMDVjNUk4KzFoU05PdElUeG8KdkQwRWFiZzFXSDl6b081R1A2WG1ta3IxVGhwU3RaMmlWRjVObXFtNG1pemZTbUJPYjhZcHBldFJUTWxhcEdnOVVyZ1d4cFNzaHdyWApnZ1ZiNGR4MS80bU5VTzVtT0djdFVIUWoxZmd3M3ZRbzBmbzQyZjQwM2ZFc0JlbDZsb2IwdkJpZ2REL3ZwL1RJOUw0WUVIaytCT2w3Ck1ad2xQYytHZTUrUDhNQ1o3cWREUEhDRzB2MTBnTVYrRHZ4djczazhhcWJyOFdqbm94RXozWStHWkVic1BCekY0SStwOC80d2hYNTIKY0F3L1BneitVdnRkbGJZN1EzVGNjVytrOVRhY0dXbS9Pd3BmVzI0TlllQmt5ODJSNWh2RG1LYnJRNWpHYTRPTjE0WXdEVHVEa1BydApBVXoxbG5zcU53WXExdnZMMTlJUU9NRGowNnVwMHVWVTJVcTZiTFcvZENWZHZKUXNXa3dVTFNlTFYxTDVpNm1UOC9HS3EvME50MGNhCmJ3ODAzT3F2djVFUTc4WTNCaWoxMS9zcERUc0RtUHJ0ZmtqZDFUU21kcWNmVTdPZHhsUmZUY21rcTdaU2xadEpTc1ZHb253OVhyNlcKUEwyYWNFc0tVcmFTTEYxT1FFcVc0c1dMTVVqcE1rYWNzVTRtSUtVTGRrcm00NVNpR2ZjVVRzY29CVk5SRm5nWU96VVpoZVJQUkNCNQo0MkdaS09ia1dBU1NleVdNK2RQZUFZVDZjUVVRcE9zdTBrZWw2MjZjQUVRR0lnQkJDRURnSHRSUEZnQ2hnVEl3Q0U0T21nWXk2WU9KCnZJWmZHaklORlAxbUZHSWFpT3VIREpRRlFLbHZSeUdtZ1g0dmdOSS9qTG9tK2FON1RQckVmeGlCSUlCUVB4eEFvQjhPb09DN0VkQVAKQWdqMDg3c0ExSEszZjFjQW9YNDRnTXEySTFrQWhQb2hBSUYraml5MWN3QjlQTldBQUhydlNsVjJBSjM2TWcwQkFGa0dFdnF4M0NPKwpJb0RnbUFCVWRnVUFORkEyRWE5WWpkYmVDdGMvQ2pZOUMzUThEM2MraTNhL1N2UzhqdmU5U1VvQXBXMEEvVEFFQUlyOVl3Z01KRE9JCkFFci9NcW9NOU1zWk5CQ0VBRFR5NjE5SHJXUUhrS1lXZHNha3p4OEJVS2FZeE1rZVYvMXdBS0dCRUVBUTBnOEJTT2pueDgvQlBaUk0KQU9KQkFLRitPSUJDYjg0UWdGUmVmOEgxUXdEeXZUZ2o0d0FRR1VnREVPckhCQkJlUVFGQW9COE5RQmpVandhZzJ1dnBUQUJ5b2M5Vwpvc0tpRHpkUTJVWk0wdzhCcUdEZEJ0REpqY0R4ZGYveDlTQ2s3R1kvQWFqdFNhcjlhUklBMVBsVUdJaWpKenVBZG91dUh3czY3Z1p5CjFVLzMweEdUUHNnYWt6NGQ4TllrM3FEc2R5b1YrUU15QWNSL2RtWTRnTWhBQUNCd0R3YlFJOXhqR1lqMDgrOEZFT3FIQUZRcUF3QVMKQnNvS29NYWJneEFPb0xwcmFVZ21BQm51U1ZWdEpTR1pBR1M0SjFHMkVvZWdmamlBa0R2L0Z3Q0Urc2tPSURMUW4rcFc0OHhBN2dBUwo1UjhHSUdZZ0VWVUV1cE1pQTNYZFRjcUNrQTRnUkk4SklBb0N5TlZBQ0NBM0Jna0FtUVl5NmNNQjVHWWdBU0RUUUs0QU1xTUJhTzhHCk10eno3d0VRNmdjQkZQMXhtT2xIQVNqMDNiQ0lvczh3eFA5R0dranFSd05RMzdQQjNpY2pyZ0NTK3VsSC9TQ0FHbS8xQTREcUxRTUIKZ0pBK1ZkZmlFQ3IvY0FBVmJnUTRnS2o4b3dIb3dFSXJBZ2dDQVBwd3FnNEI5UDZGV2dKUTduOUhJU2YvRnN2N2V6ei95d1RrMUZkSgpDTkJIR2loQitpbStrSlJCQUtWc0FGMUpueDdyUDMxcHNHd2lYYllRcWR3TzFUOElOejhOdFQwTGRENFBkYjJNOTd4T0FvQThiMU1TClFQMElvUEQzZzJBZ0FCQVpDSXRBQUNBTUdvZ1lCUFNoa0lFZ21qOHlxWVdkTWVtekp3Q1oxbkdOU1p6c2NkVVBBbWhRNmljVGdOTC8KT01zQmxQanhMSXNDa0lpQkhvcytaMlZJUDFhOTU4MFptYzhKUUNaOW1INTJBWkRRenhQbEhsNVI0SmRNQUZEYm5RR2dENFlBcEM1RgpsbjRJUUtBZkFoRHFKeE9Ba0Q0WXJQZHdBR1hSRHdLb1lEV1F2eEZFQU9XcytYSTNneFYzQjF3QkJESHB3d0drREtSYnh6VU85MlFDCkVJdUxmalFBOGJxT3EzNnlBNGdiS0l0K3NBN2tDaUQ1ME5ZUEdhajU1bUFHL1NnQW9YNzJBcUNxelVGdUlBU1E5SVFDVU1seWlnQUUKSVFEVjN4ck9BaURVRHdFSTljTUJSTzRoK2tBcU54T29IMEFQSkF1QVVEOHlRajhhZ0NBSUlIcG9Bb2pyWnk4QWN1cEgwWWYwUXdiSwpuNGk1R3NnR2tFd2NnZ2JLVWdFaUEzRUFkZHhPb29GUVAyUWdCSkJsb0JRWmlBQ2tHYWp2U1JyaWVkcVA4VDRid1BpZUQvTDRYd3lwCnZCeWtCRjROVVlLdmgxMURBSEl6a0lyc2lLbkUzNDVxU2J3N2t6QUF4QXlrQUxSSEF4bnVVVEdKa3oydStvRkkvUWdBV2ZvWnh0cFAKOE5zaEFwRC96WkR2bTBFQWtNaXJZUWdIa05EUDB3RU5RSjBQaGhCQXpYZlNNcXI4d3dHRUJrSUFvWDRxZDJLZ0h3NGdMUDhRZ0VBLwpKb0JRUDRkbCtXZmZYRE1IMFBzVFZiOEhRQWtHSUtHZm92TUpyUDNZQUxvaUlnRTBYRFkrV0RJVksxMEoxOStKdGp3T3R6enhkYnowCmRiNklkYjlLOUg2VEVrVWdicUJ2KzhGQTRuKzFyQU1oZzJRUmFCUmkxb0dHZnZzclJtTVFOc1Y0enY3elB5R21Xa3pUN0QzL0x1aVkKd1VvUEJkRERReTB3Q0FJSUpBUkovZU9zakdoNFdWVWZwWi80RDJkQVB4Um52UWZSWXdmcEkvVWowS01CS1BENkRJUTN2TGgrdk05SApJYTc2NFFBU0YyQjJFZTE0T05MK1lCalNkbjhJdjdiZUd4UUZVZWtlQ2dKSVhJUWtmUWhBa2o0cEdSZjljQUJ4L1JDQUtGVCtNZlZ6CmFpMEVLVnFIcjRHODljQ0pqUURvNTloYTM2bXJ3ZXA3R1FHRWpUQ3pGRVFBRW5rMnVHdElQd1NhN0FEcWV0TGY5V1NRWlJqanFoOE4KUUtTZlBRS0loM3BlSEVEdGR3YzFBQkdEVUQvVStkb0xnRXo5bUFDcTJ1eTNvZ1BJd29RQUVPakhGVURsVzJrRUVFUnJnVkh6aXdCawo2c2NWUUtBZkRVQVkwZjl5QW9qcEp4dUFTcGFpVEQ4T0FHbjYyUlZBbW40SVFGdy9XUUFFeVFpZ3hpMFJBSkJkQkxxV29GZ0dTcUtCCmxJU2tnYXdrY0Nxbzg3Nkl4YUFrR29oTHlEQ1FBSkNyZ2R3bGxBRkFnVmNEa09EclFaN1FOME04NFRmRHJvbThIYUhFM2c1QjR1K0cKWFpQNGRrUkw4cnRSU3VyN014VHpEQ2FSSVNaeFRPaGtpZ2tncHA4aEFwQXdFQU9RN3h0UkJFSUFZUUJBcXZ6emRBRDBRd0JDL2JUZgpHMEFBTmQxT1VmbW40V1lTVzJCYUJRajFnd0FDL1VCS1dma0hndlRSQUpTejBrMEFPaVRMUHdpZ1QyY2FQNXFzTndGMC9ML2p4LzhXCmhwejRld1NTKzJYMDVGZXh2Sy9qa0ZQbmsvbm5FcEJUNStNRkZ4S0ZGNU9RZ2d2eG9rc3BLOG5peTZtU0srblNzZjdTOFZUWlpRR2cKb3ZGNDhWeWsrbHEwOFg2NCtiRzM3Ym1uNDNtY0RPVDVKbTBiNkYxLzZEdFZCeUlHZ1lFUVFCQnRHQWdPSUVPL2ZZNVJnMEgvL0NJagpnMzc3M3hCT0VQUE1IOHZvTC84Qk1jOWp6RnBPOW1TaUQ0YjBReFVnaXo1bmsyS096YWFQZEEvRkFTQ3Q2aE4rZTRZRjZTTml6ZjNZCngwSS9yMFpSUFA2WFgwQjhMejZIZUorZlpjbElIeHBENFZXZmpvZG4yaCtNdHQwZmFiMDNqRjhoTFhlSG11NE1VMXlIZmxqeksxVzkKazZ3QzkxaXBCUGZJVkJqdUtkK01ZelQzVUVnL1dQaEIvZVN0aGVENDVKcGZEZ0FGUUQvSFYvdEtyb2RySHdvQVFiSUFTR1BRN3dWUQpKdTQ0bGVNYVJSOFJ3ejNFbWo4TUlJS09LNENzOHM5Z3g3MFJFMEF5MlFCazZFZlJSd05RM2RYK0RQcFJBRExLUHdsUi9wSDY0UUFxClhFcWNXa29EZ0U1dnB1cHV3b3V0bndERTUzNGNzZlRqR0FEYVN2SCtGMVdBSklOVTFZY0Q2UFJhN1BjQ1NPcEhCMURSZ3U0ZVNQRmMKVEdRMkFka2JmU0lRalQ2VTNJa281Y1I0QkhKOExBejVVKzFLREEwa0U5TUExTGdWSndNMTc4Uk5BSEVEWVNPTXdnRmtHU2hKQnFKZQpHQUtJR1dnWEFHa0c0Z0J5R2tnQVNET1FCcUM5R0NnN2dFd0RjUUJ4OFpobi9vY0F4UFVEZ2V1eERPbEhBQ2owM1RBQ0NQdGZCQ0JoCklGcy9ROWovRXVVZkNTQ2NLK1FBZ2hDQXNQd0RBS3Eva2FwbkEwQm1CUWpMUHh4QUJlditUQUJDL1JDQVVEOElvQThtYXdGQWY3bGMKdVJjQW9YN3l6OFVZZ0JJTVFFSS9Da0RqS2NqcEt3TUFvT0t4Wk5GMHJISXRYbmN6MnZqQTEvVFUwL1kwQ2dicWVoa1hCbnFWdEEzMApOczBOUkNOQmlWOUdOQU1oZ3lpRC8xUUdnZ3hiQURJTjVHb2QxNU8vSzZpZmZ5T0FUUFFNL1BJRkJlczlHQnlDWnZvUkFISVdmczdFCnZoK1ZrYzB2R2FQbjVUQ1F4UjArK0t4bWdGVDU1OVdvMWVvUzlPSDY4VHc3STZQYzQwb2ZyRURnSlpNQVJPNGgvVFRmR2NSaFp6N3kKckFISTZud0ovWEFBT2ZUakJCRHBod0NFSlI4TUFvaTN2VWcvSjFlRGVIQml6WGQ4dzN0MHRSZitmWlhmanRVL0VETkFrSlpIQ1FRUQpCQUZFMFF4RSt1bUdNNDZCWmZlNDZpY0xnRG9mRDhnTTJaRzRjZFVQQnhEWFR4WUE4WitkSmg1TlAzc0hrSnIrQWYzc0FVQmNQeHhBClJKL0tqYlNNYS85TEFRanBnd0g5SUlCeTUySUFvTm9iZ3dRZzhXNXMwc2NKSUs0ZkJKRFpBa01BVWRYSEZVQk8vU2dBb1g2Y0JsSUEKc3ZRVEEvMllBRkw2c1FCRUJzcmMrUkw2MlJWQVNCL1Nqd3VBeUVBTm15SUFJTnRBTzNIRFFBa3lFSDdGWGhnR0RVUUFrZ1p5QVpCbQpvTjZuYVVyZnMzNk01L21BR2UrTFFZanZwUjcvcXlHSTcxVy8vL1VBSnZETklDVDRaZ2lTMlVDRFdpSnZoeUI0RUgwM3JDV1RnVFFBCmtYak1NOWtCWk1wbUw5SDB3d0ZrNlVkMnZtUUFRRGo5Z3dieXZ4a2hBRW45REZMNVJ3TVE2UWNCSkEya3lqL3dyMDdvUjdvSFUzUE4KSGdDQ1lQbUhBSVQ2NFFBNnVkN0hBWVQ2T2J6WWhpMHdhd2xZdzRjVGRRQ2c5OFlyRFFBRklTZitIb0xrZmhrKytWVWs3K3NvdUVjYQpTT2xISmc0QWdtajZLUmxMSW9ES0prUXBxR1M4djJReVdUb1hyYm9hYnJ3ZmFuemliWGtjSmdQMXZHUUdlcE1DQXdXL0ZRQ2lPcERvCmhhbDVvQkVNalFTbGZqdVQvcWZEUUtBZkNKYUM3SUtRRlZmcmlKTkdyVWpGZUxJWjBvK0kwY3pLTk0yRDBWcGRGSnp5b1ZESlJ3MzYKMk4ydXM2QWZTdndmWnlDeG44NVNPSUNpMzUwUjQ4OE1RR2J6Sy9SbVZJYjBNNHJpNGNlaS9PTUVrSk0rQ2tDT2VXZExQNDZyTDd1Qwp0ajBZYmIwLzBuSnZ1Qm5jWTZYSkFwQTU4Y01MUDZRZkUwQktQelR5ek9oREFNTHlEd0VJNDZvZkRCd2ZYL1htckh1T3JuYWYzT3lyCnVadXNlNUJzZUJCekJWREhFMXRDSm9DRWZ2WUdvTi9wSG5mOUVJQWNvR0VBMHZTVEhVQ2FjalFHR1JFQVF2UzAzaDVrc1VkL2JQMUkKQUpuNk1RR0UrakVCWk9uSHNmS0xHOGdWUUFXTGNRUlEyVVpTQTVBNS9neXAzVWxwQUVMOVFNenBIeXMyZ0ZUemF5MVd0aHJOb0o4NApwNCtUUVE0QUZTMUVUUURaK3RrYmdFZy9FQng1TmdGRTlDSDk1RndKUVRJQ3FINGpMZzBVc3cyMEhlTUd5Z2dneTBBNEV0Unh6ellRCkFnZ054QUhFRzJFOVQxS3VBTXJNb0FIVFFDS3Yrc2xBSEVDdWRTQ1pBZE5BWEVKY1B4Rm5UU2g3RWNqTVhnQmtVdVlQSlBiOXNBYWcKMEhlRHJnRENJZWdzQUxLV2xlNE9JTkFQQVFqMGt3VkFWUDR4QVlRRFFBQWdjQThaQ0FFRSt2bDRxajRUZ0pBK0pvRGdBTDZTZmpDVwpnVlR6aS9RREI2Y25FNEpCNHdPbEUrbkNxV2o1ZXFUaFhxamhrYmY1VWFqMVNhVDlXYXp6UmFMN1JSd0ExUGRhOXNLK1NTS0E0UDh3Ck4xRDBIME5STmhtZC9NZHc2dWNSa2QvT2tJRUFRSkRzQU5MVVlqdkdwTThmQXBCSm5Pd3g2V01DeU5iUEwxK0lHV2VMUGhxQVVEOGMKUU5FZnoyQVJTT3BuQkFHRUJ0TGNRd1VoRFVCeWtGOEJpSTRSUU5nQzQyMHYway9mMDFGTlA5cm9DVjFLTlFCeC9TQ0FYRHRmZlBDWgo2eWNMZ0V6NkNQMDRPMStrbitKVnBSOEVFTmRQN2tyZzVIcm8yS3IzMkZvZkFDai9xcmYyZnFMdVhvSUFKTHRnQ2RFRmsvU0JyMlNnCjdBQ1NVenRaTW1nQ0NKVHp1L1RUNlVZZm9aOEhReVo5SU8wUGhqb2ZETWdNMlpFL0x4TkFuRUZZOWNGa0J4QjF2aURnbnFZYkEvQVYKVjRHWkFKSVR4NzhiUUxUeTYzY0JxT2E2bUlBbUFORVFOQUlJNkZPem5ZUmtBcERtbm9xTk9DWVRnRXo2U1AySWRWNnUrYjhESUpOQgpydnBCQU1VaGRhc0pDRElJNTRIcU41SU5teWxaQk1KaElEVVFqUXpDRmxqTHRUZ0dKTlI2UzZYdGRoTFNmaWVGNmJnWGgzVGVUNUIrClZCNGxLTjJQa3hTODNQTEFOVmhlaGxPWXZtY0FvN1RuZVQ4R2o3VUtVT0QxTUlnSDZBTUc4cjVNUXhCRHlDRDBrS01zOUhZNCtHYUEKRW5vN1NBbS9HNkpFdmgybXhMNGQ0U1NDaDVENGQ2UFJid2RqM3czRnZ4L21FV2NNbmV5U0g0Zk5KTmlPUGxsQ0V6K1E0UGNEa05BUApRNWpnZDhPQmI0Zjg3d1lKUGVnZWlQZTFpT2ZsQ0c3ZzBmdGNqQ3ZTMnhhK0pjRTdTOXY5UVZyNkRtbTRuYXkvbGFpL2xXeTRuY0pnCjU0c3ZnT2ZOTDlvQmlQU1R2eUZEYStCWitRZG5nR2dCdkFMUXJOZ0I2Sk94cG8vR2E5NGJLLzFmbDArL2Q2SGhreSs3ai95My84Ui8KaFhMK0hqaitaUkJ5NHF0UTd0ZmhrK2Npa0x6elVVaitoVmoraGNpcGkxRkl3ZVVJcFBCS3RPaXlTdkdWR0tSa0xJNHBtSXdVVDhiSwp4NVBsWTRuVDQ5SHloV0RWVHJqK2ZyVHhucmZsWWFEOVNiVGphYXpydWFnQTlYMlQ2SDBkY3d4RWkvL2hnK0VmaDhJLzJsTkIxbGkwCjJpVUlBUVN4ZTJITzRXaks4RC8vQXlLbXBISHJvSC8rSjhSZVJTOFB6SmpjeVI2K0tzMFpHejNEdi95VndwOHovTXNYRkUwL3JPZjEKVjc2MUR4dDJ4dUlsTC9sWTNTN0xQWkZ2UnlucWpOMzJzcWVldGRxUE5mS3NCbjJNV1I4eDhnenhQQnRoK2hrRjlDQ0EwRDNJSUtBUApUanAzUEJSVHp6ajRyT2FkN3cxVCtVZTZaeEJIVURPVmYycHVwS3V2cDZxdUpTR1ZPd2tNSE52aU1iYjIwUVo5NENHa2VDTUtjY3c3CnI0WkUxb09Rd2cweDhpeUdmbFo5RURnUXphOVZiKzY2SDc2ZVdPa3J1UjZxZlppcWZoREJJV2dMUUNsUkIzb3MwdkVrYmFiemFYL1gKc3dFZU9BT0JYektMT3RuamdNN2UwdkZvVUlWWmh5T0p4MVFSQm1mVmVmRG5pRi9kSW5xYVptaVBBMXBqaGVFUDY2OFBZdXF1RFdDcwpMWFpFcXNYRWNWcWpUOFY2Q2xLK2xpemZTSjFlVDVhdEpTQndnTWVscS9HaVpmZmtMeWNBUUFYTDZlcHJRN1UzRTNVM28zVTNFL0p2ClZ6MHZxdjFnYUxrNzczbGg3WWRWZmV4bzlMRmpyQUxEZFY1Z285S1ZpTFhteTBZUEd3YXl1MkEwQ1lRcG5JOWhDdWFpK1BYVWJDUi8KSmd5QkEzZ0l5Wisya3pjVllZbWVuSXhnY2lmQ21CUGpJZnlLT1Q0V3hPUmNDU2dBb1lGMkJSRDF3bWdNU05BSDR3UVFHWWdBcEJ1SQpBWWdicU9kSnZ4WkxRZzRBa1lId3dQdENsSUlvVkFIaTRkVWcwMEFjUU54QUhFRGNRR1pUREEyRUFOSU1KTTdBVjdmbzdyRVMrMkVJCllob29FM2RjOVlNQUl2MWtBWkQzOVJBQ2lIWXdNd0VFYnoydUFKSUdFZ0g5d0ZlZ1Q4MjFoS29BR1FEaUMrQUpRSG5ydnIwQUNDZWcKUDU0Uk93QVJnUDU4K2ZUNzV4cysrN0lIQUpUejM0Rk1BRUw5WkFLUXBoOEVVTWxrc213aWZYb3NWVFlXS1pzTmxHOEZxMjVGNnU5NApteDhFMng1SElHQ2c3aGZ4bmxleG5sZFJ6NXVreDE0WGxyYmNhVmVEMlBKNFlTQUNFQjhNa2diNkFtSXlpTFJCOU9FUFhjTGJXM3VJCjRSN0tMZ0RpK2lFQThXRm5BaEFaS0F1QXBJSFl4SThCSUJFMjk4TkducFYrK0xpUExQWW8vV2dOTDFmOVlPR0hBQVR1UVFaMWlhS0MKRFNCKzRkUUFaT2xud05TUEd2cVJBRUlEWlFFUUdRaTVZeHBJQTVEU2p3VWdDQWNRQkFDRUJzcFo4WnhjODViZGpOUThTTlk4ak5JTQprQWFnVEF4QzhXZ0FFbWNNNG1TUDZSdGRPWmtENzBML1FuVDlZQXozaUtWOE1qcDltdThNaWxoN08yR0poY0l4cE9uSEZVRGE2QThCCmlORERBUVFwWGhFaDl4UXV4VEI1UzNFRVVOWE9JQUVJL2theithVUJpT3NIWXRJSEswRC8wd0FpL1dnQW9nQjllRElCaVBTakFZZ24KSTRDb0Y0WUFrZ2JDU1NESGlqQWFpSFlZNkZhSzBuWTdqV20vMDk5eEwwbmhLOEk2SHlZaFhZOVNXcm9mcDdWWUVnSWJKVFVEY1FicApaYUVYS1NyOFlKQkJpQjQrSHVRS29DeDFJTXl1QUNJRHFZY0dmZllDSUpOQkpuMDRnRFQ5UURUOUlJQkUyTnlQQ1NEY3d3TUJoRzlZCjlOWkRBR3ErSTlKNEowVUF3bURuaThhZkNVQzgrY1YzQUFMOUlJQ29CV1l2QVZ2dTRqc0FjUUI5UE43dzBYaVZBTkNsaXZmUE53R0EKRHYwdE80Q0VmaEJBcEI4STBvZnJwM1E4QVNtY2pCR0FpcTlFU3FaREpjc2hNRkR0VFYvRDNVREx3MGpybzdBMFVLVHJlYXp6ZWJqMwpWUkxiWWJ3VUJPRkx3OWcyaWZicU1ENGNEVUVBVWV3NmtPUUZwd21lMGQzelB3WWdyaDhDa0tZZkJKQ2JmdlphQVhJRkVEY1FYL05sCjBNZXUvYUIrQ0VCbXQwdlNSK2pIb284cTl2Q3FEd0lJTzEvbVZSTXZrODY1SDZSUHY5aUZ4Ym5XM1Y3dXZyY0trQWtnalVGSUg2MzgKYzJwRnVBZVN2K3FIRUlCT3JIaFBySGtBUU1lVyt5QUZXOEdLTy9IcUJ6RU5RR290R0FOUWRnYnhtTVN4b01QYld4bGFYWHNBVVB2RApBVHVTTXZCR2xDV0dleHdBSXZlNEFzaWlqdzRnUlI4WmpoNHVJYWFmL2l3QVV1VWZKNERzOHMrYTRBNTNUK2xxSEVJQUlnT2hmZ29XCm8xa0FaT3FIQUtUcFJ5di9VUCtMQThpaG4zOEJRRncvSEVDYWZxamt3eGtrcWtGdSt1RUEyb3QrQklCcWxtTVF5MEEwREpSQUFPRWsKRUFkUXkwNUs3UXdrQWRSMlErd1BKQnBoTjVNUTAwQkluL2E3Q1FnM0VBS0lzZ2NHQ1FDUmdYZ3ZETDdpUXl3RktRODlUNEtCVEFEUgpRMjRnbVg1TUZnYTVTb2lYaFdRR01kSHZobmhNK21TUE5idWpZbTNuazdIU284VWVlVWI2ZkQ5bzArZmJFWWpVandLUTFNK1E1NVVJCjA0OXEzdU1iR2IzMWNBQ0owUjhuZ09CZkhRR0lwbjl3QVR5dGZ0ZlhmMGtBMlFOQXZQeVRBVUFmVHRVQmdONGZyM3h2N1BSN0Z5cy8KUE5meTJaZDloLzdtTy9ZMy83RXZmVGxmK1NISHZ3NmNPQmZNUFIrQ25Md1F0c3MvbDhJV2dNS1FvckVZcEhnOERpbVpTRkNLSnhLbApFMmt4Q2kxR2d1TEZrOUhTK1REOGs2NjY1cSs3Rld5NkYyNStFRzU1R0dwN0hBSUR5VkpRRW1laXVZRWdOQlZrajBYalNOQXZJM0ZyCk1obzNDcUw5RXJWbFlsYUR6QUVqaXVHVlhXTlhkSnd4bjJrL1g5TVBSUHMyQm43NUhHUHFoL2I0MFFCa0xmamFIVUM4L0dQTitvaHgKSDlTUGhSNDE2TU5xUDdpN2p6N3JZNGxubU5GblJKdjQwYWVlR1lDMGl5VzJ2UXo5cFBtOHMyUGl4eXIvY0FCQlhQVURLZDZJbG16RwpLRmoxQWZGbytoSDB3VWo5NUszNElLU2Y0OHVlWTJ0OWtDT0xQUUNna3V2aHFudkoydnV4K29jeG1nR3lEZlJJSkpPQjZGZzNrTzZiClhXSVNKM3RJUDIwUCtrM3VtREhjWXdOSUU0LzIwS2tmRzBCY1B4RHNkbW42SVFCWmpTZFgvYVJOQU9uOUx5ZUFnRDRsS3pFVFFLUWYKQk5DSjJTZ0JxUFpHQkFGazZnZG5nTXpPVjZicEh3NGdYVDlyTVJ6NklmM3NFVUNhZnJJQXlMWDhReFVnVFQ5L0hFQm9JQUFRR2FodQpYUVFBeEF3a3BxRmJkdnJGSkpDMU9aQTFESlJBQUprR1F2cFF5RUFkRHhJWVRVSnU5QkVWSUt0QmxzS3dRV21oSHc0Z05CRG9CNHRBCldBZmlqVERYdnBqdlRUK1AvKzJBbHNDN1FaNWRBYVF4aUVTaXhiU0xKUmk3ZThJVC9uR1loNm83Sm4wd2dqNU8vZmpmRFl0SUFGSDUKeC9OcUVBRkUra0VBMGNjNEUwQnE3eDhMUU9MZm13ek5Qa05vOVh2RnRpci9hT1BQcDlaOE9BT0UrdUVBQXYwZ2dQZ1dpR0lCL0xUWQpBZWlEOFZvQTBQdVh5OTYvVVAzUjEyMzcvaTRCOUtXSUs0RHlMa1lnK1pmQ2tGT1hJNmV1aEFyR3dwRGk4U2lsWkNLR0taMk1Dd0JOCkprdEZFU2dwejhUS1ptSmw4N0hUbTRHYTYrR0dPK0hHZThIbUI4SFdSK0gySjlIMkovR3U1d2xwb0ZUdnE3U1lpWVpYRWJ4c3BJRUMKM3czQWp3Q25naUkvRFVkK0dvU280V2kyUml6MXMxZ2p4cXRCSEVPMFZONkkzaXpUV21aR1RQcUltTFRDbVBRWit2a0xpRWtmRGlCRApQd3BBVHZyWUFHTDZVVE5BNW5KM3JQb0V2eG1CYVBvQjhaajB3YVZlYnZUaDdoSDBzZDN6U0JWKytKZ3RwdTNoTUtUMXdWREwvVUZJCjg3MEJqRWtmYXd0UTk5VmVYRDhWMjNFSUFxanNxa3JwVmh4RDR1RUdnbU1VVCtGYUVGT3dHamkxNG9ma0wvdEVwSDVPTG5zaG92QWoKazdQVWQyUzE5K2hxNzhIRnp1T3JmYWR2eFdydkoycnVSZXNmaEFGQWtHWmVCSklBb3BnRklkZXlrRWtjQ3pyOUdhSVRSNE9PRnVFZQppaVFPM29XdzljR2dhMHdTV2RIclBhN3V3Zksyak1NOVRiY0hNS1orbUh1bzYyUzd4M21QTGF2L3RaWEtBaUEwRUFFSURhU1ZmMUEvCmtKT0xNUURRcWFWVTVmWkF6WTA0QUtnV3Z1NllveitvbjZTcG53enVpV0ZjNkxNYWRSMkN6ZzRnTTNJT1dvMUN1K29IQVlRelFEZ0cKQkhHalQxam1kK2hIQUtoNktjcUtRR0pGbUlvVFFMUWt2bms3VGZOQWZJUEU1aHVnbnhTbTlWYWFvbzhFM1UycmdJR2M2WHlRaG1TcQpBUEZCYWFlQjdJS1FZeGhJMGdjWlJPMHcxNkNCdkdJaFQxcGpVQllKWlNvSW9YdkM3d1lnbkVFbWZYYUxBcEJtSUZmOVFJemZqZ3UrCkJpMzNpQ0I5ZkcrSFJNVEdQMkx2SDZ2OEl3RFU5M0tRbFgvVVNnMThJMU52UTNiNVIraUhBRVQ2TVFHRStvR2dmc1FBa0N6L29INDAKQUlGK1RuRDlMSWtCSUZjQXZUOVI4LzU0T1FEb3cvUFZuM3dGQVBJZSt0Si81Q3RQWmdDRklBcEFsbjRnUldNUlZ3RFJnVXlzYkNwKwplam9CS1ZrTlZtNkg2MjZGRys0R0d1LzU1VHhRck8xUnZQTlpVdHdxVlJxbzczVS9HY2hxaDlrR3duQUdzZGtnZTUyOHhpRGtEdDFOCkRPK3JLcy9vWk1FWTd2bjNBQWoxQTlIY0krano4MWtJYjN1UmZyUk5Ebm05eCtyNTBwWS9hc3c1MDFhSFpzTkxyZTFpSzd4NDdZZDYKWG9aN1JCejFIcnkxaGRRUGlBY0IxSEZmckhtRWg2MVdTRDlOZC9zYjc2U053Zy90Z0NVS1B4cUFxclpGdDB1VmZLUitLT1FlalQ1Rgo2eEU4d0ZDOUIrbWo2MmRaMFNkM3lRTTV2cXdDQURxODJuVndxZXZ3Y25mK1ZxRGlUZ0lBVkh0WDN1ajNmcFFBaEFIMHRENFVYMTBOClJBK3BJS1FlNnI3WkpTWnhza2NEa05MUEh3S1FxUjhOUUV3L0RnQ1Jma1RvNW00WjlTTUFwT2tIQVdUcnh3QVE2b2NBeFBXRE1adGYKcmdDQ0Qya0lJR2ZiaS9TVCtGMzZNUUdrOUFQS1dWWkZvRDhHSUVzL0dRR0V4K0Nldk9rUWhPYWdNK2puRHdHSUdVZ0hVTjE2akJsSQpMSW0zYnBIQlpxSmxPd3dBbE1GQStyb3dsWHRKak00Z3Q0NllqRFlyclVwQm1mcGlKb0NvR2tUSHBDSUNrS3VCWENXRURGTGJDYktBCk9ZTGZEbEJRSWFaT2RnMWNMTFZZMTA2ZFBxNEF3cjhYNG45SFVmcnh2aG4wdmhubUFKTDZHUVQ5SUlDczhvOEFFSDJTdy9jZzBnOEgKVVAwdDZaNGJjUUtRNm4vdDJPV2Y4cXUyZmtyWTlqOEFJR3lCVWZtSEFBVDZNUUgweVRUZUE3WDJ2Y21xOXlZQVFPVWZuYXY5OU1zTwpDU0R2a2E5NndVQkh2L1pDanAzejVaejNINzhRZ0p5NEdPVDZZUUFLRlk1SElFVVRVVXp4WkF4VE1oRVZtUXhEU3FjaXdrQ1FpWGpCClFxQnNQVmg5TFZSMzIxZC94OXQwUDlEeUlBb1hqUFluOFk2bkNUQlExL09VWmFBQmlHQ1EwMEFxUHcyRWZ4d2dCckhaSUQycDMwWWcKMUF2VGVtUW1XVEJHb1lpaUwxekhtSCtDQ1NEU0Q2VC8xODk1MHIrY1ZYSFhqMWpXenVsRDNMRjZ2a2lmRVZ6MHJrMDZ5M0VmdS9ObApMdlVTZC9WeXRMMUdYZHRlVHZxb3V5dW9WcGQxZXdRNHhwSVBNZ2ozZWdBRGFRQkMvWWhsajVJK1hELzQrczhFSU5KUCtkVVlEN21ICjZLTzZYUnQyY0hGNy9tb1FndnBCQUNGOThwYThFS1FQQnR5REFRTWRYT25jdjloMmRMVzM2Rm9FQUZSekwxNTNUK3pzZ0FCcVlnYUMKRjdNR0lNNGdzeWFFdjJvU3g0Sk9Pa04wNG1UUHY2c0NsTVU5Qm4xc0FEbm93d0RrMXZiaVM2NWM5R01DeUN6LzRCQTBqZjZnZ1lxWApveEJ6L0prQWRId21rcitZQkFCVlg0OEJnR3F1eHppQW5QcHhBTWpVRDZlUENTRFNEd0pJTTlEZUFjVDBJd0JrNm9mM3Y2Z0NoQWJLCm9COEJvTDNyeHdWQVpLRGFOVFNRRGlCclJaaUlWUk1TZFNBRUVCbUlBd2dObEFsQXVvSGMrbUtTUkk3MVlnU2c3c2NKQWhDZkUrTEsKY1pVUUI1QlFrUVdnZjhWQW9qTGtCSkExQW1LTFJJdEpId3l1SVhLTFRwK1FIUEZ4MVE5RUZDSGd1M1VBYU5qemphb0FzZkpQTmdEaApKellPSUxyOUJTNkRGNTgyWklTQmNBRzhHNERFOU05bXNOaTYvNWZhQVFqMHMrYk5BaURhQTNwWEFCMysrbmNCQ1BRVFJnQ1JnV3dBClNmb1VUd1NLcDRJbGswSEJvSWxvMlZnMGI5WXZpMENCbXB1ZTJsdDlEWGQ5emZjakxRL2lyUTlqYlk5andDQlpCMHBqTHd3WUJBQ0MKdUFLSURNUTNDc0pGOGlhRGlEN2FxSkJKRml0MnJjZ1pmYWRtSythZnNGY0EyZm94QUdSdDhVejFIb2QrZ0RzRUlOU1BiQ0tycFY2bQpmc3ptRitvSHd0cGU5dHlQMXZiYVZUOGlyT3JEQVlTZEx6SVFBa2lzZkdTZHI3MEFDT3M5aUo3VFcxR0twaDk3eHBucGh3Q1V0MkxyClJ3UFFpY1UrRHFCamk3MEVvSDBMcmNmVytrcHZSc1VFOU4wWUFLaitiaEFBQkRFQjVHcWdUUHFCSjV2MCtXTUFja0FuVXhpQVd1NjcKeHk0Uk9RUEtNUUZrb0VkRnZzVVo5TGs5MEhpcm53REVsMzBoZzlqWWplMmUzd1VnTVZMam5QNUJBQlV0UmNnOVdnaEFGVmY3Q1VEeQo3M1VBeU5LUEFoQ1ZmN0xRUitvbit2OExnRnhHZnl3RC9TNEFBWHBjQVhUc3N2OVBWUXN4VFBWaTNORU9Vd0RDUmhndENsUG9jZHdpClE2YnBXa3JrT2k4RjRVZ1FXeUYvSjQ1cHY1dG9rM0V4a0RVYnBESElkYzA4cE91cEk5M1BVajNQMDVEZUZ5a3RmUy9USXErU21ONlgKQ1R6d3ZFNWxpc0NRcXBUWXdla1o3MXZIckNzRWpzVkR1K0xpYUQvaG1pQWVYQ250LzFhc21xYUhFTzBKZUwxa3Z6U0FsMUtLT2lOWAplRG5XZWFtL1YweWlnSUh3U3V4OU00Z3RNTy9yQVloRm53RkJueGNEZUlkblB2M1RKZGQvS2YzY1Q3ZmFPeDhTZ01UZVAycjgyV0lRCmhEZS83TVZmV3lFRUVONy9pd0NFRlNEUUR3RkkwR2V4NC9DQ1dBQi9ZS0YxMzF3ejNnRURkMEg4YUxMdXoxTlZmNzVTK2Y2RjZrL1AKTmU3L3V1UGdsOTJIdi9RZStUSncrTXVlbzEvM0hUdm55VG52aFJ5LzREdHgwWjk3S1hEaWtpLzNzdi9rbFVEZVdEQi9QQVNCQXdpZwp4emFRR0FtS2xFeEVTNFdCb3VKT3FOTnhDQnpnY2RsTW9td3FjSG8rVUw3cUs5LzJWdHowMU56eU5kd0pOOTJKTk4wUHRUeU15RHBRCkROTDVMSTdiSkZyLzIvdnAxY0ovck5RT3cza2dIQW1pZGxqeVY3Rmh0Tm95MFdxTkdUMHlwWkNCMzc3Z01TbURNYWVGTVAwL24zWHYKYXUwR0hTM09xZzhPT01zTnl2OHhHdnVKVCs2UFFzTGZZOG5IcGsvNDNZZ2p0bjdzRzF4UTI4djNjZ1FEeDU2WFp6QjlMMFo3bjUrQgo5RHdicGVBZHhYbTZuZ3lMWlVlT1BXUEVFbmRxbExDTThKdDhZVDBBTG9IV1RYLzFoZTRZSEhibXk5MDVmYmgreWpZamtPS05NS1pvClhkeTQxQjd4WWN2YWFYa1hEODQ3WStjTGNuekJjMkpSMUlIRThiTG4yR0kzNXJQNTdzTXJmWVU3d1lwYjRlcWIvcm83b1laN2tkcmIKd2ZvNzBZYTdNVWpqdlhqVC9VVHpneVNrNVdHS0dHUklLTzBhd3pjcUhZOVNydEV3UkxocHpSUjQ4N0hTY2k5Rk1XczhHTVVncXlBRQp4ODMzK2lGbTFZZVhmK2lXUG5BQUQrR2s1aDZLMnZiTVlWOGNlN2Nib0paOTB6STRCS2J1ZEN0dWNMdVZnbFJzSnNzM0VwalQ2M0ZNCjJacWErS0h5RHdISXJQMUFUaTFFOGppQWR1TFYxeUsxMXhLMU93T0liOUY3M1U3WVpjaXJjYnJKcm5hZlhmNXQ4UEFKYUZzL0ZuRmMKR1dTNVI0dk5JTkpQNFh4a1Z3QXA5OGhHbU9pRnNRbG8way91aE5qdnh3UVE2b2U3QjNQMGtzOEZRR3BoL0pwdElBSVFSQU1RR1VnRAprRFFRSlc1dkVXUVpxRlVHR2VTUUVBTVFOMUNtZllOTUFGa0dTa0pjR0dUcEIwTUF5b1FoaElMSklBS1FGZzRnYmlDRURsb25lMGhDCkdXS2p4NEVoVi8wZ2dONkpPaEFCQ0Eway83dW85aVBwSThPbmY3QUN4QUhFeWo4S1FMVDRpd0FrUG5sY2o1bk5Md1FRR29nUFFZdnkKajZ3QVpRSVF2d09HQWFCYUJxQytJMS81dUg0d0NDRFFEd0lJRFVRTUtyQUJGQzZhaUNnQVRVVUlQUnhBa1BMcFdObHNxSFRKVzdiaApxYnp1cmIzdHI3OGRhTGdka0RQUllWa0VpdUkyaVdpZ1BuaHB5YTJpMlM1QitGTVdxQ1VHMldQUjlwM2tsWUV3bVFBRUZ0RzZVUmlUClBnUWcxNU1vSG41U0djajV4eEtBMkhTekl4cDlsSDUrR0FIOU9KY3VPZ0JFaFI5eWoxTS9Mbk0vcEI4TTBnZkRBZVJLSDZVZko0QncKa1pjOFVHdUZyQ0tCdmhDYUEwaWpqMXJyZmsxTk92TmhaOTd3MHZSREFFTDltQUJDL1pnQVF2MFlBQkpGSUt2ODB3UDZPYnJVdlcraAo1OWhhWDlHMUVBZVErQ3IxUXdBaUEzRUFPUTJrMHljN2dOb2ZKbDNUOWlERndueGowc2NBRURlUVdlTlJsUjRxQlVuOUVJQmMzWVBXCnNVbytLaWFBdUlIVUJ6OTc1dDBkUUlnZUFoRHFod09JOUVQeUFQMUFUUDFnZU5XSDlBTTV1UkJGQUpWdnBRbEFZc01oUG45bWhRTkkKdTl1dVNSLzhmbHdyUUJxQU9JTU05MFNMRnlNeUxoVWdBQkRwWjQ4QXlxQWZHMEJhLzR1M3ZUSUNpQytKNXdCeUZvRmlqdnRqV0duYwpTVUlBUU14QWNFQ3J3NVNCcUE3VWNqc0dRUVk1SkhRL0R0RVlSQkl5Qm9OU25VOFNGTU5BZG5wZjlHUDZYanFLUTFnVzhyd1M1eW53CmtJSUFvdGdBb2svMk10aHA0dEVrUklVaUNrY01QeWtiSmFLcnhaOUExcUZmMHA2dnUwZnVka2hCQUZsVEtjSkFTQit0L0lOM2VOYW0KZjNZRmtEMytiT21uK2xyVUJCRFNCdzFrYndPOUt2U1R1K3BCL1NDQTFQaXpHNEJRUHg5TzFQNWxvdHdDVVBPQnI3c0JRSWUrNmp2OAp0UWYwb3dFSWkwQklIMjRnME0rcGlUQUE2SlNsSHdHZ1NUSDNRd0RpOUZFQW1rbVdUa2VMNXZ6RnkzM2xWejAxTjd4MXQveTF0N3dOCmR3Tk45ME90ajZKaUp0cmFKaEVNMVBNeVFjdmp5VUEwRllUZXRVcEJzaDBtb3pFSTE0amhNakVqZGxYbWR3R0lpd2NCWkQ1WkF4RC8KdXpUeFpIS1B2YStWM01FY1Z5bVNmaURXMmtsYlAyemNSN1c5TFBxTWlMejYzTnJnUjIxbWlHMnYzdWNqTEhiNVIzTVBSZTA2WTIwUQpURHZFNEdKcFdpc2tyNHY2R0N6cEIrTGE2b0tZVlIvZThPTDBLZDBJbHpMNmtINVVrOHVpRCttSDBLUHBSdzArTC9RQ2dFQS9SeGQ2CmppNTBDUUF0OXh4WjdEcTQxSE44dzF0eVBWUjFLd1FBcXIwZEZCV2d1NnI4Z3dBaUEwRmFIc1JsWTlmQklDa2huVDY3QWNnOXJmZVQKTExacGRQZGtBSkFkZ3o0YWdMaCtOQUNaUFM4eldRQWtQdnV4MWljQkNCdWc3UFVnQUdUaHc5SVB5R05UeExYOFF3RFM5TU1CeE1zLwprRndKb0x5RkJBQUkzbnNCUUdJWnluWS92U0JaN1Fmam9oOFRRUGpOY0FBNTlPTUdJRXdHL2RnQWN1ckhCbEFXL1dnQU11aGpBMGpUCkR3Y1ExNDhPSUxNQ1pCb0lBVVFHSWdZaGdCcXZ4ZEZBa2tGMk5BTzFTdjI0R2dnQlJERkxRWnFFT0lBMEE1a015dFlhYzRZYnlHU1EKaUhTUCtHUXZRd2JLNUNGSGxjaGdrUGFRNjBmVEVsV0FPSURFR1RmM0lIMjRmbVNHUkp6NlFmcFkrckYzOWJDbmYvQk55Z0pRNDYwawoxb3I1RGtBUTFBK0U5RVBUUDlUL3doYVlXZ1B2QkJEbzU3ZzFBQVQ2Z1ZEL0MvVkRBSHB2b2x6Y0JleDgvV2ZuMmdCQWg3N3FnUnc1CjF3czVlcjd2MkFVUEp1ZWk5L2dsM3duTFBWdy9DQ0RRVDhHa2lBV2djREZPUFU5SFM2YkV3eEo1WERZVHd6UGxNLzNBb0tMcFVQR0MKdDNUVlU3SHRyYjd1cWJucHFiOGRhTHdydW1CZ0lMWk5vcmhkQm00UnhPdEFFUFpqZFJnSUFZUUc0dTB3SHI2SllpWUFaUXJYRHpjUQpQUUU3YU9adjVIK1JDYUJNN3FIenBCOTBqOGgzWjBMQ1BZN09sOU05R0lzKytnWS82bDRXbUo1bnd5eDI4MHR6ajAwZlhIZHQ2NGZRCmcxZFFQaUVyYWo4MDdNelh1dGRiQU5MMEE2SGxYWnArU2pZakZLM3Q1U2o4MEl5enMvRGpTaC9TRHdJSWwzMGRtZStFSEYzcWhnOFMKQitkYWo2ejA1Ry81VHQ4SUVvRHE3NFpOQUJHREVFQVVacUNVYTB6aVlKeVZIanVaQU5RQ0IyN1IzYk5uQUJGOU5BQVowRkZWSCswTQpiZTNObC91SjF3Qys3N21zKzFNVFlLejBnbFVmTEwyd3Vnc0RrQWtPYmZaWkE1Q21Id1RRTWZEQlFxTE1BcENvQTIzM2E1MnZpcTBZCkFraHpqMzJiT1RmOS9Jc0FZdnI1SXdCeTBjOTB5TlRQaWZHZ2pNTTlybk0vRGdCVnprY2h5a0RXREpESXFvZ2JnK3lGOGJSSElxUmgKT3dFQkFHR2tnZUJybkVwQkdvTmFib3UwM2tsaTJ1Nm1yT2hOTWEwMXBrbW80M0dDcC9NSkFDZ0ZJUU5wR0VMMFlJT01lbVM4TEpSZApRb1Fob28rNnNFa0R1VVlSUkY3MlhCdG5HbkhvSWFsSTQ1RnJYTjNEVERhSSt1bDdQUWdCQUVuNk9QUkROM0JHQUxFeFJxdjhjeS9GCjlLTURpTWFBMEVBRW9OTmJZdWREQWxEaHVyL1FXditGd1NGb29BOEdBWVRsbjBQemF2MlhWdjc1WUx3R0FDUzNRR3o0N0Z6SHdYTzkKQjc3dU9YaXU1OUNGN3NOZkN3YVJmaUNnbjl3cmdSTlh2TGxqUHNqSmNYL2VSSUNTUHhGR0FCVk9oU0VJb0pMcFVDWUFsVTRuWktMRgpzMEV3VU1sS1gvblYzcW9ibnJwYi9vWTdhb05FdVVlaUtBSzFQNGwyUG92TFhwakRRQkEwTVNPc2FvZnhmUzlqUDRuUkdSVnJQRWdqClVmS1hzNVRVcjU5VFRNRmswZ3llU2Ywc3VtbTZjbjQrdy85OFNPTG5NNWhkQWNTclFRUWd1aEV2NmllVWtUN2lxN2lqbjZTUHZFR3YKV3VoTytyRzJjbGJoZDl6TTJQQXlkaHkyNkdQUC9WaFhTclhRWFVUdWM4alJROWM4Q00zNmFOc2JudDZPUThxdXhqQ2xXMUdNcTN2Ywo2WU1EemdaOUNEMGFmVTRzOWtGdzZqbG5TVlI5RGkrb1R4SDc1bHBPclBVV2J2dkxid3I5SUlCcTdvZ0tFTTBBYVF4cXZwL0F0RHhJCjhwajB3WmpFMlVzNGdCU0RNa1IzRHoxZjNKUEhKWnA3bXU2bU1hN3U0VzJ2VEFEaUFpWUFNZjNRMkR1dWdWVWdabFVmVlhleHpaR1IKUGxFWmR3Q1o5TW1mRDBOT3pFY0FRTGtMOGRMTmxOaDQ5bHBZckVHNXFpcFBIRUJvSUpNK2V3R1FycCtWQ0UwOXU5SW5FNEFNL1NnQQpaZEVQQjlESnFXQUcvZGdBSXZwd0FHbjZzUUdrRExRWXNSZUZTUUNaQmtJQU9mY0hzZ0hVc0JPRFdBYkNPS3BCYUNBUkNTQTNBeWtBCmFSTFNWc3VMQmZOeTN5QkFUL3VqT0FZQlJBYXlKQ1J2WEd6RnJTYWt1bU9zVFlZNHdMaExxTysxSTZ5K29tQ2txV2hYSkdsMnlmalEKV1VEQzBPd1JkNCtsSDlud1l2cFJNZHBlVEQ5cHZvaUQ5S01CcU9HbURKYUNuZm9oQUlGK0VFQnE5R2NqVUxEbUs3RG9Rd0NDa0g2Twpzd0VnQkJEZEFSNzBBd0g5dkQ5V2JlMEIzYkR2ZlBlQmN4NHcwTUh6WFljdXRCT0FVRDlZL2lFQWtYN3lKNE1Fb0ZNQ1FDRUVVTkcwCnVPdUZXUGtsdW1BcXdCMFdPUW9OSHBvSkY4MzRSQjFvM1Z1KzdhKytiaHVvNlg0SVo2SnhKQWg3WVYzUDdWNlkyQzBhZis2c0hZWXoKWG56bkp6U1FpalVleE8rbklUQmtHQVVsWkdvbWU4QTZHTzBoaVllQ0lNdlUvTklxUUJUc2VRRjl4RllSa2o2UW9GTS9WUEtocW8rawpqOUFQemZxWWk5c3h6dnVONi9VZXpUMzJobnZzamdwcVpaQWFtTFVYdXB2MG9ZMGU1RTVYYXRhSDcreGN3ZWpEOVFQSlZQSnh0TDBrCmZUaUFYT2xEK2tINldBQVNJODlIbDBUd1g5Q0JoYmFEaSszNW01N1NhLzd5Ni83SzYxNEVVUFh0Y1BYZEdBQUlrd2xBbVNTa3hjU04KUlJ5ZExKaE1BR3FHTnhtMzhNRm4wU25iTTRDSVBpYUFPSDFvOWxrN283dUhYZ25ZOTNldSs1UHV3UzNRK09RTjlyenN1b3ZTaGpIMwp3L1FqQUtUMXY4UUU5RkxFVlQrUW5JWEkwZWtRQXFqOG1nQVF2QU1UZ0xoK01KcDdCSDAyWWlKdSt0azdnSGJUeng4SGtFTS9Gb0RJClFBUWd6VDI4OXVNT29JcTVDRVFaYURGaUc4Z0NFQm5JS2dMRmFHMDhMd1hWWDQxREVFQ1dnZUJyakRwaXNocGtHNmo1bG9vaG9iZzIKRmFRVmhEUUdrWDZ5R0loTGFDOEFjakxJdlR1R2k1dzEvY2lINHZKR1phRk1jVFhRbm1LTVhhczRuMFovTFB2ZUZIMTZYdzMwMHBvdgphK29aNlNNdkhncEFySWp0QXFDR213a0VrRWFmcXAwSWhzby9XUUNVdityRkZoaFZnRUEvT2RZQUVMeDNRMmo3SDE3K1lRQnEybmV1CjUrQjVyeWdDWGVnNGVMRlZGSUV1OWh5NTFIdjBjaC9rMkJWUHpwajMrTGlvL1NDQXVJRkVBRUJUb1lKcHBaK2k2WkJvYndHQXBrT2kKRGpRVGhqaU9aeU9nbjlNQW9DbEJwYUk1ZjlHeXYyakRWN0hkaHdZU005RjNnamdUM2Zvb0tpUGFZVmdONm5vZXc2a2cxK0ZvY1JkVgpjZmNNY1FjeHVvbVlpdHd4aUcrZnFEWlJ0RXBFcGxSY1E4cWhVaENIamxuc3NVdFFMQUF5cmNCRDRiZHo0YmVDUVFDSjNTTGVqVUJRClA4RjNaMEp2aHpYOU9Pa3piTlBueFRCdThLTnQ3Y01CWkUzdTI5elIzS01CeUtJUGEzdXB2b2tEUU9JNmR5dGRlek1Gd2Z2NzRqMWUKNUtDYlkxZER0cStQWGZMaEtkd0lZYlRsWFZyaHgxN2NiaFIrcU9TajZVYzB2eFo2UVQrSEYrQ2ZqNmloeW44K0xhQ2ZuUFdlb3F1ZQpzdXNCMEUvRk5URzRCZ0NxdWhXcXVoT3R1eDJCa0lIc0xwaVZQVExJMmRMUzIxdHVVVTlvdVpmZ3NqSHBvM0kzaWRFa1pOS0hBd2pSCjAzZ25wUUZJSy93UWQ4ekF6MTBMdmd3SVFKWitWTldIQTRpM3ZTeDVaR3MyTWYxRVVUL2NRQ2FBU0Q4SW9NTXpBa0FsVzZuVE85R0sKblpDb0EyMExBTEc1SDJXZzhzMm91MzRzQUduNlFRQ1ora0VBa1lFNGVqTG9Sd0RJVFQ4Q1FLWitUQUFwL1JnQUlnUDlMdjBJQUpYUApobTBETFlSdEE2M1lCbklXZ1FTQW5Qc0QyUUNxMzQ1cUFNbzBGZFIwTTRiUkpFUUEwZ3prYUlmdEFVQ1pHSVRvY1RiRkJIY3lTOGlsCkx3WUJBSkdCbUg1c0FHa0dNczl3Q2ZHSEpCZzg0S1Vkcjl4UkJpNldjTWwwM243YzRTZnVLZzFBU2o5dTVSOXI1WmNBRUcvaDIvcTUKbTJUbEh3VWdQdm9EN3FuY0RtTUlRR1diWXVxWkFJUXRNQTRnTVFDMDZxSHlEd0lJUDd3ZW5CTURRR3I3SDFuK0lRQjljT1gwK3hjcgpQL29hQWVRbkFISDljQU1oZlhnWERQUUQ5TUd2QWtBelNqK1F3cWtnR2tnRFVObHNwSFErS0w1T1JjUytpTlBSNHJsSTRaSzRhSjNlCjZxbmNrWmVXbXo3Qm9EdCtORkRMdzRoTUNHK2EwZmtzQ2dZUzk1Q1gxU0FhanFiWm9NQzdOSVl6U09SSGUrTkVIcnRFSkdOaVJVdnkKSDZNbWdPQWtyeDVCNktIbUh2c3ZNbW84R080ZXg2N29QNHhpK1FjQmhQb0p2TldIbmExeEh3VWczOHNocDM1R00yMXNxQUhJRkk5TwpIMk5IR1J6NnNhNlVjcGRuYTZ0RFlTQW5nT2dPZCtiYUxoeHROZ2Q5TUs3Nk1RRkVPenU3VGpxYkFFTDlRSUEraCthQlBxS0FlbUJCCkFPandja2ZldHE5NDIxdCszUS82cWRqdVFRQlYzZ3hXM283VTNncVRnUnlqMEJrTVpOSkhSVGpHTlhyeHhvcDZRdlBkT09GR3hLU1AKRTBDYWdYQlhEcGRZQUFMOVlOUlAxcUFQNmtmVnMyK3F6ajQ5Tk9uakNpQkVEd0dJbFgvY0FlUmFhMkg2aVlCNFRBQVZMb1pkeXo5NQpjeUZYQUZWY0ZiTkh2UE9GeHhxQWJQMXM2TzZoYjh3VlFDWExZUk5BaG5qc0ZDMkVYUUZVTUJkMkJaRFoveUlBdVE1QmF3RGkrbkVGCjBKR0wzai9CdS9ucHVXajVmS1JpSVlxcEJBTXRSYXVXSTJBZ1RNMXFCRk83RnEzWlNGQnFONU9ZdXExVTNkVUlCZ3hFRElMVVcybTQKRm9jMFhrOWdHcTVIR205RUVVQklIemlBaDFnSGttZlVpSFRidlJpazlXNFVEeUI4UkxydFlReERBS0poSU5lWWZURUxSbW9xU0V2MwpDenM5TDhVbXZ4aTY4Uk9QZHNiWkpyTmh4REZrUWdxYlZ0ckFrRDFDWksxanA2am5zektTRTFWRDZKNmVsLzM0dGZ0Rld1eFdMQlZvCjAxQVZmc1NXOXBJKzZnb2hQcXRaUTRYNGh0SndPNG1iSDJKbzZUdDJ2c2hBZlBORHZ2U2Q3d0VOK3NsYjhVQk9McXN0RUxVSzBJSFoKbGsrbUcyVmtCV2lxNXNQSjZnOG1LdDRmTC8vZ1V1VkhGK28rK2FwbDM5ZmRCNzd1TzNSZUFHai94YmFEbDNvT1hlNDlmS24zeU9VKwp5TkVySGdSUTdwZ0hjM0xjbXpmaGcrUlAraUVGMHdDZ0FBYU9JWVV6b2FMWk1CZ0lvZ3BDTStGaVdmdUI4R04rcG1qVlU3cnBxYnplClYzMnJ0K1oyWDgwdFgrMnRhUDN0bE53bU1TcDJpNWJWSUxsVG9taUgwYjNENU0vZHJnZzZtMkpzMzB0V0VLSTJXVlJzQzQ3M0Z4T0oKL21NRUV2dDVGR0xTQjBPbElMSU9sbm5NV2hIRzZhb3p1SmdyeXgxNW5UdDhXdlBPV1B1UitnbThIWllaOWI4WmtSbkYrTDRaOGIwKwpBL0crR3ZYS1dSOUxQR0xFUjk2N1ZJU1d1R3NqUHUyUCswV0FPS0FmbFJFSXZ4RW1Xa2NWQ1l3aFdhdGFJSUxUUDZvQ0pHdWNXTytSCnNWcGQyeWtJVGZwVHZSTkQrakVYZHZHUWRjZzl1SjhoaEF4RUowOHVlaWhXNGFmbitJTHNlUzEwSFYzc2dPVE1keDJaRjU4ZkRpeTEKNzVNN2lCNWQ3U3JZOFpkdWU4cDJ2QlU3dnNwci9xcnJnZW9id1JxWnVsdml2aTcxQUtEYmtRWXcwSjFvSXpESWlxdUJPSVB3SVR6QgpjSThMZ0ZUVENqOUtaWXlqWTBWQndXU2E3T0ZQSSs3UU1RLzlaTFhRZm1iNDQ3WkhHNjIrcDVaTXEvL0lQVnJwaGQvbXRneWNzUkVyClhZL0t4RXJXb3BqaTFRaW1hQ1Y4YWpsU3NCS2x3TVA4cFhEZVlnaS9RazR1QkhNWGd5Y1dBcERqOC81amM3RkRFMTQ0VTdJWk95MksKa2NMaVp1ZUxndHpoQmlwYmoyb3BYWXZZY1ZTbklpeDZwVXJyMldrcFhJd1dMRVRNbkFMM3lPU0RlMllqZVNBZW1aT0FIaGs4enAwSwpucGdNUU16YWo5UlA0UGhFS0djOGlEazJGc0FjdmVLbkhMbnNneHkrNU1YWUFNTFlBR0lHa25VZ1phRHE5VGhFQTVBd2tCTkFaQ0FOClFMYUJia1FKUUR4V0hjanVoWW5jaldJMEFFRTBBSkdCVFBwa0IxRDNzNFI3R0lDNGdlZzRDNEM0Z2VqanZoWVRRQ3FzS29EQk13NGsKc2ZrZVh2VnhCUkRHQ1NEMTM4NEJaTlYrYkFEaEJZUGVYMUEvZFRmakdBNGdiSDRoZ1BDUzRCaC9adnJaRlVCaUFmeGNhMVlBVlFHQQpQdjI2ZGQvWFhUZ0JqUUFDL1dRQkVPaEhBNUNtSHdTUU1KQlZEU0lBOFpnQUtsenlsYTZMM1JHcmJrZ0QzUklmc3V0dXcxVWtKQ2FqCjcyTWRTS3dSUXdQSm0yYlk5MCsxcTRPTzdZTHNwWCtPYXBBVFFLYUJST1FZdFJrczVOQjBrZmJRTENPeDg2TVlTWjh6bW52TXJjeHAKM2xuazIxR25mb1l0L1l3STkxaEIrbmpFcGo0anRMeUw5TlA3WkFqQ0Y3ZnpFUjhDRUtRTlhyMGlReUxzeHVCWkFNU3VvTGFCOExxSQpuL1dwNStYWTJQQnEwdFJQMldZSXdpZWRNK2xIQXhDM0RnRklvMC91UWgvR0t2eDB1d0JJRGMrMWZqYmZjbkN4N2NSNmp3a2dDQWNRCkdvZ0RTTU1RTHdocEhzSXpobnRzQUZIWlppOEFNc25DN0NKK1FCcUE2RHdIRUx4SG1iOGRQN2xwNHVFaC9YQUF1ZEhIM3VuYnF2clkKQUNMOUVJQlUxOG5TRHdMSTBvK2lEd2NRNkVjREVCd1RnQ2g3QkpCSkgxbitpVkxKaHlwQS8xNEF1ZEVuTENwWUpuM213eUpNUHh4QQpaQ0NnanlOczZUc0hFT2xucndEQ3d2N3B1VEFaeUFhUWJJUnBCa0lBa1lFWWc2S1F1cTBZUkxYRFpPcTJveEROUUlKQk4xU2FiaVlnCnpiZVNWblFEOGRYeVprZXM3VUdDUXJ0c2lVcEdCZ2JabDN4bnpGVmpLaS9TV3NBUWtoRjZUWWhIWTVBWkJpUDlqTld4MGx0bWxwbWMKVHJLNmJ4cU0yUGxNQU9wSEFJbi9MWS9UbG42U05QZGpqLzdJQ3dhOWd4Q0FhbS9FWk5qZVA2d0ZaazcvYVBvaEFJRitJS1NmWTdRRAowRnpyL3BsbTJ2d1FBZlRCUk5YNzQ1WHZqVldJbThCZmFQanNYTnYrYzkxaUh5QUpvQU9YMmptQVFEOUhwWDVrQzB3RjlVTngxYzhmCkFOQ3BlVEVNZEhyVFg3bmpxYnplQ3d3U1JhRGJRVFVTSkJuVWREK0VnMEY0NHpCNTd6QitHM25ieDlRTXBlSDNrSFdMRmYzMktkYmQKVmRsdFZvV0VPSlY0a0RzYXBPUlg0UmhlM2JHNGczTGlWUit4aXcvZnk4Y1ovTWJVdkxPNFA0eUZIb3MrUXhaOWhtVkd2SytITVVnZgpTSi9kOEhMb0I4SjM5SEVNTlVzQUlYMXc1eGowRGMwNFU2dUxBOGdzSk9DMWtKY0VjTVNORGYzRVVEOVc1OHZXRDlLSEEyalg4Zy92CmRta0E0dlN4M1RQZmk3RjZYZ0pBUWo4THdqMFUrTGZ6Mld6ei92bVdJeXVkZVZ1ZXdtMEZJTEY5dVdVZzBFL3R6UkFIRURjUUhXczEKSVJORGlrU2lrK1VhdlhVbDlITW5ZZEpuandBaUE1RjQ5Z0lnZXU4eXhjT2pHbHZNUUc3MDRSTS90bjVNK3ZEcUM5SkhLLytVckVWYwp5ejhJSUI3UUR3Y1E2QWRDK29FY25ZMFNnTXJreTdKc002S1ZmNUErR29EczVsY1cvVEFBT2ZWakF5aDcrUWYxWXdKSTZVY0N5RlUvCkdFUVAxbjQwQURuS1B3eEFXZlRqRGlDTUxBS0ZzeGlvYWkwRzBRd2tHU1FBUkFZaUJpR0F5RUEyZzY3SElKa1loQWFpUnBpNVhSQVoKcVBWK0hPSmlJT2Z5K0N6RDBka0JCRmJBR0JKeUtRdVpJZC84ZmhpNWxvdVNocFBzTHB0R0l2bUhwRWsvNkRZQ2tLWWZHbnkybG05WQpHLzlZWFhiMkRtSURxT1o2bFBSREFLcTRHb0xROUEvcVI0dy91K2xIQXhEbzU2aTEvdXZBYk11K2FUSDlZMDlBaS9KUEZlaEhBT2g4Ci9VZm5HL2VkYjk5L3J2TUE1a0xId2NzZGh5NTNRNDVjNllFY0hldUY1SXoxUVRUM1VMQUlwT2tIampsM1RBeTVBR2cyVWpnZktsbngKbFcxNHlxOTJWMXpyQVFOVjNmYlczZ3pVM3c2aGdRU0Q1T293TkJERzJqTmFHY2dlREdJRFlSQ2dUK0JkUHdZTmhDUlNkeFl6WXRLSAp1SVBpd1pJU0pTejJKN1FyT293N2p2T3U2SEVVZTBUL1N4eG8rc0VieUtCK1RQb0kvYndhSXYxQWNFdEQzTmNuMDRBekRmU0lnaVh1CnlHZnJKMDAxSHJQYnBWVVI2TUlKcVlOcm5wWGFtd2x4WTIyaG4xaTEyTnljYis5SlcvczQ2Rk82RWNSa1d0ek82ZU9ZOVhGemowdmgKeHdtZ25Qa3VpTkRQZkNmUzU3QmFPdER5NlV6amdZVldVZjY1NmluZTlnS0FJQUFnQ0FjUVJpc0NRVEkxeGY0QWdBUjM3aVEwQURWbQpqTzRlTFp3NzlJUFQ5S01CaUw5M1pkSVBwNDhyZ0xoK0NFQm00WWZHNGJVdG9OQTlobjRVZ0RUOWFBRFM5TU1CaFBxQkhKbUpBSUJPCkxvVXlBWWpyeHdUUUx2cXhBR1RvUndGSTA0OEdJTktQQmlCYlAvTmhVejlhNTRzQXBBejArd0ZrNmtjQXlKcnVEREVEaGFTQllxNE0KUWdDNU1TZ0NNUmxVZXpVQ2NXR1FCQkJua0ZrS3NwcGlHWGROaENDQVhBems3SWp0WVRZb1F5d0FhUXh5UGNsaFpHTEkxVWJhUXhiNwpXb2owd1dqRTBSN3lXS0pTQTBDa0gvWE5TLzJ3dS9Ody9UZ0duMDBBT1Eya2wzOFFRT3B6TU43NlZNNCs4NzEvY1B5WjlKTzcxS3VhClg3S01UK1dmejZZYVA1bXArM2k2RmlMNlh4TzFZdjNYbFNxNUJXTER4eGRhQklET3R4ODRKM0x3WW1jV0FPVk9lbHlUUCtVOU5lMHIKbVBGRENtY0RHRGd1bWd0UzZEeEViUDh6R3l5WkMxSHdUTkZzVkV3T0xZZ2Rva3ZXdTh1dWRwWGY2SzI4M1Z0encwOEdVcVVnWENILwpLSTQzVDhYN3AxSWR5TjQyMnJsVUVOempmNXYydlVuQlY3clBMcHpFYlRETm1EMHAxWm1TRTBWaDBUc1R3WTNGK2ZPMTNoWXJPTm5XCkVjdTRHSHEwK3dHck9Bby9vMEFmdVlXNm9JKzhCYTlOSDZVZkNTRFVEOFNOUG1wZmNwZFpaa0FQYmtqajJENVlyR2szcmFNdWx2ZFUKR3U2bUlQVjNraGhBRHdYcEk5MmpVdWxZM29qenpqcDlTdFlERUpNK2hKN2ZSWjlNQnNxWjc1SHBPalluTmp3VWN6L3piVUkvYzYyMApkT0RJVW52ZVJnL29wK1NxQTBBVk96NE5RR2dnamg2ZUxPNFI5TUZHbUZSTzltQWRTT2puZHR4d2o0cjJQa1BKeENEdC9ONEJwREdJCjNJTTlmZnVoN2g1YzVLWEduTTJKSDVNK0JDQnFlekg5S1BkdytoUXVoeURaNlNQNlgvTktQemx6UGdnQTZQQ2tMMjg1REFBcTNaTHoKbDVzUk4vZEVyT3lWUGlXcllSSGRQWkhpNWJCTU52cjhYZ0JwK2tINjhHTmswUEVKdjZ0K0NFQlo5TU1CZE9paTUwKzQyZ1VBaEhFQwp5TVZBbGFzaW1vRWtnMktVMnMwNHBHNHJBVUVBY1FhUmdjekphQWpxQnpGRUUwS3NJS1R2RzlSeUwwRXJLaDFiVUJoVFFic0JTSzhKCllUcGx1cDZsOVRoaHhCamttQmtpQ1pHUXlDSldkQmhsSnBIUWtxdDE0Q1ExdVhpM3E0Y05Qbk82aVN1dVBmVnM2NGN2WHFYbVBkNzQKZ3IrSjRQZ3p6Z0JoN1Vjci81UnZCVTBBa1g2MDVoZm9CNExOTDlBUFRqQmcrUWNBaFBwQkFPSDZMOURQbnk5VmZIQys5ZU1MYmFJRgpKZ0YwOEh6YndZdnRKb0NPalF2OW1BQTZPZVhGZ0g0SVFOeEFQQnhEbVFCVU1oc1R0YUk1ZitHQ3QyaWx0MlNqcDNTbkd3eFVkYzBMCkJxcTdGUVFEOFhhWUdJdCtHTU5iWjhoZW1ES1FWUW9TdFVCZTB2Tzk2YWY0M3c0Z011QWcwdzZaSm4wdzhFc2FnQlNKakxvT3h1cTcKTWV2SVVSNjJtRXRGVlhyZ1c0Slk5UjdVRDRUUlIraEhpWWVsNytXZ0xQd01ZWno3K3VBOTZkUzJuQnA5TUdvc0Z6Zk5Nd0JrWGl3MQo5OVRkVG1DdzVNT3JQb0FlU29VWWJndnhuaGU1aCtoVHZPYUh1Tlo3TlAxa2NROXh4enpEQVFUNmdSeWU2eENSQURvdzE3eC90Z2tBCmRHQ2hOV2UxSTMrekYvUlR0dVV0MnhGQi9XQVhyUHA2b0pveGlEZkNOQWJ4Mm85ck5TZzdnQVIzYnNjMUFEVmtqRTRmRGhwKzNKaGgKMGxsN2p2Rkh1ZWlIR3dnQlpNZE5QOFk2THpic3JCcWordTNlTlBkWStnbTc2Z2NCWk9xSEFBVDYwUUIwZURvTUFNb0hta2dBeVJkbgpKTE4rRklBMC9aZ0FVdm94QUdUcFJ3ZFFkdjF3QUhIOVFIakRTeE1QR1FpUFFULy9Db0M0Zm13QWxjNEVtWUdDWUNBTFFMYUJxcGRqCkJDRE9JTXRBVVlobUlFak5WaGlpR1VnYkRGTHJ3aVNHbW02UWZuWXhFQUhJM1VCWlY0ZVpKRExwd3dIa1lpREpDQW9aQ0JmNDBNV00KaFZlSnVJUjA5MlFIRUsvdVlQQU1jWWZyQi84V1JBOEZ2bHR4eFhVTy9kQ0tkMnR6RGtzLzhCWW1BVVRMdm1qOG1RT0l4cDlSUDY0QQo0czB2QWhEcUJ3R0UramtzVjc4amdENmRiUGg0dWhxaXhwL0hhMlQ1cCtyUGx5by92TkJoQWFnVjlIUG9RanNBNk1ERnprTlhPZytQCmRSMjUwblYwckJ0eWJMd25aMHpreEVRZmhPc25iOXFYSi9XenE0SDJBaUQ0aHlNUC9BWHp2c0lsVDlGYVgvRVdYSHQ2S3JhOWFLRGEKbXdFSWJSU2tKcVBsNmpBc0JlRklrSE1xeVA3NWl2dnlmcFBXR09SbiswTFJycGhxYnRxcUVtbWg5V1ZCNjNZclFWeHJsckdpMCs5NAphUFd6TlBmWXJTNm1IOTd3c3VoamlJZjJvMkkzWXhHYk1qd2JnblErSFlSMFBCbFFNODZQSGVoeEJSQmJPeTNwYzE4RUt6M0VIVHdtCjlOVGVpbE1xYjhRd0ZkZWo1ZGNpbU5NNzRZcWRrS1dmME9tdG9BWWdwQS9waHdCazBvY0FwQlYrWExrRDBIRnBmczMxUUk3TmRjdDAKSHAyVitwbnJPRFRYQ2hINm1Xa0VBQjFlYWN2ZDZDN1k3QzNkOUpSdDlpS0FTRCtpQ3lhRG85QmFFWWhIWXhCMXgvQ1hiQmhKNVdRUAplYWpoVnN4d3orNEEwaDY2QWtoN2d2bm51S0xIYm5peEd4cGlUUHBnTW8zNzhLMHZIVnRBdWRBSFl3T0k5RU1BMHFvK2VJejZPVEZuCjZ3ZHlhQ3BFQUlLL1RzeGZib1F6MEVjSEVFREhGVUMyZnB3QVl2cHhBR2hYL1JDQU5QMXdBSm42NGNFV0dBTEkxQThDeU5TUENTRFUKandOQUdBS1FYQTZtREdRWGdaWmpGU3NSRFVBV2d3U0F5RUFhZ01oQXBCODgxZ0FFRC9HWTljTEUybmkrV2w0ckF0RnlnMzhSUUJtVAp5VUJPQUtHQk9JQTBBem1yUkp4Qmlqc2FtRElCaUE0MEp4bUZKVlgxSVFEaGQ0ajZFVzBYRndEaDFMTmo3UVlDcUZHOE95ajZXTFBQCkt2cnFkd3RBMmd4UWRnQ2RXT3loOGc4Q0NQdGZyZ0FDL1NnQW5lLzQ5T3RXQWFBTExZY3ZkbVFCMFBIeFhnMUFxSjg4NlI3TlFDZ2UKamlGRm4vbVFTQVlBbGM3NElRQ2c0bmwvNFpLdmFOVlR1TkZidU5WVGZsWGNMd3dOSkJua3c0MkNzQlNFQnBMM1QxWHRNTm8yR2w4RApGQTRnT01CanYzV0xGZE5BL3JkcDE5Z2JSMWx5d3BvUWQ0K3FMY25ZTFMycnE4VktPMDc2c1BONHJORkg2bWVRNjBlMHVzQTljaDVmClJPM0dLWUwwUWYwUWdNU1VqMEVmQXBEb3hVajY4SEZhVndDUmZzZzlOVGRqR0UwL1FCOU0rWFpReEFrZ0NOR0g2NmRvVlMxcno1UzkKQUlqRW85RW5aN1lib2dIbzBHdzdBZ2owODlsMEF3QW9aN1VqYjZNSEFGU3kwZU1Lb0VvNDJQRnBBQ0lEYWNQUkpDRTZ6OGVHQklNTQo3dkNBZVBZSUlQcWdwY1hVREFLSXJNUEZBODgzNllQbitaUVBML2xrQXBCSkgxbitpZXVkTDJ2VWh1LzZ6ZmVDY3FPUEFwQlovaWxZCkNoS0FTRDlaQUhSczFvc0FPclVhNVFBeTBLTlN0aDRtQUJGMy9yMEFNdWtqOVJNeTZRUEpueE96UGh4QVp1MEgzV09QQWJrQktPZUsKM3hWQVp2L0xBU0JNeVhUQXFnTUZwSUhVcW5oY0dFOTFvSXFWVU9WcXVHb3RBb0VEUEFiM1dCSVN4eGFEeEZSUTlXYWtaZ3U0STRhQgpsSVMydzNVN0NrUE9ZYUJJL2JWdzR3MDFINDBiQmNtbDhwSG1XMUUrR0VUejBXS05HRnR5eVllQm5EVWhlemlhK21KYWE2eWRwUU9FClpJVURpQWRYOFZocmVSaUR6R2FaQXBNTkk4NGprejdtU1NkMzRLSDY3YkpMSWhaNVllMUhxeTBwOXp4TmRjTUY1bmsvZkEvdGoxUHkKZnM1Sk9NRC9PamlBaDNDU2R2WGdINnFjYngvd0hoRkRCdkh4Wjl3T2puWkRvWUZRdXZVcFRrRGovb2VGOHZidnBKOFRLMzNIbDNzaApPVXM5cUorRDh5MEg1cHF4akkvVFA0SStVelVmVEZYK1phTDhMMk1WNzErcStlQkN3NGZubWo0KzEvekorUmJJdmd1dCt5KzJpZlZmCmx6b09YeGI2RVFBYTc0YUFmZ1NBSm5vaDJTdEFyb1VmRi8wSUFFbmxHQ2xaQ0VPc1FwRy9hTTVYc3VncFdZVFAzNzFsVzMwVjF6eFYKTjN6U1FOWk9pYXdkUm5zRlFlamxSRnkyUkt2NllscnJrOEozUmhBN1JUazNDaWNiOGQweThRQlhtUVcrSFlINDN3M2o1bEp3Z0dlYwpXMnZhZTFENTM0MUNmRy9oQ1NQZU44TVllRFZhMzRBNEZuazkzQWZjRWVpeDc3eUwrNCtyZW85NmNRNTBQdTN2ZUpJbTZOZ2xIK3QrCjR6amxZMDQwOC9ZV1AxYVh5YnY5OWJmVmFETWNOTnhKdzBITmpUaU5PYnZPK2xqalBtR3ErdUI2UnRyU2s4SmYzbXFYODFVdnBIREYKanlsWTlrRk9MWGt4cmcwdlNONUNIOC9KK1Y3TWlZVnV5UEg1TGtqT1hDZmsyR3dINU9oMDU1R3Bqa05UclllbjI0N010QitaYlQwNAoyN0ovdW1uZlZOM0IyY1pqUzIyNWExMm5KSUFLdC9vZzVWcytTTVZWZitWMkFGSzFFOFRVWEF0UWFxOEg2MjZFNm0rR0cyNUY2bTlHClhjTk5nOUhPNjVHYnB0YkR1L3JOQk8yaENnK3Qrd25xMlF1R1RObVlCbko3QnhQaEg5NDRnNmoxU2QxUHF3Y3FsdjdoM3Q5OEEweCsKMnhQZTgzTGRGYk5NR0NoYXRCN0JGSzZGS1FXcktxZFdRcEQ4NVNER3RlY2wzRFB2UFQ3bndmSG5vek9lSTNQZW8zT0JnMU9lZytPKwo0M1Bod3RXWUFKQjhsZUpic2FrZjF3b1FjU2NMZ0p6dXNRRmtGbjQwQUlGN2VFN05CekhnSGt6ZWJKRFhmbmlvNm9NQXd1VEFmK3hFCk1HYzg0QmJWQXVQMEFmRm9EKzBoNktMSkFJUUFSQWJTZGdiU0FNVGpDaUJwSUJ0QU1uWXBDQUJrTjhLdWlSQjZ1SWRvcnlBd2tEVWkKN1FBUVJCWXExSW9EeWFDWU5SYnRBSkE1SEswWmlBTklNNUI3R0lBY0JqS29wQ0s3RzdRSkhtZFFKaHU1R2dnQWhMOEZ2c29yb3BoeAp4aXNsNzNOUjFRY05CL3FCcjhnZEJKRDh6MVFQRVVBNHpHaStsVmp2Ty9CK0VXWDZVYU0vSEVCOFJZeDJlY0JyUTRGejhSZnBSd01RCmx2RUpRQjlNVnI4L1dTRnUvejVXaFFENjZMelN6NmVXZmc1ZUZrdkEvaThBcUdRdTRKcmkrWUNOSkhIc0wxN29LMTdvS1ZyckVoL0IKNFFxMDdhM2M4VlJmOTVHQmtFRnFoYnhrRU1TcUE2a1hGU3NjMmtWQjY1V2d6d2x4RE9IV0NlYnVVQmorcXhhSjdLMDFuWEhveHpLUQpBejJVUG5HZjNRRTZGbmsxaER1UE8vVEQ5eDhYSHcrRWZqUUE2ZTZoSFlmZDlHTzJRdXlMMzUwMEJ4QWV3MFdPNk9OYzVHVlAvRGdiClhrSFNqeVo3RFVDb0h3SVE2b2NEeUtTUHF2M005NW9BeXAzcjBRQ0UrbEVBbW01REFJbk10QnlZYWQ0MzFiaC91djdRWEZQT2Nuc2UKQTFEUlp0L3BUUzhDaUF5RXFkN3hRemlBMEVBbWZURGtucjFHYkJtdkFMU24yUG9SSDdjeVJXT055OCtkaGY5R1p3SGJudlZ4MVkrTQo1aDVGSW40TEZEN3hZMDcvaUFFZ3NTR0MwZzhCcUdBMUpHUHJ4d1FRSDNrbUFPWE1lYkQyUXdBNk1ObDNhTUovWWlGVXRCWUhBTUdMCkUxNmxhangvUGV3YVBnQzBGd0FaN2drWExZVmtzdEVuaTM0SVFFSS9zL2FrTTZjUDE0OEdJTU05Z1dOamZobEgrWWZYZnN3QklGRUIKS3B6d3V4cUlWc1hUd25oTStYS1lkOEdvRjJZZGlNcVFaYUF3cEdvanJCbEltd1FTMllrNEdlUnFJTWRJRUswT3MwYnQ0Q0JtTVNnbQp3L3RpOWw1QjJtcDVpbGlWQXlUYXM0VDRoY29oSVpNK0NrQ09maGxkMjh6ei9GZk5yaGtXaHl3bnFRNFhQbC83RS9EN2NmN25DQU5oCmtENmFmZ2hBNW5zSDZLZjJSZ1QxVTMwdEFsRnpQMUkvL01ZWG1FeWZqUG5TZDlRUDNyNVJOYjhZZ0ZBLzJQeDZmNkxxTDJNVjcxMFIKQVByb1FnT1Zmd0JBbjFrQU9uUkY5Yjg0Z0ZBL0pvQ29CYVl0QVN0eXJ2bXlSMzkyQTFEUm5GODlRWlNDZ2dpZ292bnVVOHZkaGF2ZAp4ZXVpRkNUYllYMVYxN3pWMXoxc0trak1SemZjQ1RmZWpUVGRpK0lpZVQ0WVpQRmE5Y1dJdjhRZ3N6SWs0OWhBZ2UwbTVWNUR3bU91CkhEeHBhWWtEYXdqYzQ3aTFISXZqNU12Qkh1Q09qRTJmNS8zczNuUEtQUml1SDdhYVhVU2I3REhubXJVTG9mM3F0ZlJEOVI0cStYRDMKVUhqVkIrbFR0aG1BYUxVZlYvMXdBQkY5U0QvNWk1NTh3ejBVS3ZsUVFEOFFwQS9YejlHWmRnam81NGlrRHhqbzBIVHp3YWttME05bgprdzJnbnlNTExia3JIVGFBTm5vUlFHUWdKNENDbUpwcm9kcnJZVXJkallnWkFCQiszVHVHT0gzZ2VIY0oyZnJKQnFCNnkwQjBrRWs4CkdKcFp6QTRnUXo4Q1FMVDNBWVFNeFBXakxmaXlCNTgzUkI4S285VitMUDBvOTNEOTVDMEZJTHp6UlQwdjJmWVNBTUsyMStGWkFhREQKTTc3OUU3MUhwd01ud1IvcjhtNjc4aVVxQjlSMDk3RG9RejhhZ0J6bEh3TkFsbjRjQUhMdGVXVUNVUDVjSUJPQXpLRWZRejhPQUZuMApFWEdkK3pFN1h3Y3Y5R0grVkRBV0tCd1BJb1BRUU5RTFl3WVM2OEl3cDVkQ2FDQUtCeEIxeHlTREVFRFI2czBZR01oS3lKb0hpbUZmClRNMEdTUU1CZXRRQ01kdER5a0RXVW5sKys3QW9oRnJMQkNDWnFITTJ5TEZPM2xWQ0NDQ0tLU0U5MWo0dXVvUU1LcW00bG91Y1dERi8KbFJkMUxBK0o2NSsxbGJBazFGUFJ6ekwvbkE0NTZ3UGZLdnZ2c3RHRGFYa1F0L2V6bDVNVDV2dUk5Y1lSNFFDcTJnbXJxV2RMUHdRZwp0UTlLaGsvRzl0YlBTMG8vdEkzYm9ibFcwczluMHcxSW53OG5LOFhlUCtPVmZ4bXIrc3ZsbXZjdjFRa0FuVy84K0VMTEp4ZGJFVUQ3CjNBQjBkRUtWZjQ1UDlrRmN5ejhTUUo2Q0dXL2hyQThpVzFjaThwZ05QdHVsSGF6dXVLUm96b2RGSU95RlNRQjVpK1o3OHhlNkNwWjYKeExxd3RkNlNqVDVSQ3RycEUzZmt2dTdEb0lTQVFXQWdDRzZXaURjUkl3YkoySGVWNXhqaTdWSHlrQmtTait0SjAwT29IM2xHZTVydwpEUmpJbkRuVGdyMHRiRzlCcUE5TDNTNXJ1SWRFYnBWOE10REgyaXZQVWZMaHIxWFhsNjYyckozQ1cxM1U3Y3FrbjlJTmY2YTJGNFZlCjVQa3JIb2hXK0VIOTVCdnVvVmtmc0k2cG54T3ozZGoyY3RXUEFwRFV6LzZKaGs4bjZpQ2duK05MYlFpZy9QWHVndlVlQkZEWmhnY0IKUkhVZ1ROVjJvRW95Q0FERWs0VkJoS0c5cE82NmJTQTRvSWVJSVpjbytpZ0FhVXN1SUNadU12M290VGpwb3dCRXN6NmFleGlJQlhybwpSaWhVN2M2a0g0MCtKZXNoakxQdGhmUUp5amdMUDFJL2tOeEZlNk5udnQ4UEFnajBJK2d6NjRFY25QSHVtK3pObVF2a0xRdG1pZTAzCk53THdLcFd6K1JrclFMelN3N25qcWg4TlFFdy9Ob0N5MDRjWGZpejlDQUNoZmppQVhLZWVzd0NJNjRjQXBCVitzZ0hvMUJVL0dFZ3cKeURKUThaUWZETVFYeHVOWU5ES29iREdJQnFLZ2dTd00yWDJ4cXJVUXBISTlrc0ZBQWtCWUZsSTFJYXdEU1FEUlEyWWczREtSQ2tJeApCSkJZbzJTdHQ2UjJXSXU2eHg1TkNGRmZ6STRtSVRJQktjSHFGaG4wa2NsRUpkMDl6b3FScmlXTE8rWVpNNWFCUk8wSGY0djRLdVo0ClhQNWVPb25mcWxoeExhTFEwM3cvSnVsajdlRnhMeTZIUnUxOU9OemVSQndWSUFRUTN2VmRLLzl3QU9GMWduODRwcVh2WXZCWjZvZDIKTWFFMUxLQ2ZUNjE5bno4YXJ4QmJQK1BpcjR1MW92OTFvZUdUQzAyZlhHeUdmSHFwWmQvbDF2MVgyZzZNdFIrNjBuNTRyQU56Wkx6ego2RVJYemtRMzVQaGtEeVIzcWhkemNyb1BramZqZ2VUUGVrRS9Kb0I0VE90a2lCaC9SZ094THBqMzFGeGZ3YnhIckF0YjZTdGE2eEhMCjQ3YzlwNjk1cXE2SnlXaFpEYklOVkg5YmJKYklCNFBncDZaZWFmWktNZnYxd1B1ZVpxVXdPNGtNQU9ubEhPdU1lakt5eGl6dGFNRy8KblViZnNMY2xnNlZRN0hPbDdFclA0eVNrNVdFSzAvd2d6ZE4wUDRWcHZKZFVNV3M4K0ZxMWxuUnBhN3M0ZXN3ckhCLzBRZkZrQjVBcgpmZmdySFBVRE1lbGpkcmhNOGZDQWZtUTZqODkwUUhLbTJ5SEhwdG93aDZkYUQxdTFIOURQdm5HaG44OG02M01XVzA4c3Q1OWM3Y3hmCjdUcTFwZ0FrNUwzaGNUVlFKVE1RRDY4R2NRblpzdG1iaDdoNDRIanZBTUtHZTZiWVAzZm5RL2F1WlE4NE82UDBRMU9NR29DTWlxQmQKK09IRGp1WnlkOVNQU1ovaXRXQ3gyQkhLcEkrSVNaK1RpMzZJU1I5cndSZm9wdy9wQXdZNk9OdTNmMG9FdEhRS21MSVJwVGRlL0I1SwoxekpGcDArbUZLK0VSRElBS0x0N010TW5rRGZyVi9TWkNVQXl1U2VEZm55R2UzeVlUUFF4bTE4S1FQbVhmV0FnWkJCdmgybnJ3c2hBClpRdWgwNHRobnZLbFNNV3lBbERGU29pR2hCQkFGV3RoTkpDTTFoRlRNVmZJODlZWWI0cFoxU0FhRElyZzZCd0RrRDBTeEdhRFJGTk0KbXcxeURnbUo2V0F0bG9FY2xhRXNNWkhFaytrNUpwVmNvN1hTbEpZczZPQ2ZURSttTTNnQUYxRnJ4aGJSRTJ1NkY3WHBjOC9lbEl3UApIdEo3amZXV0lTcEExdlNQWFFHeTNnNGM1WitTOVl6ZEFWcjVoVnY0Qy9wWWkzZ1B6cmFRZmo2eDluMytjTHpzdzdGSzFNOTdGK3JmClAxLy84Zm1Hejg0M0VvQStzd0IwY0x3RG9nRUk5WFBDMGc4Q2lQVERBZlJIM2FOU3N1aERBRmxGSXdFZ09Ga3c3eTljOEJjdGlyWHgKaGF1aUgxRzgxVnU2M1Z1eDdhMFFVMEZpSlk1ek94YjMrV2huTlVoSnlPeDdFcFNaaFBUYWpJTXlqRHU5Yk1OTWZFS2ZtSzlIU05tTApDaFYwckFLUEZzczlObmQ0ZUxGSERmY285eVFobkR1NGVnc1hjUEVkQ3pOOTBPZEwyUjBMdTl5NlhlQWVYdnRCN3FCMVhQVUQ0YURuCnIyb0tMLy9rTGZkeC9XU2hqOFlkL3ZENFRKZU1RejlISjFzeGh5YWJEazgxQTRBT1REYUNmajRicXdYOTdKOXVSQURsclhTQ2ZqREEKYnRHQlhkY05oS25jQ2tLcXJvYTBtTlVnWkJDbmo2dVE5RmpvSVFEaFF6cldJOXhENGU4L0l0eEFXdlRYZys0ZVZleGgraEVBc3JjeApNMkpOZzlrdGZvejFNRnZiUzlOUHNkZ1BrM3BlUkorQURHdDdTZnB3QURucEkvZjdtZTJWRVFBNk5PYzVNTk83YjdMM3dEUzg1SUlGCjYvTHVLL0lscWdBa2lHUFNSOFNFam11VWZoaUFuT1VmQjRDeXVJZlR4OUtQQUJEcVJ3T1FwcDlkQVVUNjBRQ2swU2NUZ0FLdUJxSmUKbURTUVdCZUdLWjBQdWhySXFnWUpBRmtHQ2tJcVZxTU1RTGFCc0Naa0FZajF3cmJGM1RPSVJNWnNVSVN2RG9OZ2NWVXd5TzZGcVpFZwoxaFNMV29OQmFqYUl4b01vaUFPSXdTQWRPaGlycG1KOVFOK05RYnMrTGRONUhVTlVLN0wwSTVQaXY1ZC9iM2o1eEFGYm9BOEdBS1RvCmN6ZEc5SkhSMmw3MlcwL045VERFbXY0SlYyNkgxS0ozNTcyUTdKMXdNN1FHYU4wN0FranBaN1lkOUNPbU9CbUE4TFpmQUtBUHJsUlkKQUdvUUcwQkxBSDEwU2VnSEFiUXZLNEJBUHdRZ3Jmd2pBZVNCRk01NmkrWjhQQ1p4TUlVTDdpbGU4SXFJNTdBS2tFaElQc0Zmc0FoWAp4QjY0SUJWdWRCZGQ3UzNiN0QyOTFZZUw1TUZBdUNtTGxKQVlrWVk0YmlKMno5RVVvMlh6SGJMTHljdUhGSzF6U2lUaXh3Z2RyWFJrCkpPbjRqUm5FNDNRUHRtVTVldnJibnFRZ290N3pLTTNRSTQ1SlAxamphYmliQU9oazJxazVFOUNSTzVwK3FtOUVzZHVGRnpPNnNBRjYKdEVWZUpCNk5QaVhyUG93SmVoTkFwQitJV2ZoeGRZOVI3N0dEQUVMNmNQMGNtV2lCSEp4b0JBUEo4ays5ME05WTdiNHBNUUFFQU1wZApzZ0ZVdUNvQUJBRUFvWUZvR0lnRGlBY0JSSU5CbW9FeVJYZVBFMEI3b284YmdQaGJrS3VCekpQV00zY0hFTi9FTllOK0ZJRG9MUTZDCkJuTFZ6NjRBY3RKSFJDdjhRSElYZkpCakMzN00wWGtmNXNpY2FIc2RuTzRHQUIyYTZRUDlRUFpQOXdnQXpmbnlWd1dBckplbzk5OEMKSUZzL0ZvQTAvUkNBOWw3NDRRQWkvUkNBVFBxNDZvY0F4T21qQVVqamp0bjhPbkMrRi9LbnZFdCtNaEFDQ0tNQmlBekVBUVFIZUV3QQpLbDhPdWdCb0xZYjZBUWxWcm9jUVFOZ1gwd0JFclRHN0ptVE5SMU03akUwRmhTSDQyVUl4aUMyL2RCcklCVUNhZ1FoQWhvRVVKckpFCnc0MXJkbjJtOW9TTUJuSUJrUGhVVGIrOTFhNzNpQVlLWDJGRUFJTFkyN2t5L1VEYzNrcXc3UldTVWZxcHVCcFVXLzQ0Vjc4VGdESjkKTXVZQXd2S1AyTUxFQWhEcXh3VFFueTlWL3E4TGRYODVYdzhBK3VSQzQ3NExUUUNnank4ci9leTM5SE5vb3ZOL0drQkZpMEhYeURWZgpIRURLUUhJZVNCam8xQUpjRHJ2emxydnoxenNMTnJ0TDFydExOM3JJUUZRTnFycldKMGVrMVVveHVvbFk0NzBnM2tPRDdpclBDMEl1CjNWV3pkc2dxaU1RZzRoRnZxK0Y1UE1QMWc4cko1QjcrMThsald6OFFiSFZSdHd2MUEralJBQVQ2b2IwS1hYZHFkdFdQZUlsYUcvbFEKUUQ4RUlCUVBYZHRBUEVRZkRpQ3Q2Z1B1S1Y3ellzeUdGNzYyWFYva0pvQjJwUTlZeDAwL25ienp4UUYwWUx5QkFQVHBsUm9BMFA3cAoraU1MTFRuekxTY1cyeEJBb0I4Q1VNbWFLZ0s1QXFoaU00QWhBL0hoYUE0Z2swUUlIWk5FR0JSUDdiVW9oQUNFRDEzREFjVGR3Mk8rClI1bG45ZzRnYk9WbjBJOTRaNk9xRCsvMXUrckhiSUVSZ0p4dEw5S1BYd01RNnNjRUVPb0hjbUNxNjlCTUR3Rm8zMVQzSjVNOUIrZjkKcDlaQ2hSdGk2UW5vaHdPb1pEWG9HbzRia3o0bWdFejZTUDBFVGZyc1VUOGNRTG5UOWdZL0duMWNBWFJzekd2U1IrcEhMSGZYQUVUaQowZWl6LzF3UDVFL0hML2JsWHZhZXZPTExHL1BualhraHB5YjhCWk1CVE9HMHYyaUc3bjhrVnJ1VUxRWXhwNWRDRktEUGFaYnlsUWdHCjlGT3hGb1NBZTVBK0ZHMGtTT1JxcUhaYjdCS0VFVXZsbVg3b254RCtLN0pYRFZnYlVkUTc5NmhnMVNBK0lRU0pVcGlLWXZZNlcydEgKSEV3bUdLbGJHYmlZeGpGQ3hLS0xoMFBIUEU4ZjlQVThTZkMwUG81VFdoN0ZNTTBQbzVURys5R21CM0FtRGw4YjdxbzAzb3ZMSzAwYwpVM2M3UmpHYkNIZ2hnVlJkajFSZVUxdmkwcWZuMHF2QmtxMEFwSGpUWDdUaHczOStCV3NleXFuVnZ2eVYzcnpsbnBOTDNibUxYYXIyClkrMTVTSnYzNzU5cHhYdGZXQldnbW84bnFqOGNLLy9nY2kzay9VdDE3MTJzZmY5QzdRY1g2ejY4MlBqUnBTWXMvK0FBRUxiQTFBRFEKWk9laENRQlF4N0hKcnB5cDd1UFRQY2VudW5NbXUzS24rekFuWnp5UXZGa3ZKbi9XYzJyT2E2WndRYlN1ekFCclNoYUNab29XQTY0cAp0Q3BBY0Z5dzJBYzV0ZGg5YXJGTGJKTzQwVnU4M2wyeUlRYUR5cTcybEYvdHJkZ1dPd2FKRWVtYmZrek5yVUR0N1dEZEhiRk1ERmVLCjRXSXhtdUxTWHpiTzF4WFhzNktKSlNTemNhWTEwZFJEcDU4Y0ZtZXh2ZjQwRGNGNmp5cjVZUEJlWFhKQk8yKy9OdDFQeUZkanJQNU8KRkZKM093S1JCeTdiTk51TkxlY3JVMERIT2dPdlVoNXRRMmRLMlhZSUF5OWdlZzNMbDdGamZDMlRleWdGeXg3TXFhVStUUDVpTHdTWApyME55RjN0NFRzNTM1ODUxWVU3TWRsTHdJVGE4ZU5zclo3S05jblN5K2NoRTArSHhSc2lCOFNiSXZpdDFuMXlzL3VSeXpZSEpoaU96CkxaRGMrZmE4eGM1VDRPeWxMa2pCQ3VpbnIzQzF0M1RWZ3lsYjg1NWU5NVZ2K0NFZ252SXRPL0pUalFoOHdxbmVEbXVwMllsQU5LL2cKU1FnK0FkK2k4Yng2anEwTlVUekdZNkVRNTF0NjlnZzJTZG5ZdjkwYVJ0UnN4T0p3RHhWN1hBZDlaT3lGN3NRZHJmbEZSU0FJMytWWgpMTHl5Z2pmQnBmdmdzdHVoT1BRajZTT1NLN3BkUHN6eGVTL2wySUxJMFhrUDVNaGNIM2ErZ0Q0SFo3djNUNE9CK25EeDE2ZFh1ZzVQCjlZcitGN3YxQ3FrTFFyVW9MY1orakNwRllCMHJoY3RCRm51WDZvS2xJT1hVWW9DU3YrQzM0MFFQMDQ4MTlXelJCM044S2tESm1mVHoKSEp2d2FUazY3ajA2N3NjY0dmTkJEbC94WW5qbnk2ejZjQU1wQU9WYzZFVURTUVo1SVBualB0dEFVejVtSUQ4QXFIVEJEc2RRbVl4cApvUExWQUJrSTZjTXg1QUNRMDBBSUlESVEvd2ZEcXo0Y1FBMXl2MUZjZm1uVmdVd0cyUUJ5R01nSklCWWJRRTRENmVVZjY2RyswaXA3CkpjbThkS256Sm4xa1hNWERRL1JwZWhDQklJQWdjRUFBa3RjYlhUKzF0NklROHdKRDF4TFVUL20yWTFEVUZVQmtJTkFQQnhCRTFYNHMKL2RncnY2UitQcDFVL1MrcG44b1BybFJJL2RTQWZ2NFZBRUV5QWNpa1Q4RzhUOXpPd3FBUHhxUlA2V0lJWXRKSEFVZzJ5T1N4cjJEUgphd0dvTzM4VkxrNWRjb1c4TUZEWlZ0L3A3VjR3VVBtT01sRFZEUi9FTnBDNm01aGFNSThNRXN2bXJXb2ZpZHg4WFhFSnVkU0tMQTlwCk5sTEhlNmNQdGw5SlBJK1RMWThTR1BBMy8xeGh0MStseFFsQXFCOHJMdnJoQU9MNlFRQnhwa1B3Uld2cWg3dUh2M294cEo4c0RTOWUKNzlFQWhQcUJJSGVJUWJhSExQMFFnSkE3ZUVBTkwrcDVIWnRRT1RyZVF2bzVOTmF3ZjZ4eC8xajlaNWRyUDcxVUExOFBUaldDZm83Twp0WjZZYXdNQUFYM3dLd0JJVEo2dDlwYXM5RUVJUUdTZzA1c2lwb0ZFRVNpRGdWeERBQ0lZcVFNMWJlTUFrSWoxRyttMzhKZ0c0cFViCkhzTTk3Z0FpQXhudXNXZDlOQUNSZXpRQVlhbmJWVDhFSUxkYjRacTFId1VnTWhBSEVORUg5U09yUGlJSFpyb096SFFmbk80OU9PWFoKTjk3ejJWajMwUms1QU1RQVZPUTBrSHNNK21nQWN1ckhCaERYRHdlUVF6KzdBWWpYZmt3QWFRWkM4YmdDQ1BYREFXU08rNWkxSDlMUAp2cSs3LzNUc2ZBOFk2TVFsajB4djd1VStNQkRXZ1FTRHBuek1RR3pmVzFrTktwMFhIVEVNQW9nenlBSlFDSUtqMER6T1VsREl3U0RqCnZoa1ErcWRDbndsVTJJb0RlL01KWTJkU2JUeklISlMyNmowNmdMQmhwREZJU2tpbmpIWGhjZEJuRDg5M3VNYzhyOFdFRGdZdk14Z1UKRDZKSDBlZGVSRVRSUjN6VTV2cEIrbUQ0UllYY2cwSDkwQTBCVktkZ053RDlIK3J1Zzd1TmExbjAvUGxBTTIvZU93NEt6RGtuaWFLWQpJd0Fpa0dCT3lsWWd4U2hTT1ZETVJBYVlzNUlWTE52bjNQZldmS09wM2RWZHFONjdRY20rZDlKYS84VUZRcFJzMHhEN2g5cTd1MUUvCkJDRFFUOG1oT09rZDlSTS84MHZUVDhZVzZxY3RiYk1aOUpNY2JVZ0t0MmpGQVFUNmtRQUUrdUVBZ29xMlJBaWdNaTJ1bjFNQWhQcjUKZmdDaGZyNFRRRlVuUTJJSWROSUxBS280Z2dOVlorV2JMalFRWGpDNi92TUFmdVEzcld6K2ZhUkYzSzhBNzZTaG55eUdFaEtuelp1VwpPRVVxaWRSWEVjYmh3aW5EWlpPWU8vRnJTdkhMU3BGNHBKY2kzVHljYmltbEozYjhpR0drQkhGTDlLanVJWjFMK3FGVStxQisyTWdICjNUTms5TzJkenFRZkFwQTAvb0V1SFBWQ0ZZYzlHSGNQbi8zRVJ6NDduUkNmOXlCNmhIczJYQmk0aDhxTzJZQStHZUVXMEUvdXBqMS8KdTcxdzExVzg3eW5mNzdodzZMMTQxSVZkT3VtcGV0TUxWYjlKYUNDS3I0TEJlMUdNVCtYNSsxSXByaGw2TE9EQ251RmZrMGhVaVJqRQpCei9JS1JWRFpoaDlBMEI4bllzQXBFNTlwTmtQWGVkTWNvOUtIOUtQY2ZNVHZ1OUgwS2ZpZUFoS05BSGlVeDh4K05udHdYSjJ1eEJBCk9WdDlvSi9jblY3NFlyRUJ5QXlnYnh0SW9ROEhrS0lmSFVDU2ZnaEFzbjZzQUdTeDhkblF6L2NBaUF3RUR3bzNCcXoxd3dBa2pYOXkKemU2aC9sRVU2TUVoRUFJSVFnQmQzQndTYlExVWJnK2lnYXAyQnkvdkRXRVdERHJXa3hoVS8vYUtaQ0I0UUk4bEEzRUdzVzNST29BawpBK2tadSsyNGhBaERFb00wQ2VsN2cyUUpHV3Rla29UNHZoa3VvUTd6Ymh0MnlKSHA0OVpQTzVlL2toK2llSW1leHlUMzRKZ0hrdHlECkFYcndvLzEvWG9NSVFObzdiQk45V3YrOGp0R3hoQU5JTEh1UmZqUUE0VzRKc1UvQ2ZCU3gxQS9TaHdBazdsOXQ2SWZPL0tLOXo2QWYKS0hXakpUbmFsQlJwUEI5cTFoSkRJREgraWRoQlArbFJWMmJVbFJVREFMbHpZcDdjalk2OFRRQ1FxSENubXdDRVF5QWRRSHQ5RmZ2OQoySVdEQWNwU1A2Y0NhSVNpMXp4VWZXSmRsYmI0WlFMUWNYL2xVUjhjcFNxT3ZOcmJkTytsdDkxNGhyeTRmK3F2dllRaGtwQjI3Mjc1CnVrSDh0SGs2ZVo1NzZKVFhXQ0lNU1RDU2tFUmZvR1ZhNGFXWHZVcHcvYVVZSHoyaXYybTF5d0xpMmtzeGpoN3VIaElQUmZNZUxuVksKWGUxQy9kREl4NnlmSVhYTml5OTRxWHQ5aUQ3ZjFBOWY4T0w2d1hrUDZvZm1QZnJJeDZCUFFjd0o1Y1hzRk9nblBkUU1aY2ZhUUQ5RgpPODdpM2ZiU2ZSY0FxT0tna3d4VWVkeU5CcnA4SWd5RURFSURFWU1rRENHRFdwaUJFbUdJeHhIRGw4TlU0dERYZkJOQS9FYzlpZ2NCCmhNT2swdzFrcVo4V0MvZlFKYURrTlMrKzRNWDFneWU2cW10ZUNWYSs2TzV2cHNFUDZnY2kvUkNBdE9zY0RoaG5lOGtBeXQ3eEFvREEKUGFDZnJNMHUrSUx5azZHTDcrSzNtU01BZlNPMjFKVjQyUXVJTTJKazRSNlZQaGNPaHpBemV1S3AraW5iR1lJU0FZaU5mRXdBVXZXVApIeDJBTFBYRGw3MjRmZ1NBQ29NOVJhSGVra2kvVm05cHRLOHMxbCt4S1piRHhKYWd6WDR5MEtXZEFZZ2JpQU5JT2lURUdmVDJDamNRCnhhWkJ0QnltRzhpU1FaWi9RMHdTTXRJWHlKUnJraG9HdW9GSkVxSjNxSktFY0tFQmQxM3dTRG1XUE9MMFNmUkxHRWZQNlRBeUFLUzgKdDFZUE5qanYwZHlESDIzL2NSV2lBMC9idjY2cDlHbjU0NXFXL1BhYUgxVFVDZEFwK29GbzZ3OVZjdGdOQUVMNjBKbGZRSi9UQVlRVApJQTRnMEk4S29NSk5Md0FJQXZwZ0NDQ3VIdzZnaTRmVzQ1Ly9RZ0FoZlRBQWtHWWdmU0hzNGxFM01RaDNyVjc2MElzclltZ2dkUm9VCkh3ajllUlhqMHlCY0dxTk5RdXByejNJcGx0QmppU0dWT0ZMUzY5a0pmMlcwY0cwTGw3ZTA5RW1QdFBEYTh1OGJWUE8vcm1OTmZ3clEKV0w0VUc4VzJudXNOWXJSamlxT0hwRjcvZVVSZDdaTDBZd21nNzZFUEFVaHlEOWVQT3U4cDMrdUN5bmE5RUU1OUtFc0FJWDJnL0dnNwowaWMzYW9QU0l5MXB3YWIwVUZQT2hxMVFBTWhSc3ROZXR1Y3EyeE5ESURRUU1rZzMwSEVQR0FnWmhBWWlCbkVKRVlPYU5RTlpsa2hGCk9BcmluOXJOczUvVHd4L3AwcWNVNXc2ZWlvSFBFSWFrVlBvWVY2N242T0Y5TDMzMDY1eFp1U2NCZllhMGU5L0s5Q2svR29SVStsZ0MKaUF5VXRlM04yZTNPMmU3SjNQREN4NkxEZ1F0dmh5NjhIZUMzMnExNk95eHpSMDJoandRZ1JoOFRnUGltSHc0Z29vK2U3SjRoSXd2OQpjQUNwRzRBTThRd2dnL0N4cFg1RUNuMXl0ZGtQSHdJaGZmUTlRQWlnNG5BZkFnZ0NBSlZ2REpSSCs4VnkyRVlmR2toalVEK2tqWUxFCmloaHVETUliWXRjZWFwZStGZWU4eUFjR2VVV005a2ViR0JUZkg4MDJSL09UNUcrcWJ4ZFVDZEZqdmpTV2dFSHk2aGlkRlNWSmlBQWsKU2NodHBzL2ZUbklQVzhpUXFhUWZZQktnaHgxcFRHK3ljZmFEQU1MMzNLQWY3ZGlwdTRmbzAvejdWUzJMQlFWK1hJR0RDcDhBY2YybworMzdpZTUrUHVqQzhmelhwSjJmWGlmVEoyclZsN3JScGU1L2IwalpiVTJPdHlSR2dqd0FRTG9FbFJ6VDlSQjJnSHdJUTZJY0FKUFN6CktaYkFFRUJBSHl6UitBZjB3d0hFOVFPcGkxbVlwWDVPQlpDdUh6T0FCaStmOUZVZDk0S0JLZzY3d0VCbFI5N3lOOTBWYi9YVGRxby8KaUl2WFFiVWZCK28rRGRaL0hnSUdxZXRpTGVMcVFmcjlOS1NsTVk0aGxlL3E2d3FKNDlhUXhNVWpmUm43UTZUM0NjWUtsK3llK0pJcgpvWWZQZTVyL3ZNbHIrdU9HbnJHSmgwOTZ4SXZRRUUrOW1PN0VpNDhuaVQ2ZmhpRkw5M0R4U0oyeTJpWHBwK0trRCtMdTRTT2ZpbjA5CkZBK2hoK0x1Z1VyaEk3aG4wMDBWYmJnZ2NBOEY3c21KdEdXSFc2SFVVR05hdUNrejBwSzNZU3ZZc2hWdDJVdTJIV1c3enZKZEQxU3gKMTNIeHdJdFZIbmFCZmk0ZGRjTkhaQkJmRHF2WGFuZy9DRFYrR0tLYVB3eGpMYitPU0xWK3ZFSzFmYnFLY1FrUmpNaERmTEZNblJoWgpBa2o2Q1U4akgzeWdYWWRNdnlwSGdveGR6MFNmTDllMEs5ZWJZbWNDSmx6dGt2U0RaN21xQzE1V3kxNkNQaHhBbkQ2WVJKL2kvWDZNCjNDTk5nQUJBV2R2ZDJWdmRXWnRkOEduSnNYWmo2YmU5K0U4aEFIMDdlWVVya1h0QU9jTmFKdmNRZldUM0hBNVZIQXhDbHZvcDN4MGsKK3BqMHN6Mm91b2Z2K0pFQVZCRHI1OHRlcEorOFNMK2xmbmpTS3RnLzh2MWRCWUZ1TUpER29CNEloMEM0SDZnODFzc00xQWNaMHlDKwpPVm93eUxqcVNmd3RNaDhGcVFiU1RoRGoweURyYzhUb1lvbW5iTVNUQUtRYnlMd2k5azBKMGFZRWlVSFNnY1FTUXp6TFh6SWZPVXhKCjdtSEpYNG5GeGNNbVBjcitIcmFmRk9talpkQUhIL0NwRCtubktpMG8wQ0VINllNZjhhRENyNUppdkc4MkxYdEJ0T2FGK2lrOTlFSWwKQjUyZ244STkvYVIzQkJBT2Znejl0QWo5YkxTZ2ZzNEZ4UjZnNUlpNEEwWktWT2lIQWNnSjVjUmN1UnR1S0cvVFU3alZBWWtkMER0eAovVEFBOVdJWER2cWdpNGY5bUtWK1RnUFE4UkJVZXpJc3BkSkhCOURKQU9xbittU1lBV2hZUEg4eWNPa0VEcHpDUUFDZ2txTk9xUEpOCkYyNk94ck9YVVVJYWcvU0JrTHhEU0x1V05DNk5TZmNYNHg3aUpMSjhNZk9YcUdJZGtmSmJUSHQ2S09zWDRiK3ZXMDU2eExDSHhHT0UKTXg1NHZYRUQ2Zm9CMlpqZFV3ZXZTUzBRajZDNXBKK1BRNG5vUTV2VnBOUnR6cXAra0Q2WXV0U0ZJeDl5anlXQTFCMC9xQjlFRDFZWQpjeFlBZXNKMktDL2lnRUEvV2FHV2pFQlR1cjh4SmRpUUhoSHJYM2ticmZteDFxSk5Hd0NvZk50ZXR1T0d3RUFYOWp0QlAvZ1JBV1JwCklBUVFHWWdZMVBRK0htR0llMGd5RUUyR0NFRFNrcGswSC9yKzdkVWNRRHcwVUtMSVBVUWZ2RzZaNGg0VGdDenBRL3BCK3VqWE9iTnkKanpyNDBlZ3plRUhjQk5jMCtCR3puOE1CU0tKUDBWNGZSdUtoY25lNm9jeXR6c3l0THRCUHpuWlA0VUYvNlJ2dHRrSnZldWdmOTE4TApJRU0vTW9BU0RYNVFQeHhBakQ2WWhYNGdMaDYrN01WR1BycUJKQUJ4L1VnQVV0M0Q5WlBsNjRiK2tlZnpnb0VLZ3oxYVhVV2hidDFBCjJuNGdBQkF6a0FDUU1RM1NOd2JSS0VpN2RJcHNJR1NRQ2lCOFRBWkNBRW1ueWljQ2tQb1hCc1ZEYnlCMEQxbHRESklZeEFGay8vZDEKU0RWUW9zT0c1WHRyZkY3NkpUeWNLTWNQUGNVOTE0MmRIUEpYWW54NXk1UngxT0VISHJIVXBaMUVqUUY5Y1BVRW5pZjZtUFVqb01QMwpVc1NuUHRwSE9LS0lqS3VrSUlCbzVZdjBjK0ZOTDEvMlFnQ0Jmb3IzT3hCQXBKL3NIYkgrQlFESzJHN1c5Tk1NK2ttSk5TZUZtMEEvClovd05tbjVhUVQ5L0ZVQ2x1NzNmQXlDVlBwZTA5UytWTXBoS0g2anV6WWo2bFhFQW5ReFVDeUVSZ0lhaG1tUHhmSlZtSUhGeTNGRlgKc1RndHpuUHh4RXNHd294cGtIWWJEZlAySUNHaEwvMU52dzFBaVNURWgwUGNRNWFESW5wTUwyWjY0ZkcvQ0ZxR2VHZzdzNWJwdGFlRgo1cWExTFNua2pnUWdXdEpDQStHclVYOHBXdW1IQUVTaGZpRExwUzd5dXBxNjRDV3RlWEVBNFdudGxxdGQwcnlIR0NTdGVjWDNPeHZvCm9VQS8rUkZIZHJBdEoyUkRCcUYrMG53TnFldjFBS0RNV0d2dXBoMEFsQmR0QVFDVmJXbnR1RXUzWFFnZ0NFZEJRSi9Ld3k0eUVPMEgKZ3Vxc0RDUVk5RTdFR2NReHBCb0lsOHlJUG55eFRBVlFxM0xoNlVRLzIrUEZMMEJ2dWh5clNoOGprMzRFZmJRVTk5QWxvT1FGTDJuTgppd09vK3Yyd3BYNVVBS0YrVkFDaGZpQWErWEQ5Rk83MkluZlVBRUFabTk3TURXL3VUbThSL0FsdkJ5dmU5cGFkZFBGcEU0Y092eWt2ClQ2V1BDaUNtSHhPQUxEZjljUDE4UDRCUVB4S0FpRDRxZ0RBVlFLZ2ZCSkE2L2xHMy9nQjlNdGU3b0g5a3JYZmsrTDI1Z1M0bzM5OVoKRVBDQ2dYQXREQk1ZMnVndDMreURLcmI2TDJ3UFFCZDNCaXVORzBueXV5a1p0eFRRTVhUS05LanUzVldxL3NNVnJPSFhxNDBmcjFGTgpuNjVEelo5dmFGMmpXcjVjeDFwL3U2SFc5dldtbHJ4QUppMk5TU1RpTitFekxnd29Vbjd1MDZGQy91a3ZqWTZrSE5vWnYzeHZCT1Q2ClAyL3pXUTV1MmVHKzRUTWUvb3lzbi85NWpiL2JOcjN6WnZ0Rk1IaW0rZmNSY2V6NTQyckQ3MWNnZUlDUDY3K084TUdQL3A0YkR5Zm0KRTRiang1S1BRNWQrSGJ6NHZ2L0N1ejRNL2tKQzhLYWs3S1M3OUxpclJNdzJ2TVdIblVVSEhZWDdIcnpmdTdUeE9XMVRySHlKclQ4eApzSTQrL2prZmFqNFhiTUlKVUVxNE5UWFNsaGExcGNmc21WRjdWc3dCK3NuZWNPVnN1bk8zUFBuQ1BSMEYyNTBRUGlqZThaYnNkdUhGCjVjcjNSRVFmMC9qblNOOEVqZWpoaVJXcm8wRnhHNitqUWJCTGpTQ09lSktIck9IQmwxSDRqUFJiOUxXd28wRkJIMjAzTkVRN295OGUKOXBZZmVxQUx4NTFWNzdvdXZ3Y0dBWWE4VmU4N2FSUkU0ZEpZNDI5ZzAyRUtDQXVRMVZ3ckZzam9menB4aEpKZUo5TExpVjUxMXVQRwoveVV1MVdOcGJqN3BrYmIxbU55anZlUkVPTzloOFJVdVRoeTFXaEI1UEl1bExtbTFTNTMzY0FuaDBtM1YyLzVMYi9vd2NlVnVJejdSCkpOYUwySVY4VE9kNW1RRWt6WDVJUC9IdFBqRUhCT2lCaWlLaWdsQjdmdENSRjJyUENkaUJRZG1nbjJCamtxODZ5VmVWRXFqT0NqZG0KUjVweW9xMjVzYmFDRFh2aHBxTm95MW04N1FMOTRBUUk2SU1Hd2lyM3ZKZjJ1NkNxZys3TGh6M1ZSNzAxeDMxUTdVbC8zWnNCcVA3dApZTU83SWFqeC9UREVQY1RwVS85eHBCNEE5T21LL2VQVnRuZkRrTzM5bGRhM3crMmZidHMvWEcxNzM5LzgyZHY0MWRQeWUwZjNuNzAzCi9qMTgvYy9oRzcrUFFGZitHTzc3MTVENzMwT04vKzZyK28rZTFxOUQ5VitIcXI4T04vMG10bmkyZk5SMEFxeFJiS1NuYVlhdmF0RmMKeDdJRTYxeW1TWThsZWlUM0pMb3VsQ1NlK0x6bjdRaFc4V1lZS3o4WmdzcU9CNkhTb3dHbzVMQ2ZLanpvSzlqdnhmaWFGMWduWjdzcgpaN2M3Yjc4WFBvSjcwcmM3TTNmRjdDY2oxcG05NVMwK0dxaDRBMzltTHdRL2RUbUFlQnd4NnZLV0ZYVGlYVHdhWXBuRXc2d3p6Q3ZmCkg4TDQ0N0s5d1hoQUg2MVNzZTlucUVUUVo2Qm9zeDhmWVBBcEt3NGd6VDE2SEQyNTRUNHFKOVRMeXc3MlpBVzZvV3d3VUtBM3k5K1QKQ2ZUeGRXZXNkMEhwYTk1L1pLNTJrb0VLQXQwNEJNSTVFRVFBa2d3RUFOSU1ORUNaYnlwcE1RMlNBRlQ3OWdxa0crajlDRGNReFJuVQo5T2txcEJxSVo1WlFmSHhxMmlXZFlESmt2Z3R4M0VDSUh1a2RzNWpFR09JeHpmLy80NFpLSHc0Z3ZqMUM5OUNwQVBwbWZIbkxNb2srCkZLRW5FWUNrN1JUODZNSVBKNkNmeWc4RHBCOEVFT2dIQVVUNmdVQS9CWHRDUDNUSFV3UVFidnJCVUQ5SjRTWUVFS1JQZ0JRQWdYNDQKZ0ZBL1VPR09GMElBb1lFUVFLUWZGVUEwOVZFQkJFbldPVVUvbGdCS3hDQUVFTHFISklRQUtqdHdsK3Vqb0U0SUFLUkpTTjhiaE5FTwpJVEFRRHcya01XZ0VvLy9qaVNTRUdHcjc5eFUrTEtRU3Z1U1VTUTltV3Q1UzV6M2tIaU5wTDdQbGRFZXhqbHlOK2ZXcDBrZlZqK1FlCkdsNnErcmw0M0FOWjY0Y0JTRTdaNDZ4T2ZmaXBYZ1ZSTzQ1OHNJS1FQVDlveXd2WWM0T09yRUNyS05pY0htaEk5dGNrK3k5ekFPVkYKNHdBcTJSSUFzalFRQUFnTmhBQkNBM0VHb1lTQVFYckdXSWlQZ2xyZURUVjlHQUVrZ1lUYVBveTB2aDJDYk85SFd0NE51MCtHMjk0TwpOSDNzZHZ6ZU4vS3ZrWm5mcmkvL2VqdjA3czdCd2IzRC9Yc0hlM2YzOSs1dEg0MkdUdTR0djdrMy8vYnV6UTgzWEYrdjF2MCswdnI1CktsZ0ttRkwvbThWa1NBSVFUMFdQSllDVWVjOXA5RkduUGdtdkMyVTE3NEhJUFZ3L0NDRFVEd2RRc1VrL1BYeTdqOURQZGxmMmpqQVEKZk16YTltYnNlQUZBb0I5dC9OTmRjanhJQUlJZnVUUnFrcEpNODNmMUl3Q1VZTmhqQWhCM2p3U2cwdDBCa2VZZWlydEhBbERoUnArVwpOUGdCK3ZSQnBCOENrRVFmQ1VCQUg0enJSd0FvWTZVRFFnTnBBQklMWWJRV3Boc28xcFBBUVAwU2dBd0RpUnNMa0lINDVtZzZPd3dCCnBEUG8vUWdaeUJKREdvTUVnRGlERUQySlBNUVh5RXdNTXQrcWhnQ0VGMStYR0NRa1pKN3drM3Y0NDBUUG1IN1ZEQ0I0MDZ3enlIelMKbGwyWjhVakhJZlVRQlltamwzSlV3eVQzMEJHUnhJTUd3dUJUU1Q4U2dDVDlJSUJ3L0lPREg1cjk0UGdINlVQakgzSHZSZzFBL0pZWAplTTRYcm53WnN4OFJYZ0VJQVFUNklRQnA0NStFQUNyZTZ5N1c3eUZnRFNDVGZvNEdMUFdqN1FHeVNCWFBkd0pJTlJBTmZrZy8rSXpZCkVIM1FvU1VZcEYwcnFCTUFKTzBONHR1RHBKa1FHS2p4dHhGKzRoaHVtdVlla29hQ2xxbXZKZjZpa3BKZ2JTSU9Relo5U29uVksyVlYKcTFhY3ZXWHRIczA2Y3RYbXZUNm51SWZvSTdrSE4reERYRDlJSCt6Q1VUY21OcTFybFI5NFJjcGVIMzNIejA0blZLcnRic1pLdGp5NAowWWNlNEtZZld1M0tDOXR6UXpZcUo5aVdIV2pORHJabCtsdlNmUTFwL25vSUFBVDZTUTNXSUlCeUl3SkErVEViQUtoNDB3bVZiRGtKClFHZ2dqQUFrR2NoU1FnSkRiMFVOYndjd01GRHpXMUhMbTZHbTQ0SG1FKzNCbXdIeHpEc0JJOXVoeC82MnEvUFh2anNmcml3Zi8zSzgKTmZvbGZQK3JiK3pmcTJQL1dobjk5OUs5UDVmdi9iNTYvL1A2L1hmK3NXUC8yTXIyTDljL1hHLzlPbUwvZGRqeFlSaCs4dFQrZGdVcwp4U2Y5cGhLZ2g5YTJwQlQzNkxjNitVNzMwSUpYb3V0Q0VYMmsxUzZPSHA2bGZnaEFtbjVNTzM0UVFOcVdaeEVZU09obng1c1djV1Z0CmRoYnM5d0dBeWsvRXJSWDFJWkJDSHd6c291SkdUZUZPdkF1SGcxb3FmYjROSUJyODZQclpIU2dSKzUwSFNUOFNnR2p3WStoSEJ4QWIKL0FqOUVJQVNEWDZRUHFTZlRIOFg2VWNHVU5aeVIrYVNCejdtckFrRDVRVzd0Yng4RkZRUzdRWURjUVlaYTJGOVlDRE1QQWNTc2RzcQpXWndnUnNjSllhQjN3eEF5aUZJTWRBV1RHSlFJUUh3NW1TK0hKYngxbitrbWZFeEMydDRnbm9xaDd3U1FjbDZNNkpTUlR4dzN4bHR6CmZCS2ZrVktQU2Z6SVJNYy9pc1JEQm9JSGRiOE5xd2NlUE1Ed1E0dnBRUEpoQUFBazZRZm93d0VFK29FSzl0d0FJQnovY1AzZ3JtZWgKbjZnWS9Kd0xOa0FJSUdNRFVGdy9IRUNvbjd6dHVINElRTWFkdFBVbHNJVHJYMGNERW4wNGdMaGRjQlNraWtmcUZBQlZtdzJVQ0VEbAp4OTJsOEUzYjk0Z09YS1ZIK3IwdGFXOFFKcDBzSnAweVJtZU5TYWZRY3dsSjh5SHBVMHA5TGFtcHJ5dWU5QnFUa2lZOTMwU1A5bEkwCmRmblhRVWhlbVUzZ0hqNzRRZnB3L1ZTYzlFajBVZDBUcDgrQnQyeS8wM0tQc3hqL0tQVGg3dUg2MGFjK1lXY2NQVGp5Q2JSbUJwb3kKZzgxcHZvYVU5ZHJrdFpxVTllcVVRRzFxc0M0dFZDc0FGR3JNQ2Jmb0FJclppemJhb1JJeEI5SU5SSE1nc1JOb3R4UGlCaUlHOFlGUQpYRUp2K3VwT1JQVnYrcUhHRTcyMjQ4R1d3LzZtdzhHbTQ2SEdrNEdtNC82bWs5Nm1rKzY2OSsyOTc3c2VIZzF2UnE1L1dycjE3L25SCmY4MVBmSjJmL0x3OCtXbHA0dFBpT1BUcndzVGJoZkhEaGJHZDEvZjJsbTg4M3J6ZTkyN0U4WEdvOWROZzQrZmhoazlEcmUrSCtSdGQKMDV0ZVRUK1NjdFJuS0NZZTAxM2VKUGVvOU9FN25jVm01MFRYaGJMYTZRenhrUTlQcFE5VUZLZFB0NWErMDFsZi85SW1RTnF1NTA1NApBUHBKM2ZTa1IxMjVPMTFGOE9lYzlKY2RpMXNyNHJYMUs0NEhMRk5Ca3lpRWp2UXBwYmhIRDFlN0pQMlkxcndNL1pUczlFTUlIYVFQCjZjZTg1cVhycHlEV3E4V1h2WkErdlpDNjdJWGk0WkYrUkl3K3BCOEJvSnhsYjdaaG9LdzFMeGdvSjlDVkk1YkRoSUgwVVZDa0N3ekUKR1lRR3F0anFCUU5oWmdicE41ZzhoVUdtQThiYklUUVFaNUN5SWpZQ3FReFMzS012aEttNzZqaUFlQWlnTmlOWlF2KytidnZYTlVveQpVQ0lZcVNYYU01SG9lVnBjd0dNUFBvWW5WZUtjY21UaXh5ZnBFQmdYejIvaTdSYzl4aU9RZXNpeG9BKytnVGJHUDdqc0JlRytuMFFBCjR2ZDdwMHYraUYzUGtjYnpZVUVmQWhEU0J3UDlJSUF5TmxBLzdhQWZEaUJjK2NLS2FQZVBkck5KeTczUHFCOE9JRHpKU3dJUU9vWlAKZ0RoeDFGUU0vVlVBNFRwTDZhRlhiQmpmYzVjY2RJQ0hnRUVYampzVEdZaXZpNkdCb05vdkExamRiNE5RdmJibGd0ZncrekJQZ2hGaApxT25QZUkxL2pGaG0vcU1TUUFkZlhhemFMME5RelJmeDFwK0NUNkhxei9LQXh4STk1bVQ2U09LUkJqK0pBSFFLZmJoNzRpWFk0c1BIClA1dytKVEVQVmh4MVEwVVJWMEZJYlBlQmNvT09iTDh0eTkrQ0MxNFpnU1lveFYrZjdLczd0MXA5YnEwcXlWZWQ1cS9OQ05aRG9COGQKUU9IVy9FaGJRUlFNNUNpSnRaZHVPS0d5VFZmNWxodXEyUFpjMk9tQUVFQm9JTk1vNktDN0d2UmpWQU1BMHFvRkEyblZINGthanZ1aAp4cU4rMjM1LzgvNUE0OEZBNCtFd0dLamhvS2R4djZQbG9NUDFxMmZ5c0c4L2VPMWY4N2YrMS9PN2Y3NmUrRzM1d1pmbHVTOHJEN0RQClM3T2ZGaCs4ZXoxMTlHSmk5OW5ZMXR6dyt1dVIreHZEcmw4RjFscy9ETGE5RXh1TVZQcm9HZFlSTjJBMmtqN2xtZEhEczBDUDZwN3EKOThPWUJYMXdnN3hDSHdTSGhCNCsrT0h1d1FyajlBSDBkSm5vcytYbEFNcmE5cVp0ZFNSRm5WbGI3dno5cnVMalBxamtzSmNNcE5Mbgpld0FrS1VldDRtQUFLOTlQbFBXQ2wwb2ZEaURMcVk5Q256aUFPSDA0Z0w2TFBsb3FmZEpXTzZGLzVLNTBrWUV5VmpveTE3M1ptb0Z3ClF6UXlxQ2pzQlFOeEJobkxZVDFnSUl3WXBCbW9IdzFFRE9LTFltZ2dPcUtJUThYYklVbzFFREtvL3NNd0pERUlTalFId3BWaml6TUwKbExzWjZ6RURxUktTbnNTbE1kVkdxbnM0Z05BMEVuSDRwNFNlUkFzTitLUktIRkpPb2tnL2xIUk13ay9GTVNrKzhva2ZiS28rREtncgpDUHJCdzZ3ZmNnOHlDT21ENjE4RUlLNGZzZThIWnovaEJoVkFaQ0RTRHdUNlFRQ2hmdkozNGx0L0lIeGNzdHYxOXdCRUJrbzA3MUhSCjgvMEFxbVlHU2d3Z1BMMm9HMCthQXdCQjRoWUhoNTZLb3c0d0VNYlBGSk1XeFpCQk5aLzdNVWxDYXVnaGJkVnNCUGNQOGRSRkt5TmQKUEFxdFR1TU9WZk41VUU4VER3LzBJL291OU9BckU1T0hQYWdjMVQyVytxRTl6dVFlb2craXAwS3JmTDhUSzl2cndNcDN2Uml1ZVpGNwp5cmYweWpZOVVPbUdHMFA2Z0hzS3cwNTBUMzdRSVFvNGMzMk9MSjlZOElLQVBxbUJCdERQT2QvbDgvNXErSWdBU2cvVVpZWWFDRUM1Cm9UaUFpcU1PQ0FHRUJrSUdrWUdJUVdnZzdMSm1JSWxCSktHNnczajFCNkxtdmQ2bXZmNjZ2WUdHZzVHR2c2SDZIVy96dHRPNTczNncKUCtBUERuMThkZTFmeis5OFdaeDQ3My93Ni9yczE2VUhueFptc0k4TE14L21aMDVlVHU0L0dkMTVlTWMzTlJDY0huaTYyTjl6TkZULwplYUQ1WFgvcnlWRGR4K3Y4SkJoVHpEcGlJN2FXNmg2S3hJT25yTEsreXoxVXd1dEM4V1V2Qmc2SlBqVDE0ZWpCQ25hN0MzVDM2QkY5Ck1Gd0NRd0JsYkhha2JucVNZNjdjWFUvaElRQ29wK2lvMndEUWdQaDRaTjAzbGZYL1dnb0FBSUFBU1VSQlZFUEV3U3lmVkFGVXR0ZHYKWkJyMjhOVXVTVC9GMjMwUUtFZWlEMXZ0TXVrblA5cWpSV3RlUko4ZVNGcnFJdlJJK3Nud2VURnlEOUZIQjFEQmFqY2FLR3RaYkFaSwpYeFVHeXZSMzVtdnBCZ3AxSmpCUUQ4VkhRUUFnYmlBK0RhSmRRZnhkZGZXYlFVaGlrTFFvaGdBaUF4R0Q1RGNLOGFXeCtBWTZrNEVNCkFFa1NhalZTSldRTkkwWWZkVVNraHJoQnhIRHUwSFNIbzZjbDhTNk43eFJQSXZyZ2dnZ1VGOCtYSWVrZE9SeCtMbjhhd3FvK0RsNzYKZGFEeVE3K2xmaUMrNlFlalhjL2tIcVJQM280emQxc2YvOURHNS9qaUZ3T1F0djVsblA4VmJVdU54Y2MvbVp0Q1B4S0ErUGdISjBCMApDaGhFQUZMMWczdUFKQUFac2RjbjB3eHRYRlAxOHowQUlnTWwzQVFOQUhvajN0V0pTMlpyamtSS2x1Njd5ZzdjWUNDOGlSamVSd3dNClJETWhTVUtYUC9aQzFaLzZNUElRSnhHUG4wcUdJWWtTZ1VaU0ZQdWpySlJqVmZXbkFRaGVZN3A0dE9oVmQ3cDdGUDNvQUxLYzlIeVAKZTJoM2M2S3BqMHFmMGwxUHFkaG5FOWNQWC9hUzZGTVNjeFZIbmFLd0N5b010aGNFSFBsK2U1N1BodVdzMjZITTlkWU1YM082dnpuRgozNURzcXp2dnEvMXAvZUk1MzZYei9pb3drQVNnSEFhZ29xaXRLR0lIQUpYRTJqR2FBd0dBVkFNUmc2cjJ1ekNTRUhtbzlpQmUzYjVlCncyNVgzVzV2emM1QXpkNWcvZDVBNDFhbmJkUFJmZURaV3I5Ni9QcnF4K2UzUHM2UHZWMmZQdlpOLzdvODhjZjgyS2VsNlErTFUrK1gKWnQ0c1RoOHRUTzYrSE45OGVpLzY2UGJpekpXMSszMHY1N3F2UnZxYjNnOVVmeGlvZXpQUzlQNG1Qd25HRkovdUdBQ3FFemR6MVI5TApTZTdCYTNaQWx1NVI2WFA1M1JDVzZMcFEwdUFIUW5CSVozdlJ5RWR5RDVTLzA1VWZwNDlYSzY0ZktHdFR1QWRMMy9DSTlhL3R6b0lECkx3QUk5QU9WSHZVQWZUQ1ZQdGpwM0dHKzZjY1NQVzlGbi83UzNUNkNqalR2TVMxN2FmU1JBRVQ2UWU1dy9SajBpUU9JMDRjRGlOT0gKeCtuREFjVHBvd01vZjZVTERKUzMycDJ6Mm9VQVNsdnJTRi92elBOMWtJRVFRQmdheU5nUDFBMkJmdUFqSHdKZDNPbERBeEdEK0hJWQpBb2pPcnhISEdBMUFQTTRnQTBORHFvRWtEUEdhUG9rYkdrdHpJTkZ2VnlDVlFRUWdTd1B4NS9XWkVNRGx6NnVjUHZpTVNoK01UM1FrCkFIRURjZUpJREVya0huVzZJNGxIQlZERGwwRkxBT0U3Y2p3T3dVRUlRd0JKaHhZNml0RGdoMjk4bHFZK3BKK2NMWEhtRjIzOTBhOTUKaUxlODBBREVka0NmQnFDY1RhY0tJSEFQWkxrSk9oR0F4RFVKalUzUUVvQlFLdmdxcmRGMnFra0FzalNRQ2lCTEExV0xhd0lsT0EzKwpSTHV5bVFZZ0NMNmwrcXJpbmhNTmhPZko0elFJOU1NSFF2enFRVlcvNnFHRUNFTmNRcWI1a0xad1JsdUlxRVNURy9xTjBoOG8rWVpLCjlEeTh3RWpiOUtxRGwxd2k3cWpQWVBUNjVQcUJsNmlsZmdUY0U1elZsWEN2ajVWK0xBR0VDMTRxZmZEazlxS1FFL1NEOU1sWmE4VnkKMTl1eTEreFpxMjBaYXkzcDZ5MXBQdEJQUGVqbjdIclZqMnNYenZndkpRVXVnNEdTL1RVQUlGd0N5ekVBQkJXRVd3dkJRQkU3UkFDUwpERVFBNGdhQ0xqRUQ4ZEE5TmZ2ZFVPMGVhOWRidTlkN2VhZi84dlpBN1U1ZjQwYUhjN045NktqcjNhdnI3MS9lK3Jody85UHF6SWUxCm1ROHJFNThXeC81Y3VQZDE2Y0dYcFJrdzBNbml4TUg4K1BhTGU3RW52NFFmM2xnQ0E0MzNQNS9vdkx2U2JUc2FLUHM0VVBuK2F1dWIKbXpUMWwyTlRIOUxQZHdLSTlLUDFEZnB3L1VBSnJ3dGxCaENCZysvNDRmb2g5eEI5b0R6ZFBYcWNQdkF4YzBPNEIwcUx1Vk9qcnJTdApqcXc5Y1J0cENQUlRmTnlqYlgvdUx6M3FnOG9PcmZ0TCtwRUF4SitYQUtUUlIwVFdrY1JqV3ZZaS9XejFxdU1mRkE5ZjlpTDk1RVc2CnpjdGVwQjh4NlpGbVAraWVSQUJTNmFNREtIZWxLMDhEa0dpdEszZFZMSWRsTFhreS9aNE1uenZUNTg0SmR1Wkh2SVdScnZ4UVoyN0EKVXhEdUxvejBGRVc3aTJNOUpSdTlvczF1cUhTckJ5cmI3b1hLZC9vcWR2dXhDM3NEMU1YOVFhenlJSDdGT1R6MjBJWGo4SmdSUDBHTQpMaGVVY0grMHpDQ2NBK0Y3QmI1ZERsT3VsMFhYVTcvYS9Oc1ZDajV0MFZTRXR5QldJNTBvazV2NExTYk10NXVRaHpxb0dYNHBRbjNSCkFSY2pFdXk2VUZZaVRGdE5FOFcvTE5HcUJDWWRoNmlMNy91Z0MrOTZvWXEzUFZENUd6ZzJ3eEc2aTFkNkxLNW9yRjNUVDl6dWxGL3gKT1d2YmtiRnB5OXl5dzhlMERmMlNQK2VqeldmRGpUOEg2OCtFUkd6ODA1UVMxczUrQi8xczJOTTNIUmxiN1FpZ3JDMW45cllMeTl0Mgo1Kzk0b01MZGpxSzlUb2h2ZjZaVk1BamNBd1pDQ1NGOTRDTmlDTzlOQWVHRkNxSExiMlRFa0dQNG5OS1VnaUg5dDd5RlAyMFFxOUt1CmZJajBxWHJUeDhOYnhJdTd4Si8wNEdTaTlGQmZRQVFEWFhqWFYzclNVWExzS1RsMEZ4KzRjSE0wN2dxaW1aQzBMbGI1WG5UcFEyL1YKcjMzUTVZLzlVaEpFRXFXcUJaKzUvSG5nYjFUMXFWOUtwWXlaTmYyblZQbXVqNUxjSTBXN2ZPSXBTMTBZTWdndlhNNzMrcFFDZXZZNgphQTVVdnRzQmxlMTR5cmFiSzNZYzhMaDB5MXV5MlZXMDZTM2VFbnVBeWpjOEZWRjNlZGhaSG13dkN6aEtnNDZpc0swd2JDdGF0K2Y2CmJabitsclMxeHZUbCtxekZ4cXlWVnRCUCtscGp4bm9UbnUyVkhLdzlHNmo2eVgvaFIxL0ZHZjlGU05QUDVWVGY1WFIvZFlhL0x0TmYKbHhOc3hnQkErYUVXQWFDb0RTTDZRT1dicmdyUUQ3YlpnVjNZNm9RdWJudXh5enZkbGxYdjlzU0RUNDFBUHpXeHpzcWRycXE5bnNzUgpUMDNRUFJMb2o3MjYvdmIxNkx1RnNZK0w0NStYSjM5Ym52bXlOUDNiMHZTWHhhblBTN01mRjJiZXY1b1dpMTh2eGplZWpQcm1iaTNPClhKdWZ2RG96MWZkNDBqdjkzTnU4MTVQenFmZlNtd0hId1RYNkNjOStzQTlyOXluVDMvMUtiNFByZjcxcUdXNzBrWWh6Q25wVSt1Z0EKVWs1ME56WTdEMUNra0pMRFhuVzdEK3FIN1hTV2xyMlFQcDFabXgwOG12MkFmdkR1aC9CbEJmdTkraHU4L1I2bzlLQVhVdEhEMDFtbQpQSStYWVN3OTZEKzlrdjArckhndlh0RnVMOFdmNTc5VXVOMUhGV3oxVXZtYmZWVGVSaStWRyt1QmNxTGRVdG1SSGlncjNDMGx1Y2UwCjNZZW1QdXVkbE9TZTFKVU9UQUFvYmlBTlFEa3JuV0NnMUdWbnhyb3JPOUFCQUlLQVBubkJqb0t3TnovVXBSbW9DdzBrMnVpQ0pBYUIKZ1RDSlFjeEE4WHN3OFRVSTlRMjBqaUdyTGRKYUZ1dGlFTTFMRlFOZHhSUUp4ZlZqTnBCOG4ySDlobndLYUl3aGpla2l5Nno0VU1jOAp5NG5UeDd6M1F0MWVHdDlrcXFhaUIwUHI4TWZTVzNrcFB2akJLai8wUXhLQVVEOFFpSWRDK2tCRnhwM2VrVDc2Rlo4MStzREg5RTBiClhmRHdYS1RwVEtnQkFIUTIzSEJXbXdBQmZlQjVDRTk5SndBQmZUQUFVTzZXMEE5OFJBQVY3SFpJQUVMOWNBQWhkM0FPUk9qaCtpRUEKZ1g3K0JvQVN6b1NzQUFSZGZ0c1BrWDRvQWhBY2hrRS91QW9tMWhuZmVzdmVpTjNRYUNENGlITWcvSWdBUWdOaDRzU3hkOTNFSUFvOQpsRWhGYWlBZXl5ZFZ5bngvbHo3MlVYK1ZPNWI2MFpMMUk0dUhMWGp4dlQ1Y1B4RGRzNFhRVTZxTmZFcTBlUTlOZ0lBK3BkdHVxUGlnCnZYaTN2WGpUV1JicnVMalJmWEhEV3haemwwUWRaUkZIaWJZcFIweGxnbzRLbjcxcXhWYTdaR3Q2NGFoNzJYWnB2clY0b1RsN3FTbHQKcFNsOXRUVmpyUzE5dlNsdHZUNTFYV3g1UHV1di90bC82Y2ZBUmVqbmdBQVFlQ2dwY0JrTWxHWUFLQ3ZZUkFDS0Q0R01uVURJb0RMTgpRSmdFSURKUTFYYVhaU1lNYVYyR0o3ZTdhcmE3S3pjN3E3YThsemU5bFZGUGU4QTd1eks4Tlg4VDlQTis4ZjZucFluUHk5TUFJQkVBCmFHSDYwK0tEWDE4L2VQZHk2dmpGeE03VDBkQ2pPeXNQYnN4UFgzazVjV1Yyb3ZmaGVNZWRGNTdhWFc4K3ZGYVArcG9PK005NUhUM3cKUUx0ajZ4QW1NYWp1d3hYTGFLbExWYzRwNHFsNk95Z2x1U2UrNE1YMGd3QUMvV2dKL2RDT0h3S1FxaDgyK09sRUFHVnVlQ0FDRU01KwowbUxpd3Zmd1BQeVdnZ09oSHdsQTM4TWdpdjBXYStoSUZlLzFHc25FVVN2YzZZbG5wUjhPSUs0ZlNIRlBGeWE1SnpQVWhVa0xYdXJJCmh3Q1V0aVlXdFZUNjZBREtXZlp5QUpHQlVwYmEwMVpjbVQ1M2x0K1R0ZTdPOW5uQVFQbWh6cnlnRndJSmdZR1FRVVV4TDJUSm9FVFQKSUFEUWhUMzR0UC9pUGp5T1g0MVh3NUM0K3B4cGdZd2RlTlNUeGFTL0ZTUWhQakxsREdyOGZJVU14QVB4TkgwWm9aaUI1SHZRNk1tKwowYVBiU2loWkwxM2h2RWZkZnlydExXVmJWbVhpY055b0pWckM0Ty9wK2JGTmNvOUtIMm4yZzNld0l2ZEFoZnZ1UW9NKzRKNnNiUWVHCkFNcllzcWR0dElGK0FEcG53NDBRQUFnNkYybUVVRC93cXhDZStTWHBCOHJaRkFCQy9TQ0FTRDhJSUZVL0VISW52dktsQUlpUGZ4QkEKRnByNUZvQlVBd0dBTEExVS9VNFlTTklQZk1wM3BlQmxKUEdhQWhYdnVzQkE1U2VkWmNjZGFLRFNmUkV1aXZHOVFSaDhaY1ViTHpLSQpwNUpJaFpHYStwVWNNWCsxeWw5N0tVdmxuQW9kVXhmZjltTFN5cXdsZW1qQkM1TGNRNnRkUUI4STNRUG9RZmRBSlR0dVRIeXEwYWRrCnl3V0pzODAzWFNVeFYyblVCZlFCYzVSRTdVWGh0cXpObHZ4WWEwWFkzdWhyZHkrNkJwKzViOHk2YjArNXJrdzVoaWRzWFpPdERZOWEKOGhlYWt0ZWJrM3pOcWV2TnlUNmdULzI1OVpvenZzcy8rYXArREZ6Nk1WUUovYXdaQ0FDRVF5QUFVTHF2VmhnbzBJZ0dRZ0RsaFZ2NQpRcGkrSVZvekVGYSs0UkZES2JPQklKVSthdUFlRUkvZWhsanB1eFRycUFxN3F5S2VHNzcrNlB5Tnc5ZTNQeTZPbzM2K3JHajZFVU9nCm1jK0wweDhXWjkrOTF2WStQeDJMUGJ5N1Budno5ZFNWWnhORHp5WkdIbzcxVEkyN0IxNDVLN2ZjQlljZGxYdmRZbzhFL05XSWI0RVkKNUpHQmVMWHZSNnd6ajMvUU40bmNnL1M1OUdaQXF2SkVYK3FTTnZxSUxPaGpBU0RhOThQMVkxNzIwdlZEQU1LTWxTOG5CSi9DVitidAplY1g1WHhxQXlFQVNnOVFVOTVnQWRLcDR3RFE5ck1UVzBTclk3alpsUWs4UHBVNTkrT3lIM0NNQmlOd2pBVWlkK2tpekgxMC9Hb0FrCitxUXNleUFCb0xpQk5BQmhtV3VlOUJWWDJySXpiZG1SdWViSzhYZGtCeUIzYmtBWUNDUVVONUFHb05NTnhLZEJLS0dLWGZpMGp4akUKQmtJRG1Dd2g3ZmlCaHhPbzV0MnczdnRCcVBiREVJWUx3enpPSUUxQ0Zta0dpdXZIekNCNXlVeFBtZHlvejVpVHQrYlFadVFFbWR6RAprb2xqQ1IxVlBKSjdwUFdJK01ISjdKNVQ2RU5USHdRUXVxZGd6NFhsN0xabjc0Qjc3SmxiTml4anN5MTlveFhIUHdBZGRJOFkvNFJGCkNDQ2MvVWdBd3BVdkREY0FjZjBVR0FBcTNmTkNxbjRxRHZzZ0RpQ2VwWDcrRG9EWWZqWCtmQ0lBblRJQm9uQlBGUVlBRXIwUkJzSTUKVU1tZUV6Y0dTWHVETUhBU0dnZ1pSSEVHL1dlNitNRTZqcHRFbWI0K2dXa1NQYTkyNFUwUEpOSEhFajN4eXpjZnNkM041cFBiaS9mMQpxUThDU05LUEFKQ2hIenpONm5MUWRUSGlCbHNVYnJibnhld0ZVVnRadE8xaTFGNFRick90MjRmbW5aT1AzRThuTzErT2RyNjQwL0hzCmR1ZkVQZWZFTGZ1dFgxcWRreTFGcjVyUCtwcCtEallDZmM3NmE2R2YvWmQvOEZmOTRLLzhJWGpwaDFEVkQrRktmUWdVcU1JaFVFcEEKbkFrdlRvYjNOMGdHd3JVd0NVQmtJQVFRR1lnWWRHbkwrKzAyT3luNGpaV2JuWlZSejhXZ3N6M2dmYkY4NWNQTE94RHFod0NFK3ZtMApNUFYrNGNHYitlbWpGeFBiVDhZQ2M3OHNURjhWOUprWW1vTkd1MEdFdGtWNzZXWTdmR012Ym5zckR2UWYrNHhCQTVpRUlTSlIvRUFnClphWVBLU2ZSdk1lMHdabmY5MDJoano1Tllmb3BQdWhobWJZODYrdGZDYVkrS24weVltNE05Sk1TYVlmU1lpNzRNdFFQQjVERW9FUngKOUpoL3lSbzlpbnYwdmkwZXJmeXRMajBUZXJvcEZUMHFmYkxDWG9xakp5UG9wZFExTDc3Z3hmV1R1dW9SbWQyREpTKzVaUURscjNmcgorWHB5MWpveWxweXBTKzBnb1l4MU1RMFNXNEw4SFpxQk91SUdpblpDaVFCRURGSWtKQUNFQnVKeklJdHRxdm9oeWpoeUdNY1N3cEJFCkl2MGRnSmxFYkgvY2NNT25FVFc2bGJTVTdCNGpaQTNOYjlRUmpoUjltWFN1alRUQ0liZ283dEczbmRiOE5tU2RzcGlWaUQ2WXFoLzkKNE1UUVErNDVoVDZvSHh6OGtINU9BUkRvQjRpRCszNUU0WVl6a2NZem1uNHNBVVQ3ZnJTTnp5TFFUNzZtSDRqMFU3SnJBcENrSDBoeQpENzNHTE9qemRnUWk5RWh6SFE2ZFJLa0FVZzJFQUZJWlpKcFlHTGNUS1Q3c3hPOS94WW1vSEVoMDJGbDIwRkc2NzBFR3FWdWtBVUJrCklCVkE2a3hJZmY1MEtsMTQzMjJaU2lJMS92V0pjSlBvZVk0ZWM5YjA0ZWpCNVMyTW8wZUtscjFvcDNQWmpxZDQyMFg2Z1ZBL1lwOU4Kc0wwMDZpcmNjdVp0T1lwajlzdUJ0dloxUjgrcTg5RlR6N09ISFV1VEhiN1Jyclc3WGZOM3V1YnVkWTJQZWFkSE94N2NjbzNlYU84YQpzMTk0MXBLNjJuUTJVSjhVcUFINlFEOEdvRXRDUDhGTC85VENoVEFDa0hZZkRBR2dOSDg5R1NnN0ZEZFFJZ0NKNlZSTVFFMWlrTkRNCk45dm9vRXEzTzJwaW5SZWk3a3NoMTYzbDNzM1hOeisvdXZmMStkM1BpMU5mbHFhMVpqNHZ6M3hhbXY2NE9QWHI2K20zcjJkT1hrM3QKUForSVBycTc5dURHcThtcm9KOEhFNFBUazRQajQxMjlqNXlYZk9JcWp2Q2RyTmp1aElOeDVVRS92dnVWRENTZEpoeFBwWStXU2grYwo4WEQwOEdIUDZRQ1M5WE1vZHZ5UWZvcjJ1MWtXVzU3NVp1ZHYwZ2R2OXB3YWRTS0EwdUdIM2s0SDZpZHZyd05QOWFDelBiNWZRcEQ1CnQzeERQR2I5ZEorQ0hwaytXbWIwZEZIZmg1NU9pcU1uUGRCSi9RWDZNQUNSZTZqRUFOTEtXK3ZNWHZXa0xUdFRsNTNwYTA2eElxWXQKaCtYNDNXU2dna2dIbEdnSVJBOFVDZlZLUXlBMGtQV3BPaUw5b2ltcWhLeUhROXBraUlaRGJDQmtFUUNvN3RNdzNrZGF1Z3VFdWxpRwpxVlRDT0ltazR1Z3hidHRFQUNMOWtGY2s5MURWWHdhdE0vdEdUZHJHWVVFZlBEaFp1Y2VTUHJqc1JZdGZDS0Q4WFdmZVRqdUUraUVBCjZmcUpOdU91WjVyOW9INVVBSUdUT0lCSVAxQ2VCcUFDYmZhREFHTDY2ZUxMWHFTZkMwZW1GeFYvYkttZi95U0F1SUVTQVFqRUl4a0kKOTBHYlZtMjBTd3pnNVpUZzJ3N2ZmNkFQR2FqaXlGdCsyQW51SVFOQnRDSldldVJCQU5FY1NKMEdjUktwejB0Z2tweWswdWYwVlBybwp6eWZBamVXVFBQdytzT1NscmtUMGtUWTQwN3lIWnpyVml5MTRhVGZiaXVzSHl0MXV6OTEwRkVSdGxXR2J3OTkrWmRFMStkVHplTllUCkhPMzIzZTlldWQvemVyem4yZjJleCtOOWMrUDlzeFA5TXhOZEQrNTZ4My9wR0xycmJKcHR5NTl2VEZxdlBSdTY5SU8vVWl4N0JTNzkKRkt6Nk1WU0ZCdEs2Q01HVHpFQTFFTjRaZ3hzSXR3UWhnTkJBS29BNGd4QkFGemUrSGRMbllzd0R3VytwalhSVVJOMnR3YzVYcjRmZgp2Yno5Y1dIMHQvbFIwZzhFK2hFQVdwZ0JBQjIvZm5Ed2NtcExHLzhzenR4NE9qa0MrcGtZN3grZDZMcys0MjJlZCtZSHhjcWQyQ3kxCjdTbmI3YjJ3MTN0Ull4QVo2SlJPQVJBTmU3aDFLay82TGRlNUlNazl1bjVPOUUzRUp2cmdOTVVZL0FCNkN2ZTZXTHArK0tsZXVRWjYKVlBxUWU0ZythUkVucEk5L050b3p0OTI1dTJJQ0JQcmhBSktTUEhSS3htK3hWRTYzK2d5V0NEcXllemE5bUJrOVh1cDcwR1BRcHdQaQo2TUhTL0IzUWFhdGRadjJrckxnaFNUOUppeTVNM3dTdEFxaGd0YXRvdmFmUTM1dm44MmF1ZWRKV1hLSTFaOGFxTTNQTmxiWHVCQVBoCnp1aThrRHMvN01FNWtEb0tvaVFHQVlBd2lVRjB5d0k2YjFrL2FCMzNZZmg2VlYvSzVIcDgzVmUvRTlzc0pBWnBFakpGQmdJQWtZRjQKNm5vWlJsOUFWREkrbGErbmdoR0FwRnRYU29NY0FvMXlkbkUvbnNhc25sbWpwK3hVTlhHSDdlVEF4eGMvOWwzNHRSZXErTkFEbGIvdgpoc3JlZFZtNmgrZ2o3WFNtSFQ5Y1A3bmJqcHd0b0U5YjVsWXJsYjdSbkJwdFRBN1g4NVd2czlFbTdPZEk0L2xvRTRTekg2R2ZqVGE4CjhRVmUrZkFVL1JUdjZBQVMrdG1MQTRqckJ3RkVtQ1pZeS90K0RQMFFnR2huRHhsSXRZNlJQSi9YMzdrbU1GQ2lDUkNkb2MwQlZManYKZ1c4N2ZQTUpRTkNGNHk0SWI1NEtEQkpiY1hmYnlVQWxoMjQwRURGSTdYUVlXVW9vL294Q21iOGFMdXFkRHFCdnVnZStJUmluRDllUApTaCsreTRldmRsRTArTUdSRDdvSDc3UUYwWlVHeGNsV3NYWWdma20wcmRuZk5yUmttM3JwZXZIWXV6TGR2VHJXdFRBMjhHcDg0Tm5rCndKUHB3U2ZUdzg4bmgxOU5EQytNRDg5TzlNNk45czdjNmJsenU3TnIzRkgxcERGOTVmSVB3UXFjOVB3VXJBVHJDQU5wR0lMK0daSUIKbEJTSUEwZzFVS0YycnBrNDNTd0MvMkppSXpZeXFEUnE3Rkl5ajRKVTdsaWswUWVyQ1h2Z3QxK0l1b2Q4dlpIRm01OWYzdjA0ZisvRAp5djNmbHFaL1c1d1JWMy9HQ2REaWcxK1hIbnhZbkRsOE5iMzk5SDdrNFozVjZadXZKcTgrbWh5ZW1oZ1lHKysvZGIrN2E2NmpaTldSCkVta3VDTFlVUk8wNU8rNkt6Vzd0aU5BREROSkhRY2Y5d0NBMU1wRDBOamorVjh5OGw1bWdJN21IS2dmcm1NTjdiTW51b1dtS29SOEUKVU1HdUZ4S1g1RERXdkN3QlJDZDV4ZmY2YU9naEFLRitVc1B0eVdGSGFzd0Irc25lN1FBQTVlNTZNSlUrcDZlNGg3SlFqbGs4WGJ4RQowT0hsYm5SU0hEMmFlem94anA1VDNFTko3cUVzdGprcitrSDY2TEZsTDZUUCtRVW5aQTJnQWwrUDBNK2F2aGFXRit6TzludlRWOTFKClM0NjBaVWY2U252bVdqc1lLTnZuRWd3S3VpQ2NBMEZvSUdJUWx4QVpTR09Rbm1RZ3ZHeWRldk9tQzBlOWtHUWdDVVA4Rlk4QXNqSVEKUEJpVUdBVFZmaHhTRFFTZnFvdGxtRFF4b3ErWExxTkNJWUNrSitFWmFaQVRsNUJ4Q1R0S3Y2Q0xTcDlUQVVUMG9jVUxaQkNuRDdnSApLbjNyaFlnKzB0UkhuZjBnZ0dqTkMvVUQ5TW5ldEdWdHRHVnN0dkRTWWsyZ24vUEJXbjNsSzFndnBqNnhadWhNdEFsS2lqVkRRQjlkClA1dGk5c051ZktGdGZMWUNFT2dIQWFUZmxja01JTlNQQkNEYTl3UG9zUjcvdkpNdngvQk5BSW45bUlxQkJJUGVpVFBoVlFEaGk1UDAKUStGR0ZqeWM0MVcyVHdjUW5nbFBBSUp3TFF6UEZBTURFWU1zczhTUUdwZVEvb3dDR3M0YXRVUmZtUWhBYXNySUo2NGZMWXU5UHFwKwpMQUhFOWNPMyszRDY0SjIyeE0yMjZFSTdHaThLd3MxTmdiYXJ5NDZuejEyK1dVOWdzbk50b21kcHFuOXArc2JLMUkzbHlldlEwc1MxCitja1JNTkRqcWFISDkzdWZqdlUvdmpzdy9VdlAxVkZuODJ4ajFtTGwveEVxT3hPc3hNU3VaLzhsQ2dIMFkwaW95REJRRFVRQWtneFUKRUdyRHdFREZFWHN4TVVnREVCbUlBSFFoWmgzcFJ6eG1OZnM5V1Z2T2lvanIvc3JBN3ZJZE1mdDVkZThvTVBGMTZRRUVBTUk3WUlpegozNWRGZXk4bU54K1BCaC9jZ3UvRHk0a3JjeE5ERStNRGQ4ZDZyNDk1N1kvZEdYNDd2UDhwOURmblJXMFp1NjdLU0pkeFJPakJPZENsCm96NHdFS1ZLaUJZRXBQamhnTVJqZWV6QVk0ck9IVmJwVVk5SWNnOTVnaTE3SVlCQVB4eEE0QjRNOUpOalBzV2RMM3NoZ0NqVUQ1UVUKYmt2YmFNL2E4ZVRzZFFJTk1RNGc5ZXF2MzVueFc3NHBIcTg1YS8zRXhSUHJNR1dsSHdsQXA3aEhvNDhIa3R3RHBmbzhrTHJnSmE5NQpNUUFsTDd1azhRL3FSd0hRYW5mK1dvOGVXd2dERDFHcFMzWXdrRFlIYXMveXU3SUQ3dXlBTXljSUQ1eTVJWGRlMkZNUTdTeUlkVUQ1ClVVOWV4RjI4MlYyMDBVWEJweVZiUFZEcGpxaHN0NWNIejVUdjlVRVYrLzNZaFlNQkkrdGJHYWd2YUh5NTA4R0d2d1VYQzJTR2gyUVkKbWE4Y0dyK1Mra2RoSStMUmQ2UmZVRTVLM1k1VEk2NG1aOXE3WTFxeDBqWXBYL3JZaDJ0VitLbTZaNWxLOUx3NjVxRmhEM2NQVlBLbQpFNklIeFNjZFVOR3hCeXM4Y2xNRmg2NzhBMmZlZm52dW5xTncxMVVvTG5XbzY0ZFd1ekpqcmVLQmRzSEQ4eHZOWnlJTlAwWHFmNGpVCi94eHAvRW5iOVl6clgrY2lUZWVqUUo4V2Nja2Y0NWJ2ZE45VGlNNzhvcE8vQUVEQ1FOb3RMNHEwdHpqOHpLOExCL0V1SHZaU3drREgKQXhnM0VGOUxqYjlJMkJwV2pYeEJ6dmoxcUV6aHliZmEvak45RjRMaUhnNGcvR2plQk4xVGVkeE45NktxUE5FM3RaUnJ0d2JUVnNHNgp5dCtJc1JCb2dBNzhGMCs2TWJ5TmZQR3VxMmpIQ2VFMGlPOE53dFBFVkFOSkV2b21pWWhCZkRKRXd5RmFQRDBsam16MUdmNjh4VzloCjZDbUQvMlFqc2FwbHVBZUpJNVJqM3V1VGFKR0xvd2V2N3NNWHZQVEhVWHRwckYzY3dYVFRYYmpaTG00K0dtMHVqRFkwQitydnZXeFoKbnJTdFRuZ1c1L29YWjBkV3BxLzVIdnl5OXVBYXREcHpkV1g2Q2p5elBIVVZlelRWKzN4ODhQbm84Tnk5b1lrNzNkZkcybXVmTkp4ZApyMHBldXd6RStUbDA2YnhmR09pL2hTci9HYnljc2w2TGt5RzFsRUMxdGlHNk9qMVFrK0d2eXdyVVl6bkJsdHhRSzRRR29qa1Fud2FWClI5c3JZazY5cUp1NndBQkV5MlR3K0dMRURWVkdQWlViSGRxKzcvYXJxejJSMXpjK3ZyajNlWEhxODlxRFB4YkUrdGZYbFZsdEFqUXIKV256NGNYN3UvWXVabldlVDY0OXZMMHhmWFI0YmZqRStNalkxZUh0aVlPTDJRTjN6cHRLRnBreGZjM0tvSlROaXk0ODRpcU5PY2QzSQpMVS9wTnZ3djZDemY5VmJzZFYyRXY4VUhQWldIdmZ5U29Yd2pSS0w0c1lEbVBRZ2dXa3pBTjlWWW9yMCtkSG9YYlhOVzBVUGpuN3p0CkRoUVBCdTZoaUQ3U2FsZHF4SjRXZFlpMFphL2tzQ01wNURnZnRHZHN0V2R1TzdPMGE1NEJmZWlDWjNUWDUrOEVrQXFkMDdtVGFKMEwKaUtQT2UwNkJqc0dkRHFudlFROHZ3OWNCcGE5N2xGeFEycHFiSlF5VXZPckJrbGJjMlBsbEY4U1h2VWcvZndkQU9XdnV6RFVYQUNoOQp4UTVsckNPRFFEOGRBQ0EwRUFUNndRcGpYaDRhU0RCb1d3OGxSQkdHRkFsWjM4MWJYUnJEMUtPT2ZrQXlKa044T0FSVmE1bXZHYXBkCk90MEFrTVFnNlhuMkJUSjlzTXZHcGVkb05vTUdzdFJQdGJGSm1lUEcwamZxS1RiU2lUWklINjRmb2cvcEI4VWpSZnBCOUlCNHdEMUkKSDlKUHpxNDlmMXZzK01GbHIyeHhtUjhCSUNwMW95VXAxbnd1MHZoenVCNEE5Sk1HSU5yM3d3R2tYL1dIQVFnblFCS0F4QThDTGZwcgovNTBBSXYxSUFMSjRoZnd0QU5INXQ3UUxRWkszK29LRWFQQ0RBQklHTW01RmpnRENaUjA0cU9NRmdSQkFmUGlCK3JtZ2JRa3l0a1c3CmdVR0YyL2FpSFllME9SckNtZEIzam9Vc0dZVFFvVitTaDBNS2Q5UWs2S2o2RWJ1ZHpKOVNsdm81SFVEcWRoLzE5SzdpYlJlR0YvaWgKQlMrYUFBR0FpcU9Pd3BnVEtvamF0VnRQTkpXRUc3cVdtcWFlMnBhbTJwZW5PaGNlRFN6UERZTjdmSE8zZkErdVUrc3pOOWFtcjY5TwpYWU5lVEEvTWp3Ky9HQnQ1T0RvNGZhLzM5cGlyYmE0NVo3SG1uTy95RDZHcUh5T1h6Z1lxei9ndi92ZlFKUUJRMG5xdHRpaG1rYkVoCldoZ0lBRVFHeWc0MGc0R2cvS0J1SUgwVVpEYVFDaUN1SHdnc0lwYTZ0S21QT09mTFVCSDhPYTBCOS9USzBQWnJjZGVMVHd2aXNvZC8KTEluRkx3VFE1OFVIbnhmbW9BL3pzMitlVDIwK3ZyODJkL3YxMUpXWDQwTlA3b3Z4enkvanZiZnU5MTE4M1Z5MDNDd3VDQmxxelFxMQo1WVh0QmRIMndnMFhYa2RiM0V0RUE5Q0YvVzQwRVAxRmxpU1VLT21JUU9KUjlWTngyQU9wdTN4dzhLTzZoeUlBVVFBZ1ZUL1pHNTVzCjgwNW5QdTlKRDl2QlFLSndlMG9JOUdQSEJJQzBrei9RUUhUaGoveXREb2dZbE1oRExKaytLb0FzSnowcWQ3aUI0bE9mQlBwUjNPTXgKc3RhUDVKNDB2eHRMQktDME5hZVdycC9VVlJkT2ZTejFBNm42T2ZlNkhmckxBQ29JZVBOOEhXQ2c5SlgydEdVYkdpalQ1OHdPdUhPQwpucHlnSzg2Z2lCc0FKQVpDTERTUVlOQ1duT1FoUlVMV2Q3WGtyMm1lK3A1QVArcXd2UmNjUTVmTm9ZY0VpWDdWazZCRHowdlZmaHl3CnJNcTQ3aHpmaTBNcWttd2t2a3pqRGxCR211Nm8xdUhjVVJjYVZQZlF5SWZUQitjOVBLSVB1Z2ZFUXlGOW9Pd2RHOUtINjBlYzY3NGgKeGo5cHNaWWtVRTZvL3VkZzNVK2h1aC9ESWxVL0hFQ1Nmc1FTbVBZamdNWS9DQ0N4K01VQVJQb3BFM2YrNnBZQXBOOW15OUJQNVlucAp3ai9XK21FQVVsZTdyRHRWUHdrWnhKYkFDRUJrSU5yWGdnQXFnU085ZG1jTURpQmNDQVA5WU9YRzJXR2dINGcyQnRFSjgzZ2hhYjVECkNDSVZxVEJLeEtDRXp5dWF3U3oxbzhhdG82N0FpcDNnc25zNmpYUUQwU0lYQXNoU1AzeXBDOTFUdE9YRWNPUkRDMTVZWVV5YzRRVWYKOHlNT09GU0RMWW9DTGFXQnh2SkEvZDJuanFkenJxWHBqdGV6M29VbmcydVBSbnl6STJ1UHIvcG5iMENCdVp0YXYvZ2UzRVFHTGMxYwpXWjY0TWo5KzlkSEV5T3o5Z2NreGIvKzB2ZlpKdzduMW12OGVxZjV2MGFvendjcHp2b3ZhYWZEVjV3SjF1Q1ZJN2J4ZlJDZkdpMXRrCmlJc0QxV2Y1bThCQXlDRDQ5MFFHUWZvRkVsVURKWmdBRlcySXhiSUxVVEg0dVJRVGN5QWdrYmliZmNnMnN0N3JXN3J4WnY3ZXA4WHgKTDR0VHZ5OU8vMnQ1RHZRRGZWbWFCUUI5V3B6N3VERDc3dVhNMFpQeDJPdzkzOVRORitQaTFIZjQ3NTBlN2JzKzBkMDUyMVc0MnBLNwozcElSYU1rTXRtWUhCWUR5NEh1cnpkaWtJUkFZQ0tyUVV0L1kwSTJFcGFUakFsbEhwWS9RejBHM2RLNjR0TlRGMFVOWjZjZkQ5WVAwCndhU2R6aHhBYUtEa1VGdFN3QVlsaHgwcGtmaGx6K1JUUURZOUdFcUlVa2xrWkpyMEpCcjhVQ3A2TEtPbHJ1OTJqOTUzdXVjN0FhUzUKaDVLWHZiQ2tKYWVJNlFmcDg3Y0IxQTNsK3p1emZlSUNpUm1yRGlodFZXZFFsdDhGQmlJRzVZU2MrWkVPQ2dHa2o0STJSWVViblJBKwpKZ01sWUZBUEp1MFE0bU5NaXIvMHBjblFKVGpTc0tyZ0NHUlZYRUlmOUNUb3FKZnR4NlF0T0hIUUtKZVZJeEpaZncyempqVHZVYzhyCkp2cW9leTlVOTBoakhyN094U1A2OEpFUGh2VFIyeFRoNGhja1R2WFM3bThLZ1g3T0FuMEN0YUtRTUJERTlZTUFNbDMxeDFqOG90a1AKQWlpdUg5cjlZK2hIQlJEK29KVGVMLzQ5QU1uS1NSelJSOUtQSllid0gwY2NOd3lrRFlIZTlLa0FLamRmRkpFdkEzSDlFSVkwQm9tZAowV0NnZ2kwYlZMaHR4KzFCaFh2dFJmdE92a05JVFFXUXlwMUVObEpOa3loOW92TWQ2S0hOWjJJalZGdzhlaVVISFZvNmVxUXM2TFByCktVNmdId2hIUHBKK0NxS2dIM3QreEFiSDZaeGdXNjZ2cVdDdHNYaXR0bXkxZW5iRytYcW1jM25HKzNLdWUvSHBVUER4U09qaGxmVW4KVjhOenQ2REl3MStnOE56dDBPd3Z3UWUzQWpNM0lmL2t6YVdKNjQ4bnJ6eWFISDQ0Mm4xM3pOa3oxWmEyV3ZjL1FyWC9XNno2eDFCVgprcS95VEtEcXgzQ05lT2VnMEFjNzQ3K0VWMGZVRENST2pBY0RpVnVsQnBvZ3lVQkNiTWJaWWZKYUdBTVFOMURCcGdCUVpjaFZGZkZjCjJ1d1UrdEdXcU9yOHJyblZrYmV2Ym45K01mcHBhZXJyOHN3ZkN6Ti9yTXo5dnF5dmYzMWNtQUVBZlZoNGVQSmlldS9SZUdqbTl2cjQKOVNmM2g4Y25CeWZ1OTQzZjlmWlB1V3RmdUlFK1dGYWdWWHhMUTdiY3FDTm5Rd3lCaWpiZHhWdWVrdTJPMHAzT3NsMHZwRy92Mit2aQpERkl4eEpNT0JNUWR5VDFZMlg2WHhTNGZYRUpTNkVQTFhzYWFseDdvSjJmVExkRW5LK2JHT0hwNDZlRjJLQzFrU3dxMm5nKzB3RWV4CktMWVIxdy9lKzFuc2c5UWlBRmt5U0UxRmowcWZ2TTFPbGpWOXBDMCsyVkVQWnJYSXBhTEhUYW1MWENwNlVuMHV5b28rT1BKcDF4TDAKU1ZseGFwbmNFNmZQa3ZQOFlydEVuN1B6RHV3dkE2alFMd0NrNVRVWTVBUURwYTg1MDlmZ284T1FVRHZ1RGNvSnUzTWpIaWd2MnBFZgo2NFFLTnJ3UTBvZVNBR1Jsb0c2TU13aUNseSs5b0htSlNSVGZZOEdqSytqenV5ZEMwcFZxdi9PeS9SYlJKWFNOL2NqcTVYZjU5WFk1CmRQaWtSNTN4b0h2NHd0YjNUSG9rNnhCMytHTjBEMDE5VlAxa2JiZGxiYlRoN0FmSFAzaHpVM0ZmZHh6OGFQcUJCM2lycjUvRFl1OHoKbi8yZ2ZnaEEwc3FYK1B1djNmT0w5SVBYZlJiWC90RitQQlZyRjhBd25mcHVmcHRJMDNMU0R3S0luZjlscFI5aEduazdzMzdsV1lVKwovdzhEU0N5RXNiaCsrSEtZZG9KWVo4bWV1M0M3dldBTEdPVFFOZ2E1Q25ZZFpDQmtFSllJUUlrd1pBa2c4YnlpR1lMT2Qxb0h1YVBTCmh3UElRQTlQWE1OUXFtalBJN2tIS3pJV3ZEaUF4TTZlVFhGVEMwUVBCZm9SOUltMjVVYmFzb050MlhEQVhtL01YYTdMWDZyS1g3ZzQKTWRYK2FzYTc5S0JuZnE1djZjbFE1UEVWeVAvc2V2VFJiUXdCaEFiU3VoT2N2TFV5ZWYzNTlOVm5VMWVlMyt1ZnZldTlmYzlaUHQrWQo1Sy8vMzZQVlB3Z0FWWjBMWGdZQVFTcDlNTndpRFU2Q3J4VG5oUVZyZ1VFUUFpZ3JxQU9JREpRWDFwZkRKQWFWUjF5WUpDRlFDREFJCkFIUXg0cjZ3MVNrdWRSMXFCd3dOclBlc0w5LzQrbndVK3J3OC9mdnEzQitMRDBBLzJpYm91YytMRHo0dXpJSiszcitlTzNveHMvUG8Kdm4vNjF0TDlhNC9HaGtZbmgrN2M3NzB4MW1HYmMrUXZ0U1dGVzFJQ1lna3N5dy8va20wNUJvQUtZazR3a01RZ2NXODF3MEFTZzFUNgpjQUR4TE4yRGxlNTVMZlZEQUxLYytoZ2pIejNRVC9hR1M2VlBadFFGWlVTY1BIUVBsQkVDL1RoU2cvYVVRR3V5dnlVNUpINFMwZzlBClNUOVE3b1lia3lTVU9JNGI2M0kzT2xqVzlJbUxKK0kyOVYzb2NiRytqWjZVZFNmRjBjTkxXWEZvQ2Zva0w3ZHJXYm1IZXExM2J0NkIKblgxbGgvNHlnSW9DSXBvRFFia0JVWmJmazdIdVNsdTFwNjdZY0NBRUJoS2JvME1pWkJBWWlNS04waGdmQXZIbE1QTU9vUzZNTTBoawp2SnA1OUNxM2dsSDhKb2lFb1l2YTlWY3dmZzlGTGYza0ZQWFN0SDhwRTI0WWdOVG45UXV1c0xrT0d1aVVNWThFSUpVK3FudjRqbVkrCjZVazA5ZUhMWHNJOVJyamFoY3RlT1BVQitzUUhQNForOEZaZld2THNCNk5kejlMc1I5NERxT2tIQVlRL3FpUUFxWXRmZkFMMHR3RVUKdi9TK1FoOFZRSWt3cEtQbmJ5MkJpUnZDYXdZU0MyRkg0blN3VXdERVIwRzBLd2dBSkRDMDY4Q0FRU2doR2dpcEVqcGxNcVNTQ0ZNMQpnNTFpSFI1ZFdTcmg4NFo0aXZjOTVnUjNDbmZkOEJHRHh4QkhEMVlJMW1Fakg2SVBWTERob0pFUEJYVElEYlZtYTZxQUEzYUdyemw5CnJUNWp1U1p6NFdMbTYvTCt1WmJaaDUzTHM3M0xzLzNyajRjamo2L0ZIbDhQUDd1NStlUXV0UEg0VHV6UjdkakR1OUc1TzFodzdsNTQKK2c2dzROWHNqUmN6MStaSGg1L2Y2WjIrMSsxODJGcTQxUFRQY04zL0NGZmpYT2VuOE9WL1JnQkExUW5TNWtDQnFyUEJ5K2UwODhLUQpRUWdnYVE3RWQwYlQ1bWc4UWF3czdJU0lRVlN4QWFBTFVYZnBka2R4MUhuSjMyNFBkejFidWJLemNPZVA1Mk4vUEI4WGR6eGRmd2dHCituMWg5cmRGMGVlRk9YSG5yL25aTi9NUGRwOU94bWJ2TFUzZmVIbi95dXpZOE5qOXdldmpQVjBQM0pkZXRxWDdtNU9DemZBeDA5Y00KQU1vTXRtWkdiTmt4UjM1VUFBampCb0p3Rk1RSFF1bzBpTWZmQ1ovaUhxeGt0MU1lL0JoN2FGVDZLQ09mZUFBZ2NvOUtIMEtQTnZKeAo2QVhzcVg1YnNyOU42TWZmbEJwcVNvVjNnN0hXektnZEU2ZkJhdWtHaXJrd2t0QzM0cml4S0NmbU1XYyttY3VnRDRrbk0rd3laU1VlCkJUMmlOTDlUeTBJOEVucXc1TFYyeUx6TEoxN3lzbDBMNlNOQzlDUXZpcElXMnJIenJ4MFl1WWZvYythbERmckxBQ3IwOTRvaGtLOHIKM3k4cUNIakZLQ2pVbFJQc3pBNTBaUHJjUUI4YUJXV3MyelA4anN4QWUxYlFpUXlpOGlJaTNDaU5CdUxMWVlRaE5oUHlRaEtEUk1hcgpHYU5YZWNsQkYxUjYyQzFGT3lVaGZ1cHMvT0lyUmdhSlRPZml4ay9XTmE2Vi9KMnBsNUpEQTNIMDhGL2x3eDdMUlM1eFp5Z1dSNDg2CjhqbkZQWnc3RUg5TTZPSDB3ZXY2NE1udDhDQXQxcElhYlU0T04rTFVCK2dENGFZZkd2d1FnTVNpbUFZZ1NUK3BCb0FrL1VCNC9pZmQKOUxTQWJ2dGxqSDlLbVg3S3hWM2Y0L0U5QWFRZmlQU0RBRkwxSXdISWZQc2hlZnN6cHRKSEFwQk1INjN2M3dTTkFOSjNBaWtBSXZSdwovZUR6eG9wWUJ6S0lBSlMvWXljSjBVQ0lSeVN5dEpGNmpyMyt2Qmt1bEdvZFNUWjBZUVVzNGZObTl4VHR1WTJFZUFwMlhCRFNCeDdrCmJ6c2w5MEFGQUIwbUhpdy9ac2R3M3FPdGRyVmhvQWRnUk1aNmZjWjZRL3A2VStwNlkrcGFYY3B5ZGVyU3hkVEY4a3N2NjI0OWN3R0EKQWpNRGdZZFhJbyt1eHg3ZDJuaDZlL3ZaNk5iVGU5am00MUZvNDlFOWtKRC84V2hrOWw1bzV2YkNuRERRNHZqVlYvZUdIbzRPL2pKdQpxMzNSL0hPd0hnQ0UxL3NCQU1GanhUMUdZZkVGUDRkRVo0TTFZQ0JrVUpxdkljUGZpSWxSa0Y4djBlYm8wbEE3R2tpcUpPWVNsejBNCk9ZRSs0bEpiRVdlVHp6MFU3Tjk3ZGZ2azliM2ZYby8vYTM3cTYrdnBUMnV6WDlZZS9UNy9nQUQwWVg1R0xINDltOXA4T0JhYy91WEYKMU5XSDQ4TXpveVBqbzBNamt6Mk56NTM1YTIwcGtTYXgrT1VYMjRDeXRIM1FxWkcyTFBHZEY5dUFvUHdOSjFTd0NmL1hRSzRlQ0JsRQpBeUVKUTJyUzRZREVvOUlITTZISDJFQWpWcEhNN3BGR1BvcCtuSncrMHVCSDBrOXEwQzRHUHo1YjBsckwrZFhtOCt0TkNLQzBjQlA4Ck9FMFB0MkZBUXdpK09WQnUxSkVWYWNleW8wNGV3VWhKOG8ycDdLaGJLY0dreDZCUFJzaUo2WjkrcjN2MHZ0TTlGRWVQc2RTRlV4OGQKUUVsTERpTnQ4R05CSDd0V25ENmtuNzhESU9QVExtTXRUQUFJRW5lTUQza2hlSkRsZDRGK1VsZHN5VXV0YWV1MmRKOWdFQmdJR2FUUApoRUxPM0xDTEd3alBuRThzSVFFZzFVQjBDV0FwQkJERkRHUTZZVVNOcTBpRGthbjRWVW1VYzFzd2xUNTY3Rkp5dUY2QXoxanJ4N2pTCmJvVnhBUlVFa09vZXZFbDRtWElPbDBvZmFhbUwwNGN2ZFVsclhrUWYwZys0SjMyam1VTDluQXZVL2V5ditjbFhEUi9SUGRwcWx6NzEKUVFPQmtKS2o0Z2FvQkNEOXFqL3dNZHBDdTU3VjhROUU0NTlFQUtMTEh2NGxBR21YLzdFQWtOalIvSjhBRUw4cG95VjljRXUrMkp2LwozYWZCMHoweElBbEFOUHZoMHlCSlFtQWdETGlEK3NuYnRxR0JFRUI4SU1STGhLR0V6ek80OEw0SFBmelNtdEtuVkFMOXhNVURvWUh3ClUzSVAwUWZLWitLQjhxSTJLRGNpRnJrUVBUZ3ZnVUFNb0lkTVgyUEdhbTNhYWwzS1NuM3lhdjI1MVpxazFlcmsxY3FVbFF1WlMxVUQKTHgxcmN6M1I2Y0h3SEFEb1p1elI3YzBuZDNlZWp1NCtHek1hMzM0eXRnVU1lblRQOTNROE9nY0d1cnZ5OFBicjJadExFOWNXN2w5OQpNbjUxOXBiRDlyZzF5Vi8vM3lQVllxZ1QxQUgwYzZqR01nUVFHZ2dBUkFaS1hhOEhBNlVid2I4NXhxZEIzRUFBSUlvRENENFY5emdMCnRoZkduUEJYcnpUcXNxMTc3Z1NIdnp5OSsrN1Z2WThyay8reCtPRHIvTlNIdFFjZjF4LzlPZi9nNjJ0aElBRFErMWNQRHA5UGJqOGUKRHorNDQ1dTQrWFJ5WkhwaWFQcmU4TlRkb2FHWjNzb0ZsK0RPUmxOZW9LMWd2UlhLOUl0TFlLUkV4WkcrSUdCREFLR0JBRUJvSUtoNAp5NE5KRWtxWVFSekpPdW96WXZ5ekU5OUVUTHRuOUNVa3MzdUlPMnpOeThVQlJQU1JaajhFSU5KUFNzQUdKYTIxbmx0cE9ydmNlRzZsCkFRR1VFbXhJRHRTbkJsc2crRjZsaDFvek5BWmxoMjA1RVh0bTJNRkw1Q0dXU2h5NXJJaUxrZ2M4aG5nUVFLUWZNbEFpL1VqdTBlalQKcm1XdEg4azlVTktxQStMbzRRdGVTVXMyTGRLUEE1ZTZFdWhIZDQra241OWZ0UDBqZDlXTDRUMVF1WHUwdkJCd1I2c1R3c0VQSC85ZwpoY0V1Q0RjRzRjYzhYd2VVdHRvR3BhL1pjQnBrTXBDK1BjaXRCNHlOdE9kRlBWQStZQWhJdE9rcDNPcUFpclk3c2VJZEwxYXkyNFVWCjczdWw4QUNwUG05Z1NONG15UytTWm1Vai9Yd1R2dkdpWE94Rk5XMXVPQ1VWU2FhVXhTeWV5aDJPSHQ0cGkxeldTMTM3N1lVSFRpbDQKTW4vUGdlWHQycUdjN2Jic3JkYXN6UmI0S0I1b3kxNlpXelp4ZnJ1MjJnWHZXWDhLMVAzb3I4WGdzYmpJb1hhdFo3elpPNjE1b1h1UwpJNjBRUCtmTE5PdzEzK3VVVG5ySGpjL3djd3F2KzB3L3kvaWJQRnp4bEs2U29GejVVSjYrSkRyZG5TUEdoQnZqa3VKUzZ2V2w0bGRZCllDY2IwdlVQZFFDWnUzUk11L1hqQzJINmxYNk94U2lvOUxpcitFUWtka01maWR1WTh6VXZrM3UwbTV6VGFpL2Q4RnpjS1A1UTNFR3MKY050Tys2T0xkdlFWTWJXQ0hXZmhyZ3Uwd2RlZUFCektDcFRSa2RzeUZUcVkvTnZOY2VLWXVTT3VQc1dqUlM0T0hTNmVQSUFPY0FmbwpnekVBb1lGQVB6bGhzVmNHM1FOYzBPbXozZ0NscnRWQmFjQ0wxVG9vZGFVMlpia21kYkU2ZGVseXhhdjYrMC9ja1lkRDYwOUgvSSt1CjdEeTh1Zm55enM3VHU3dlA3dTFEVDhmMm40N3ZQaDdiZlhoL1owNW5FQUFvTkhQYlAzMXJkZXJHMHYxckM2Tlhwa1lIeCs1NUc1NjIKL1Jpcy9tZmtrcmc1UnFqcVovL2xjeUhoSWVoTVFGL3dFandLVlo4SlZLTjdlUEJra3I4T1N2YlZwUmpYU01TeWdzMllKWVA0RFRTdwp3azF2QVJnbzZMd2NjeGRzT0lvajlsdHIvY2N2Zi9rNFAvNTVZZkxyOHN6dksyTHJEL1Y1NmZIbmhVY2Y1K2Zldlp3NWZDckdQNEdaClg1WW5yeitjSEo0Y3Z6STZldVhhUkYvejgvYk1VRk55cERuUFo4c08ycUdzZ0EzQ3h6a2hCNVFiRlVrR2dvcTBLekNwREtJamdoVDkKbEpDaWE2aEttZEJqRlMwcTRXUUZySVA2d1RUNnRFUHd3dzB3aDVmMkVmb0pPZE9EN1drQlI2cmZEcVVGUkdMTmE3MzUvS3BBejgrTAp0ZENacFRycTdISTlCRjhBcGZoYVV2MnQ2VUZiUmtpblQxYklEbVdISFJRY05PSFFTUktTaWg5ZUkrNmNzSXZLRERzdHl3cTJXeVlNCkZOUzI5dnJGNXBiTVFIdHEySmtDcWt2QW5SUy9YYXNkUy9ZNXNjdzFjUlhsOURWSDhwbzlhZDErZHQxMmZzMld0R3BMWGJOREthczIKT1cydmp6SHZpWGQrb1RWcHNRMUtYcklsTHpxU0Z1eFlNbng4YlR2L3luN3VwZmg0L3BYajdBdmJtZWR0MU0vUFduOTYyZ0w5K0tRWgorcThFRVArVURKUVRjR2I2SEFBZ1lGRHFTbXZxV2h2T2hIQmRUUE9Ray82dndQOUlDVUFVU29nd1JDOTBmUjVnbGFXQmFJT2tLcUVFCkpJcWZiMkk2QlZmWnprbmlVWitzT09Yc1h3VTNscW5pd1VwUE9yQy9wQjhFRUkramg4cmRzU0dBMEVER05aM0ZtcGUrMXljZzlHTUoKSU5JUDMvU2pBa2hjNnZDdkFJai9MQU1BU2ZvNUJVREcxSWRkRTBIYmdQei9hd0FKM0JqaUlRbnBjeUFHSUh5c1h4THd3STNoVGNRRQpmVFFKNVc2MTVXM2JhRytRcnA5ZEI1bmpkSkhFTzNSWkpnMXlLUG0zbTFPaEl3VSt3L2c2bDZvZkFsRGNRRmI2Z1N6MWs3Nm11NGYwCkE2VXQxWWlXcS9NWDY0YWZ0NjgvSGd3OXVSSitkSFg3MGMyTkY3ZEJQM3ZQUncrZ1ovY1BuazJBZ2ZZZlQrdzkwa2RCRzlvUUtQaEEKR0dobDRzYmkyTlhac2VIN296M3REMjJaYTNVL2l0SE9KVEhnQ1ZZVGdIamFrenA2em9WcUlmb1VBUVFoZ01oQUhFQm9JUGd2RmZmaApZcmZPNEFZU00vaVFzeUlrN2lNR0FLb051MlpXaDkrL3VQdnA5Y1NYUlhIeUY3b0hMd0Q5ZFdudTArS2pqd3NQUDh6UHZuMytZTy9KClJIVHUzdHIwemNYeGEzUGpnOU5qSTNkSGgzc2Y5TlFzdE1OM09DUGFtaE1RNGlFRGNRRGxSTVJDRHpjUU1nZ0JwQnFJM2h0TDRac2wKTlpVK1dDTHVXT29IQWNRRCttUkVIT0tjZG0wcFgveGtDOXZUUXJiMG9BTURBd0Y5VW54dHlldXQ1MWViZ1RoZ0hkU1BCQ0F5RUFSQwpBaWNsclRVaGhxQTBYMHU2dnpVemFLUFFROUpraUlaRGNIakZGTkJZbHhsd1dKWVNhb2ZTZ3UycGdEbWo1Q0I4ZFBKSVBIQ0l4K0J3Cm43YnVRTitJZk8zMGFiSlJraGs5eVN0dDhRenhHQ01mUFFBUWh1NDVEK2g1YlRzM2J6OC8zd2IwT2Z1aXpVam9COUNEY2ZyODhMZ0oKa2dHa0dFZ0F5RERROXdLSVQ0UHlnaDI1QVE4dWlvSDd4QzVwL0Vib0lvWVhoL1o5QjN0cUl6akJvSWhiWjlDR0c4cUx1U0I4TEdFSQpvbGN3N28zRmU0T2Z5aUQ1VkJGRWorV1RXcWFUVGVJZVV2WjQ4cVRuSlJXWlVreGpHVUZIcXVUWWc1Mnl6cVZ1OU1tem9nOXdSNnVWCnl0bHVnYkszbXJNMm05STNtdE5pVFNtUnBpVEFUYkR1VEtEMmpMOE9RdlJnK2owdXRQSFArVkFqbGhSdXdvd2JuYlpCL0pJL1NCL1UKanlXQTZQL3Y5d09JTGhST0FNS2JYWEFBb1VXczlmUC9BUURSV3BnRW9LSmpiNUhZVHlOR2xRUWcvV3VNVThBSVFEd0VVT20rcCt5ZwpvL3l3azdaSTQrYm9uQTFiN3FZOWI4dVJ2eTJtUG5GWVdFRkVsUW9sd1RxZWNjc1VLZFUwa213dytMZkNwT2ZwVnkzUlE1Ris0bW5MClhyVHlCUWZtN0ZDTFNQTUI2UWZvdy9XRDlFbGZOdlN6VkpPK1VwTzhVdDB5My9yOFNXL3M0WlhOdVd1YmoyL0dYdDdlZjNsdi84WFkKMGN2N1J5OG1vTVBuazRkUEp3NmVUTzQ5dWIvN2VHenIwZjJOUjJPZ0JEQ1FiMUlZNk1uWWxhbXh2dUdwOXFxWERUK0hhdjRaRWRENQpVUURJNUJ0SlBQalk5RXlnRHVKRElDamRWMCs3Z3ZqbWFOb1dyWTZDQ3FQdThwQzdMT3pNMmJBRGdMd0I3OXJTOWEvUFIwRS92eTFOCmszN0UvYiswM1Q4QW9GOWZ6NzE3TVl2akgvanZXcHE0L21Kc1pPWmUvOVM5Z2V2amZiWm4zbktmQzc3aE9aRzI3TENPSGg0QkNKTVkKaEtlRzRjNW96aUNWUGtaaTU1QWF2cUZTazZDamh1NmhwU1ZPSDlJUGlBZCttbVZFYkpEWXdSTzBwUVhhTUVhZlJoRFBUd3MxbUNXQQpJUHBWaVVSSkt3MHBhMDJwNjgxUW11R2hqSUQ0Wi9FeVFuWk1wUXhHTXBQSzhOc3Qwd0FYcHc4Y3U4V1N6am9RcDUwSHVERnF3MUxYClJDbXJyWWliODM3SE9aLzkvSnA0REJoSVg3SERSL0ZMeTNaS0RIV01hTFJENmRaNTNTSUM3bWlkZmRWNjlwWHR6RXVCbmpQUHdUb3QKV2pwNmdEc3FmZjc1cUJHS0F5aUJnWFFBYVFiNmF3RENaL0NHcWZtaHpyeHdaMjZvSXp2Z3p2UTU0VHVWc3U0UStXd0dneHdvVU1BcAp6b1J3VVl4U0dZVFJLNWdNaE81UkpZUVlvcE5FSUM0ZTZkUDQ4elNyVDd5bkFiTThzWVVZSklFcG5tSWF5d2c2VXJURUlBMTdhTklqCjdmS2hVN3BBUEh5MUMvVWo1ajI3clZrN0xWRG1kblBHVmxQNlppT1V0dEdRRW1rUU81MkRZcHN6Nk9kbm56N3lJUUFSZlRpQUpQMFEKZ1BoSjc2cCtPSUE0Y01rOXVINnZybitKNngxWTZRY0JSQk1nWEFMakFKTDE4LzgyZ09MNnNRSlFvWGhwQ1FEaHI2cnJYN1FFWm1FZwpZek1RN296R3F5WkN5QWd3RUVnb0VZWW8xU3R4dUtqMFFXZnZPaTFUL3dUOXp6Rzdod05JZlZKa1dFY2QrV0M1WUIyZTVoNU9IeHlRCjBLWVphZkNUc1ZJSDdvRlNsbXN3ZlE2MFh2ZURyN3BvcGZIdUMyL2s0Y2oydyt1eHB6ZkNMMzRSQUhwNUR3QjAvR3BjTTlEVTBUTmgKSUFDUVpxQnhORkJrOW01Z1doaG8vdjcxMmZIQisyT2V6cm0yalBYNm55SzE1d0xpTkhoT0hJazcxazlxQUVJREFZRElRSHdhbEJsbwp6QTQwNGQzajZVSkJuRUZhWXZ3REVrcmZhTHNRYmg5Ykd6eWN2L3Z2WitMS2g0QWVCaUQ5L0M4eC9ubjE4UGo1akQ3K21icjFhdnpxCjA5R2g2YnQ5RS9kNit4OTRxNVk4OEFOY1hPNDU3TWdJdDRGMUxBRWtiS1J0ZGlFRFlUZ0tva1V4M0JqME44cURueTFXcWRhUjB0MWoKTEMyaGUwZy9CQ0Rjc29QQlk0MCtMWUFWY0k5R24vbzRmWmFxUlFrQVJNTWg5VmR4TWtUUmlJaFd6WERoRENQeEtLQ3hUcVVQbHJOcQp6MTZ6Wi9yZ3p4SDZFZnQ2MTJ5WksyMTR3aE1GbXNHU2ZLM24xMXRFYTYxRzJtcVh0dXoxODJwcjBuSnJ4ckl0YzhtV3Z0UUdqK1BpCjBSYTJLT1NPTnQzUnJZT2RlZFYwNW1VTHVBYytRaisvYVAzcGVRdGswRWR3eDBCUHE1YWdEK2tuRHFDY2xVNFZRRXhDY1FEbHIzZUkKRWdBSXd3MUFRSitpVURjYUtOOEFVRUhZQ3lHRGNvS2UrSzRvYlJSRTY2UHd2WWIvV3pxREl1MFVBa2hsRUw1OFZRUHhtWkE1c1Y4UwprekRFUDQwbmJWa3diOTZVVkdTWlNpVlRpbWtTRVVmZVZHRmVZa2cwNmJIYzFKeGppRWRhN2NyUnQvam9PNTIxa1EvU3B4N29BejlWCnhVbGVBYkh5WmR6VHRCRWtkTVl2bmp3WGpFOTlFdEFINy9SdWcvZ2xmNGcrL0laZit2akhQTjRqL1hBQTBUbXVDS0Q0VGVMTTYxOTgKRDVDKzYxbXppT3dlNDJZWEp2UXdES24wK2E4RmtIUzFLa2czelpIWWtrOEEwclpDQ3dCVnZ0RU54SGRBaTJlTWxTODVZMDgwNmdlbgpRUkF1YjNFRElZTlFRb2loUkI3aXFjVDVSaXBsRW9UL0dwYUpmMG56Rmg5Q0Q5ZFBEbkJISzF0YjdlTDBvVlBIYWMyTDlJUFFvWVIrClZtdEZhM1ZRVXFEbWZ3U3F6L3RxUFF1T3hjZjkydyt2Q2dDOXZMWDM0cTRHb0ZGaG9KZVR3a0RQSnFHREorUDdqOEZBRTJpZzJNUFIKME15ZHdOUXZxL2R2UHBzWWVYSzMrOVpFZStWQ1MzS2dQamxZZXdxQXFQUGhPb2daU1B3bGhiK3E4QmNXL2hBMEVHZVFOZzNTRGFReApTT3dIb3ZQazZkeTNnb0RZSDYwQnNhWGQ3MWxjdlByNXhmMy9lRGI1WlVIYzlSM284L3Z5dzY5TGN6cUFRRDhMajkrK21qdDZOcjM1CjhINXc1czdpMUkzbjkwY2VqZzVQM08zL1piekgrY3hURkhKbWJqc0ZnSUwyckpBQWtHUWdEaUF5RUVtSWI0NG1Ca0VxWlRENkFxbGMKK0FsamxXb2RLZDA5eWtvVHBVOWN0R1VwTVpMeHQ2YUJSZGFha2xZYXRJa09wbzk4Z0Q1bmxtdEVDbmNzMGNOaGhBWktSQ0x3RUpJSQpvMG1NVktyZlpwbjZsUmh3SjMxTjdGMUoxVGIzSlB0c3lldHRFSUFHUTk5UTUxWmJXRzFVeG9JWThKeFpianUvMkpiKzJwWTFiMHViCmI2UDFMRW9mOEx3V3hPRWhkMFF2bXZXZXQrTEk1NmVuWXN4RHN4K3pmdURUTm9nKy9lRnhDeVlBZEtxQk9yOGZRSGhaSUdrQ2hPVUYKdlhpNUlQRkFPMWtzTStEQ012eE9RQ1V0R2FiN2JFaE80VlpqZ1JOS05BM0NseTh4aUFZR2ZESmtMbjZpYkNJTUZSa1hFUkhSWmdXegpoQkk5cjZhU3lKUWltOU9oRTk5VVlkNi9uR2pTbzE3RkJ3UHJHR3RlcG8wK2VFV2YxR2h6U2tTY2paa1Vhb0NmcEpCWTh3clVvbjZNCk1VK1R5RW8vVUxJNG1SUDgxSXlsYXVlNmkwQS9HL29aNzNqT0Z3SUkzVVBSaFg5SXJvQmFBaENkMFVvQW9tdCtXT3FIQXloK1ZSNHIKQUgzenJDNlZQdiszQW9nV3VjVDg1cmk3N0tTYkF3aCs5UlFBV1JvSUY4SjRlS2NJV2dYRzg2Znl0dHB6TnV6Wk1abEIzMHoyalZIZQpqcmhubkpvS25XKzZCLzk5cE9RVkxtWHdRL1RKQXZIZ2FoZWpENTA2YnJuZFI3Z0gwYk5hbTd4YW03UmVCNTMzMVNYNTY4VUpXY0hxCkh3STFGYXN0VTgrN3hTclkwNXZSRndDZ093aWc0MWZqb3BlVHh5OG1qcDlQSFl1RnNIRnRMV3hpNTlIOWpiblI4SU83d2VuYnZ2RmYKWGs5Y2V6VTZNRFBXNlg1c0sxaHBQQzhBZFBsY3FQNmNkZ1lsaGM5dy9YQURuZEYvVmZ5ZDVRYXluQU5wRElydkNpSUdRVVdCVnRCUApacVRsVXNCMmU2Vm5kLzdXSHk4bi9udzVaUUJvRGtQOWZGMTg5UDcxb3pjdlovZWZUTVZtUjllbmY1bWZ1UGI0L3BVSG8wTjM3dzBNCnpIYlZMWUZkN0ZsYnp2eW9xeURVbmgxc3l3MjNTd2FTQUtRYVNOMGJCS21Vd2VnTHBPaUtnbEtKeEJNZitURGx4QmVZMkpPNDlwU3QKN1hsTlhXbE5XbXc2dTFCLzVuV2RpSzEyb1g2d254WXZKd0xRS1hFTVNjOGdobWovRUpTMDNHUlo4bnFyWlNtckxaYWQ4YldlWFc5TgpXb012YVAyL3FMc1BzTGl1TTIvZ285NlJCS2k2SnRuTkpvN2pJb2xlaFVDb0k0VG8wNGZlZXdjaHloU20wc3MwZW05cW9JYUtaVm1XCmszaVRiRFp4bWhPbk9KdXNOeTdxdFB1OTU1Nlp5Mlh1Z0dYSFNiNDh6Ly9odVhOQmhNaGk1amZ2ZWM5N1RPMjg3ZWphc3owS3g2Tk4KUk05K3JSRGkxeUx3YXhGQmZKdUZ2azFSa0dNMWduMU5BaGVEME1rb2ROTUx2Vm9FN3MxOFp4M2ZGUmhram90V1NJWFd6V05hM2pLSgpwNG1IWXE3MzBFcyt0STRmazNpd2Zpd01oR01DRUdVZ0pvQm9Cbm9xQUZFR3N2Z1U2TWV2SndrekNBOE5JaytTUjluWEU0OGF5N3RqCnlBb2IwZzh3Q0lWYzNjU21wamU5NDc1M0hHcENGRjFDRnFHdjlXSUFVV0ZLQ0w4QVVQRWZtOHVCOFFRcXBnNEdSbE1uTTB3U3pRdEQKTm90RGg3NWppeDZMU28vRkNCODZmZkJPTGx6dm9UWjU3UjNtZVE5eHZRWTU3b05DdHdHQmF6L2ZwWS9uM011ZEM2MzJnL1hqUE1CMwpHb0F2NHpEMVl3R2dPZjBNQ1VBL0ZJRHdqbmQ2NFdkeEFGSDZlWG9BMFVmK1dGU0FzRTZzNnVmL0V3Q1o5bkROQjlDUks2a0FJSFE0Ci9NVVVlaE0wUFloQmpQWm5mQTNXWWVybjJJVjVmVy80RGNDQnMvQUxOYzhjRnBVaDZ6a2I4NFhDOU0xQ3lySDRuNlorR0J3bWZYQ28KcWcvV0R3YVFqN2tqR05PSDJqUU9zYW9maUx1WlB1QWVGL0lYQWY4dXZENFU3dEVic2FjdndyMlhrMk5JNnEzTFAxTmZQTko4bWdSUQpCUWtneVJWZDFSV3Q0a3FMSEhLMVNYRUZyWVVwd0VEbjYyU2pOWkloTlJxTjJGdFYyaVVyMGNrSzZzWHBwWXE0VUhqNzI4OTJJQUZFCjF3L05RUFAwUXhrSUQ1N0FYd2J2WGp6NlRQSHNRd2RsUUx4NjBMa1orUHhVZElTcWVVb1FuVUVRQUpEbnNIRHZrQ0N1TTY3VmtIZFQKSzc2cmxRTjNjTXZ6MjIwMUVIaDRXMThOQVFOZDA5VmNhbEtmcTVIMXE4cmI1Q1ZOVXRUV0xhL01QaVhPaW10TUR1aU44aHNWQXFrQgpRQWNHNGc3MUl3QlpHSWdKSUxxQjhDQWNQQkp3YmlvZ2V0cVBzUm9tZlhDbzcyQ1pSZDFEcDQ5Rmt3MXU5UEhzRVhwMEM5eTcrRjV0Ck1SN0dLRmVkd0xHRjdkQWM2YUNOY05Lem5RMm0zVjRvWnZwQTloaE9XZ1hRUEMxWmZLbzF3ckV0MHFtZERSK3B3RU9yQmtJeG1PSmkKNU14TE84OXFtRlRDY1lCUEdYbCtMYnlqRGJ5VGRmemdXbjVJblNDNFhoQldLOElKclJIU3cxVkVRemp5S0hhVktGSVdGUzRSUXNMRQpndkR5eUVNcWpsc0wzOEVvY05ZTDNKcDRFQ2N0Yng1NldnUnptZStlZVFDaTZZY3ErVkFHb2x2SG9UN2F3ajA0Y3hXZ3J4eEF6RHRvCk9hdy9sU29GbVpPSTQ5Y2I1NHUzMlBXaFJuVFFENnE4bVp1OElIajdIMzBISUpZUS9SZURMdnFGUEVSTkNsa28rQXVvN0w4d0x4U0cKTEhzNTU2T0hmaDlEaHdralV4aXlXU2pNdmdwVGR3WHU0L2tpK3FFQVJPa0g2T1BSSCtuZUYrSFNKNEE0OS9LZGVuZzRjQTNCMERFdgpmbkZSN1ljRUVKTStGSUNZNVIrdllTRUdFSDNraittUVAzTE55M0w5YTM1ak94TkFGdnBaQkVBV1BVQVlRTWd1L3lJQVFsaTVsTW9FCkVGWHlvVGRCSDcrWVRBR0lzZzY5Q0VRL0lZdXFBRkZGSUhvcEZQZmNBRGg4aDBWVUxQQXhMK1RKdUU4ZkpuU3MrZ2F5MFA4MHZtOVIKOHNIWEIwWmlMQUNFOWJNWGozVm02QWNEeUdMTkM4ZWxJOXkxTTRMU0Q3d0hjQUNnOUtQREszeTcwZHp6VndZalkxdmpPK3Z6emplVQpuRUU5UUJYajJrcFNQMUlNb0t0a3JyV29KcHFWVnhxVVZCRm9XQ05HQnFvNjNTYzlwWk1YTmtneUZKSUVYcE1BRGRQcW53T1EyeUFYClFnR0lRby9iSUJ0Q1BhUkdybU1BVVFieTZtZlREV1FCSUthQmp2U0pYTThJQUVBNUhVbm5kTVYzVzZSdjZSUzMwSmxmaUQ1MzIyc1IKZ0F3MW9KODNkWWhCVjFxcXh4dVVJOVdTWHNWcG82eWtVVktncXN5cHFzZ3FFR2Z3V2hMUVFTSm5CQWVIb3RFR2w4RzRZd1BSWHc1QQoxZ3dVYlRYVWtwbEZMTjFqam9WN0xGYTdMUFJEQVlqU0Q5N1dEbkZ1RURnMzhod2F1UTZOQUNDT280N2piT0M1R0xsVTZ3K21ENWxnCkNCTkE5T1pvS2hSdUtBQlJjZTdnb05EUnd3QVFuVDZ1clZ5SVV5dkhhaXlkWkk2N2pyTy9rWE5Td3hGSk9jbmxuUFF5YmtZNUwwM00Kenk0WFdpU3JUQURKS0l1RnBKVkdwNVNJa29xRUNRWDgrSHhlWEI2WFh4QWFJSTMwYU9MdE5nb2M5SHpYWmg3RVdjZWZoeDR5OUJXdQplZlF4MVh2NEVFby9WS2grWnd3Z0lNNmV1aWc2Z0tqRkw5TVNtRzlia2dXQWNQc3pSUi96SG5oVFA1Qi9kd3JkUUdZSnpVMUV0QWlJCngyb28rbGpFRnlURXlMNmVXRk9CcmhzdFhucjFSbE5OMDNNekVvWmljUzh0SHFOSC95V2hZd2kvUC9BL0Uwc1JCNjRocHZlampCTDkKL2d2eEVQK3hCQWkreGcvblZmak4zY1FRSmxDb0hMcEFIczE5RG4yRWgzNWpNZnZHWSthNlBzMW13c0R5R1l1R3o4TFhRSHd2b0dzZgp5S1ZZLy9Gb0t2dkhvcWpnb1hhNG04ZVhiT0x4SWNmMitKOFZRdmFmZ1NjZ0Vma21ETDFnN0JzeWpSOEVuYmlCVjNwNUxqMWNIS2NlCnpyekNqem53TlZUYyt0QWtleHpYZmxQY0JnUVF2TXNkUWgxdWFoRzZWdWxybDhBZCtzNHZxcVBMYnp6ZGZ5ejl3Qmc2a2VmSUdIcmwKRGh4UERpSmZ6Z1BRMGQvb0dPZUFpOWtCbDNNQ0x1VkNxTU8vSUJRc2tIaG9vVzk5RDUvSXhxTU84Y3hEMmtPVGg5ZzNDaUQ0R2ptSgpaaU5LUlhDTnY0WU9LYmhBMzU5eEdnWU9ya1hoVVBxaC8vQ20rWTNtb1k2bXhoMXlVQ2ZRQitsa0xPWFlwWFJxWUJYY3BGdUh1UVJtCndTQ0w0S0VQMWhpVWdQOTlVZ3p5R1JUc0hlRERSd2o4UTZKUWd1SGlmeGJ0cUlkL2FmaWZISDVvK3JkbnZra1BQa3VPSGd3amk1c1cKZ1Q5bEVkL2hLSng5UXlJY24wRWhHZlJ6d2cvczNjK0RlUFZ4SVo2OUhIS3lzeW5lblpGVWZOckpmdWRPdG1kbnBIc25vQ2ZjdFRzQwp0UldibDVib1FXWFJBYTdUUUlSSDkwbW5ua0N2L3JDODFzVGh1dUt4eHNvTERXVVhtekdBcWlaMDhtdDZ4VFc5aWdTUVlxSlpEZ2E2CjJxUWc5NFhKTHRUS3p0ZElCelZsZmZMVEhkTFRCc21wQm5GdWlTd3hxSVgvMGlqWnlqUEE5UmdFeWtSQzNBZlliZ1BoTG4yaFBuMWgKYnQwaGFNVG9xTUJobU9kSTN2Zm9EWUZmWjZ0eEdFR04xYzVEU0V0b1lIUlBoRTh2MjdzcjNMdUQ3OWN0Mk44anhCL0paUytoWnovdgpjQThYL21aQ2VoUHFqTVYzYXNXM1c2cXVkeWwrYkZTODAxbDl0eDBGcjMrUkFLcTVwUVVBMVYrcDBZd294RHJGcVJwNVlaMjRzS2FpClVGNVJFTjhVRmRhT1RucmZpeFpWVVFmMFFmUW1GcDM4QmNHNHdkYloxeStDV0FDSUtTR0xSVEVtWlppaDhBVHhISTN6R0lsMUg0N3gKSk9NMUZPTTlITHQzWks3RkIyL2d3bk02UElZRXZuM29wL0xxRjdyM0MxRE51OTgwMFlQY01ZNzJQWG0yUjducGhhN05BdWQ2dm1NTgp6N1dhNndvZmEvZ3V0WHluT3A1VEE5dXBKY0pGaDFiQm5BeWhFT3dlc3BiRGRqRFNLa05QRjNxbGh4NTZRWWdlM0h6TkRKTStpd01JCnhjQStWTStKa25DeVR2R1FjaXFqY3l0aWNzV3hrSnpLT0VodVJWeGVaWHkrT0FtU1hSYVhXNTZZWFo2UVhocWZmQ28yc1NRdXRqZ20KcWlCYWxDOWtueFllVWdzZHRZSmRCcjU3TTkrekNWMHZYZ0ZpMW9GY0drWE9EVUtMT05VTG5CdWluT3BGRm5Hc0UrS1BwdFJHNFRqVQppQmFwQU5GclAzUDVld01JSHliUE5KQkZzL3BjMHhiQ0VLbnlnZWk5Z3pGNG9vejM4THkzQy9US0VINS9RREVJMFllOE5yMGZwVEVJClgvdWVpL1U3SHdmb2dZOXdqUi82b1o2RytXME41bTVpT29ib3dab0J5c3hWWmVCNkRIM0tzbG1IUkE4Nnh4c2ZXVUR1MGpMOUtmalUKQlpIMWpLSW1IcXF1Zy9XekQxM3o5NDBLSUQ0amZMVElOV0NhTk9yYXg0R2d0N005a2M3ZEhJaFRGeHZDcEk5TEh3OWlWVDhMQVlqYQo1MFVQbnBDeEVJQ1kyNzRnaDg4bUJwK0xEVG1mRUh3aE1YZzhKV2c4OWNRWU9nWXU0SHphVWZLVVhMZ09Ia3NQSFU4TEgwdU5HRXVHClVJRDRHd0ZFcndiUjgwVUJ0RGg5RmdLUWhYNllBRUpBR1VzNU92OW9GeVpyNktHdmZERkRtL3N3YnlTRXhUWjRhaE1XVmFUQm5vWmcKYXZpT0NQWU44M0hnR3YyekhFRTNGNHJQc0hBT01VOEJJQXYzd0IvSHNYRFAzZ0dCT1h5NmZvQStPTjdkcUIzWXF5dlNJbWlMZXdlYQplZWplRVFINmNla0tkKzZKb01vd1Znd0VBQnFNZE84SmR1MDk0VFlRR3RjZTIxcWZlN0d1Z2c0ZzBNOE5vK3E2UVRtaFUxN1hLc0ZBCjExcFVBQ0J6VHpTYUQ0UWFvcFVWWFZXbmRkSlRUZUlDU1ZVcXJ5a2Fma1B4U0MwWGRJWU1tcWlPUzBIa0R4UHBQc1FqMi9VRWJqMXMKSUF2NlA5N0h4MHZQVEFBZFFzZU84dHk3VWZrS3pXRWY1cU54dzkyUnFFYmJ4M1VuL3lyZ0w4U25sN3UzanczWlA4QTUwTTlMN1V6cAoxWisralJhL1ZHKzFxYjVua0grL3ZlWjdiZWpzZHdRZ3NnSUUrbm1qUlhPeHNXWmNyUnlVVnpUTFM2cXJDbW9yQ3pRVmVaTEtQS0UrCittUW53c3JlRWVTVncvMHgvZ09tVXgwb3lqd05nQlppRUIwMzlGalZ6ejcwNmpCdjN4WlYwY0hQWFY3a1hGYjB4K0huSWJjRXdqTWIKZFI5NGhLWVdkUW4zdGZPOTlBSVBMYytqaWVkV3ozT3RNNkhIclZaZ0JVRE5iRE9Ba0lFY1cwUE1tNy8reFFEa2F1UWNxRWNWb016VApmQXBBZVpJNE1nbjVZcFFDU1dLUk9CbVNXNUdRVjVHVVU1R1ljVG9ocFRRdTZWUjhRbkZzZENFWVNNUXBGUjVTb3U3bVBTU0FQQm9GClRybzUvZnlUQVVTckE2VmdBOUVaZExBNzlSOERJS2FCOFBnbWFrZWZhWTJNN0dZblNVU09XK2lQSWlQMEpuY2g0bE5VcUlOVW1MOGUKZEJqNXdydGJlRTQvRTJNMSsrRVovMndzWE9DdndRL0owQm9hY0U4eG84dkJoQ3A4bHRiNUtKOXp5Q1ZvQjlaWk5JVFgvN3dJUXArKwpnKzhjSGhVZU9pTThlQWJlTktOaFBQQVI0ai9DcDNwM0xFTDFNcE9OelBpUUNpNEVWOGh4a2R5MGd4MmZXZEVWRG5IcWprQWg2WU5ECmxZSWc5S3FQVmYxUWdiZEhFSThCMDRSRGFzd1BuVDQ0ZFAxZ0FPRjZEMTc4b3UvZE8zSXVDUURrZno0ZGN2QmMrcUVMNllmSE1vNk8KWlFaY3pEeCtLU3ZvWXM2Sml6bEJsM0pQWE1rTHZKSi8vSExlMGN1NVJ5L25XOVVQSFVEejlXTnlqL21nVS9yWkY1YjBXUnhBRkhvVwpCeEJUUHhZQW1qdTdnenJYR3AvdlNLNXRVWlBLVWFmT1dBcmtLUUhFRkk5RjhFSVkxUkpFeFdKekFBN0FpTnFtamlXRUFZUXJROWdjCitKcUNFVVlTUFhqcGlsbkxNVmQwck1maW0rQnZUbVlPUGQ3OWZDcnpkbmpSRnJ6UVRHY3llTVF6RmR6bTdOb1o0ZHdKdnlEb2FCZXkKek1Oc3dUSDNHdmR6SFljNEh2M2hZQ0NuZ2JDQWJvR3NPV084cmhRQU5ONWs2Z0VDQU4xc1ZVT1FoSFFxeUhXdEdneDBtU3dDWVFDZApxNVdPcXNWOXFrcWpzbHd2SzZtVFpXZlZKZ1Fib3pCb2NOQkptZjNvUFl3M1diaEY3dW5sN0NONUI1OTFIWXh5R1lyQ1pWMDZnMHgvCnRnZWVGZEhMUC93K2V2WUpQRkFUTk5vQzV0UWI1dDRYc1crQXUzK0F0NzgzMHJjcmJGOVhHRnc0OVFRRnRFZG90R2x2R21TM09sVFgKZGJLN3pmSjNPcXNCUU8rMEl2MVFBTHFwMVZ4dlZwMnRVNXhWU3JxbHBZMnlFbzIwc0xveVgxNlpXeXJMQ2U2SVB0cUxmdXYzRGNjYwpHRVFBMm85K2pEbkJVTGg1R2dCUitWd0FXWVI2TGFEVzJuQUhoYTk1ZVFzOVRRMmdTZy9hdTk3SDJ3di9ZTWd1TVpkaHZ1dVFFTDdBCnZ5ZjJjR3YwNFNiaDRXck9RWG1rcHlyU1RSWGhxb2lFdUNqWmJpcSt1MXJnb1JHNklBRHhhUURpT2pkRnVyYVlXcUVCUU01R2F2YzcKbTR3bGNSWVBrejZMaDBtZkx3Y2d0MVl1ZlBScjV2TGwzTXd5UVhhNU1LY3lKcTh5dGtBU0R5bVVKaFhKa2t1a0tNV1NGRWhoWlZLUgpPQ1cvTWptbklwazBVRUppU1Z4Y1lXeHNRUXl2V0hSRXhuZHJFVG9hQkc0dGZFQ2tzMzUrNC9NL0hVQVFPb0FvQS8wakFXUmhJSXM1ClRoWlRDaWdEZWZiaHdKTWcrcWVNUXcxbW9NS0VrUTk2TG9iM2wxRllRampVSFV3ZmZJZmhKRnBQQTFpRTBlV0FjMmhFZEhDRVhBc2cKQ3pOd2dVNGhHRVdEQjdGdi9FYjVFQk4wemlJSm1lYnhrQi9oYTBBL2RBQlIrN1p3ZFFlMzhuajBSN3Iwd252V01LZnVVSWZ1a0QxZAp3YnQ3UWlCN2VrUDM5SVNiRTdHNzI2UWZWUDdwaWFURTQ5ek5XVWcvVnNVRFllckhLbjJvbzc0b2NjNWIveUlCUkczWncvbzVTcDdSClE5dXdqZVlYSDcrWUdIZ3BBWEp5TEQ1NFBDSG9ZdEtKaTBtQmw1TFFxVmhYMGs1Y3kxZ2NRQmI2d1FDaXp2bWlBMmplc2hkdE9Xd1IKQUZHOVJGUXNBTVNrejBJQW1rY2ZCb0JNcTJCaktRZlBvMDRnU2tWZlNEd1dvYU9IamlGcU9ZemFIR0RlTldrcUMyRUdVYzNMZEFsUgpnWWRXOVlOQ0srcmdXczdlSWRSNndxUVBEdjNiMHJGbFFSOTREY09aMjk0MTN6MTRFenNWM09NTWNla0lCL3BBSERyRDRIMkNReS9hClYrVThaR3ErWVJySXRZK3pad2pWWTd6UjJCN1VzcE5tVEJ5cEx6cmZWRVkxUVYvVFY0RitiaG5WTjNTS20zbzE1SVpPQXdhNjBxd2sKaTBBbzU2b2xaeldTZnJYWXFEeXRseFMxbEdlTFpTbkpOZkZPZzVHT0F4Rk9neHpYSVo3N2lNQmpHQTFoUjRjS3d3dnpDTi85RE45OQpsT004aUhiTHV3L3l2VVppcWFWdHVwd2d6bWVqSFFaUUtSY1U1ZFlWNlFWL1k2TlJIa01DK0xiby8wNXZ1RnQzbUVkdmhHZGZ1T2RBCkJIak9lU1F5c1MxNnFDYnJibDNaVFlQMGhsSHhBNlBtQjkyTjMydXJCZ0RoM2UrM2pUVnZHbXB2dEtpdk5xcEdhNnFHNVpVZDR0SjYKV2JGYVVxQ3N5QzRYcDJlcjBvLzBSbVB4d0hPcy8wRDB3WDcwRUwwUm1nOGFySi9QRFZOQ2xHdytOL2laSHcrZXBxWW40enFRSjFpSwpuSWtBNlBFQ0hmYnlrUkhKSnpTZkhzRytkdjUrSGU5Z0hmdW9nbk84TXZKNFNmaXhnbEIzV2FSSEZkdGR6blpUOGtBL0xtb2h4Rm1OCkFPUlNUVmFBYW9UT05Ud3drSE05MTdXUjY2U05kQ1lOQkFDYWJ5Qkw0aXdlSm5FV0Q1TStYdzVBN2tiMHAvWnF1V3dsTjYxQ2tGTWgKeWhYSDVvdmppcVVKRUV5ZlVsbktLV255S1VrcXBFU2NVaUpPQlFQbFZhUmtseWVsbHlZbWxjUWxGRUxpQllYQ3dFcUJWMk9VaTBFSQpBSEpyNHFGOTcvOTBBRmt3eUFKQVZEL1FWd1VnLzc0a3Exa1lRR2pOZFlFZ0VwbFh4MHdHb2tad2VsbE15V1RBeVBUck1ZUm10QU9ECm1NSG93UmlhZXdqdmFjZzc1bGkraGJXSXY3bEYxT2VjS1h2UFJ2bWNpZkk2eDk5N0ZzWDdERy92R1o3UFdiN3ZHUlR2OHlLZmMyZ2sKRDRZTzFUK0J1VU50MnZJY1lBTjZJTTVkSVE3dFFhOGFBcjZyTy9xSy90aXJyY2RmYXd0OHZmM0VhMTBuWCs4T2ZyMDdkRmNQMnF5NwpweThTQit2SHBaZU5RZ1BRUXU2Qkp3VWNmRW9mbFlYMFF6L2dZdDZvUTNQdGgxNyt3ZlRCSHcrZm5UdnpDNTMyUEJvVGVDN2grUG5FCjQrT28zZWZRZUtiL1dJYnZXSHJBeFp6amwxQUZLT2h5ZHRDbHRKTVhVNE12cFlWY1NiV3FuMURyOU1GTStXSUFzbkFQSmFHdkNrRDAKWlM5S1A0RmpwdTVtekIyMEhleFNLZ0Rvd0xsRXZHaUZEZlNsOVhOOFlRRGhndERSODRuMHc3YmdJenkwR3J5QmkrcE54alViQzdYUQpzMEE1WjhGUTRzR3JXbFRncFFzSDNydmplQU42R0NXZnVVb1BnejQ0dURJSyt0blRhVHJaRi9VVUQzSGRCMHpCbmNWVTBESEFKSUQyCjlrUTZEVVM4TWh3WjBSbHRhTWsrMzFJK3JxMjhxRE1CNkEyajRnMkQ2cVlPUG1vZ04vWFZZS0NyWkJIb1VxUHlZb01DblJTbVFqT0IKMnBSbDdWV2w3UlVGOVpYWnBWWHBudWVFQUIxdzJLNnVVUGlSNEFkemFvK0F2Tm9WL2xwZnhHc0RFYThOaGdCVzRIbGoveURmdHpNQwpBNGhwb0wzZEVUNzluTDJqSW8reklxZFJ3ZXVEN0ZkNkkxK0I5MEs2Y09jMnRuc0hHays4eHhqcTBCWHAwTWZkM2NkeGJBK1ZHOUx2CjZpVHZhcVYzZExJNzdlcTN1MnErWjBUclgzZU5wdDN2dDQxMWJ4aHFKcHJVOFBNUDEwZ0dxc3FONGxOMWtoSUFrTHdpcTBpV21sQ1QKN0llT2VTZWZSWWRNRTRiZ0RqejhvdlJoNW1rQXhIenJhMTRsaVBJWWlITHZGMEZjKzRVUWVJckRiNXZSZCs1QjYxdytiUUlmQSs5SQpiZVFSUmRnUmNVakFxZUFUUldFbjg4T0M4eUpPNWtTNktua1FGelhmbVhTUGswYm9VSTJDQVFUNlFRQ3FGb0NCWEdyUkdwbGpDeHNiCnlOa1lZVExRUHhWQUN3VzNTRFBqYWVBNnRYUGRqYnpRYWw2S1dKaGJHUVg2S1pMRW41SW1ra2t1a1NTZGxpUkR5aVJwa05QaTFOUGkKTkdTZ3lyVGM4dVRNMHFUVWt2amtvdmpFb3FTWS9PaVRwL20rdFdqSW9ic1diWU5ISjFxMHpNVzFXVENYSmhFVmwwWWhMVjhSZ0tnbQphQXNBV2VpSEtnTDlJd0ZFTjVERm5YM2trV3dvNUlGaXByMWpwbm5lQ0RwMEFGbGhFQzJtRWlpNWNJYld6c2hCNXFaWjVvaEg4TlFzCndzMlZ1TDNBMUdxQVgrRG5VUW0zSTFqNkNRZWVkenpQaUx6SnJrL1QwejM1Wm5mZk1OOXZDQVdldi96SkhCeEFPZFREUDl6TlA5YkIKQzJqbkhtN24rSFZ4ZlBwNStPaDEvQ3lNeGhMMndQTTFQQ2VHUW5hM0I3MW1QUDZ5OXNoTHpZZGUwaDcrcnVFWTZHZFAxeHg5NlBxaApBR1FLMlFPRTQ5N0RvMEtoaCtrZWZGSXhEdjZMb3YvVlFlajZvWTg2cE91SERxQkQ1OUdwSnRURWVnQVE2QWNTZUM0djhGd081UGk1CnpLRHo2U2N2cElXTXBVSkN6eWFIbjArTkdNdU1ITThKSGNzSnZwQVRkQ0h2NUpocENleHpBVVJqaWlXQXpBOHRGNzl3RmdjUS9admoKNjgvVmp3V0FyQ3grTVFDRTZ6MUh4bE1QbmpkMTZtQUQwZWxqZ1JpbWVDd0RYMk5PQUJqSUhQcmtTVnlUdzhFWVlnYnZuOGZkZGJqQgpEczhUTXJja014ZXFlTlI2MlR3UERmQ3RCbjRMY1BiMmNlZkY3SjQ1K3ZSd3ZjQTluVndjenc0T1BXNWRwcmgyc3VtQjN3c0FFS0pHClY3aFRMK3IrQVFDNURNNEJ5TUpBYU9RZ1dSRHk2bUY3OUhFQVFBZDYrUldHbEhQTlpXTTZEQ0R4aEU1MjB5Qy9aVkM4b1pmVEFUUkIKRm9FdU42bkFRT1AxOGpFMVdnWHJxYTdvVVpSM2xCWFduOG9xTDBzN1hzOWx0eVVtanhhVzNsQnAzdFViZmo3UTlmNjU3dCtjYi9udgpydEpiR3VGSS9ySGVSTTh1L3V0dHdidjdncjB2enMyYndBYkNBUUQ1OTBiNmp3amgvOUhMN1NFdXZhS2pReWt4NTB2TGI5ZnJmelRRCjlmTnpmYjhlYi8zNWFQVzduY1hYYWtVRHhZSGFoR0JqUWtOOS9vMzZpcnNHNVgrMmF0NXBVOTlzVjMzZlVQMk9BUUhvYlFQYUFuYkwKV0h0TnA0R2ZmNnhCUGxndFJxT014S1UxVWdCUWthdzhNMGVlSkd5TTl4MHcvWGVINERFRStBNFRORGcrZmNMRlkvSDFUT0pZaFA2TwoxeHYxTWlQMGdING9DZUdYQUpjQmROKzdTK0JuRkJ4bzVCN1ZSQjZUaFIrdkREMXhPdlJrU1ZoSVFVaHdia2hvVG1oSWJzVEpQUGFKCkFoNklCK0tvRmppbytMdlYvRDBhbm1PTkFGNWNuV3U0Q0QwSVFGRXVHcEZMdFlCY0VlT2hIV0ZnSUYyRXM5NVVCTUpkUVV6aUxCNG0KY1hCY0ZnaVRPSXVIU1I4Y0x3UFhvWjNyMU1vTnJPTWxTZWNBVkNZRjl5U0NlMHJGU1dYaVpFaTVKSzFDbWc0Znl5cUJRV21uSkJtRgpGYW5acDVQVFN4TFNpaE5UaTlNUzhtSWpUNG44TlNKMGFxa09BY2hGTC9obkFnaUhzUkNXeERRUXlqOFdRSlI0OXZjblFLZzdGSURRCnRkbEErSXczeWtCV1EyMWx0SUFSL1VVZEx3Ymo0Q2RyNnJrYm5yTHhRK29MdkFiNHRQQzhCd1ZXNHpZS0gva0h1M2tCclp3UUhTY1UKb3VlR0dMaHNIWityNWZOMEFyNVdJTkFLUkMwQ1VSTWZwWllYVjhPUFYzT2psWkhocXJERDlXSGVSclJXaFNlOVVxMDhlN3BDZDNlRwpRQnc2ZzNlMW5YalZFUEFkM1JFSUFHaFhSeEJhLzRLdk1hOTgwVTR0UlUvMFZEQjljQkdJU1IrckFKcjcrNkdoWnhFQXpRMTZwczBtCm9QU0RBVVEvcy9EWXVXU2NrSE5KUVlDaGM4bEh6NlVmR3M4NWNMbklmNkwwd0kxeStIam8ycWtqRThYSEwrY0ZqV1dHWEVobmo2WHgKeDlFU0dGTS9GZ0NhWDZmQjlaNDh5a0RtaDViMCtSSUFRdXR1bjZjZkpvQ3NHNGpjN280M2FtRURIYjJZZGdoTkIwQWRPZmltVmZvOApyWUVXQUJCMS9BajlGRGJ5djVHcDVFTS9oUlFkUk1xWUpVRXhDRXVJMGFkTXJXSE5kUTZobUtGakVVbzgzcjJjZWFHanA1dmoyY1hHCm9hQ3pVS3dDQ0M4UVk5emdKU2M2Z09nTWdpOEF3N24wY1R6SUEwY2RoOUNHODRUMjZOR21rZ3ZhQ2d5Z3F6ckpEWDBWQU9oTi9Wd0YKQ0FJQXV0cWl1dEtzSmcya3VsUWpINnVXOWFzcjJpVWxuZVVsZlRXSy9sN2REejk0OS9lZi9lWWU4ZkVUNHVFVThYaWFtSndsSm1kbQpuOHdTOXlhSis1OFNuLzNxeVo5NjM3OG1IQzkxN0k3NDd2QkppOEVURklEY3owWTVkck45Mm9WeFkyVWR2emozczBlL2VVRGNueWEvCjRZUEplNTg4K091RHFVL2grejhtSG44MC9mSHZIL3p4OG52WEppNzNYTldwSnhvcTN6R3EzdTFBdFo5M091cnU2alVBb0x2RzJ0dkcKR2xUKzBWWmZiRkplcUsvcVU1ZkJqOTFVVVZ3dEtWR0pDeVVWNlJuS2hFaHRMTnBhVDA2ZXhDVjJlQ1pFZ3lqNytFejZQQ1dBTENURQpGSTlWOTNqQlV4WVp2RGlBeHN2MWlQWjFpL3c2VVVlelh4dmZUOC8zYStiNFZvZjdWNFVlTGc4SkxBa05MUXdOS3dnL1djZ09MV0NICjUwWkNRbkxaSi9MWnh3clpSNG81cEg1NERpb3V4RkhGZFZMelhLcDVidFY4Q2tDdTFRaEE1S0tZQUQ2Rk5zWWpBNUVBMHFQdFlFZy8KZXROUkdFOGZKbjMrTVFEYXErZnU2ZUR1YWVNRzFQTVNTQUFWbWdFRUtaZWs0RlJLVWlzbDZUamxZakxTTERCUWZsbHFWbWxTWmtseQpXa2w2U240aXIxaDBVQ1YwMTRLQjRLUEFTY3Y3cHdGb1gyc2loTGtaSGdDRURUUzMvK3NmQWlCS09ZdUV2alJtS2dpWkRVUTcySGJlCjJBWTZnS2o1RFhRRFVhL3hjN0xwRjZLSGZUeUx4Z0o4UFE4RXFEblJsUGtlbWd1OGVUM1V5UTF1aVJScHdwT3F3bEpsNGVueXlIUWwKTzEvS0s1RHhpMldDVTFYQzB6TGhhWW5nZENXL3RJSlhLaFdWUzZJcUtvUkZaZHlFOHZCUVpiaWZsdTNXelhmc1EwTkhJSmcxNEJzYwowTTlyeHVQZjFSMTlTWHY0MnkySFh0WWZmYVU5Y0ZkM01BZ0p0VEowaDhIem96bHN5Rno1aCt3Qm9sYTdtUFJaUkQrTEE4ajZJVi96ClpqTE5BUWhYZlV3dnQyYjlIRDJiZEhBczF2OXE5cjUzMUc3dkRiejY0VHRmLyt2dnR0eS9aL05neXViaDVPWlAvbS9ISDMvK2J6KzcKL05wZHJkZk55b0FKMEFaYUFtTUNLR3pCOHMrQ0FJcFlZQnY4RndVUWt6dFlQSXNEaU5rR2hBR0UyNThoR0VDSHgxTElkaHlUZ2VnQQpZaTVtTGM2andQR1VRRE9EVExXZjg0a1FDL2ZBZnlaOHBoSmVGOE9oUzRnK1dnSVAzTEtLSWRxV2RkUGlGN1dxaFhlcVd4WjRGbkpQCkw4YzA0SGkrZTZnVkxxWjRUTzZoeGFXVFRRVy9KWEJFbTcvUUZuUWdEcllPSG96T2pNc2cxM2RRNE5ySGNldGhIK2dWb0R2OUVXRWQKM09HR292TXRwekdBcm1qRkFLQTNqY3EzakNyY0E0UUJkSTBzQWwxdDBZQ0JMdFRKTDlkVVhTUUhDWFpWbmI3VVV2KzcvN3hMSVBRUQpIMzMyeWEwN2IwdGx5dUFUNFo3T1BxNjd2RHgyZWZzZlBYaXF1UFR0eTNjbVB3SU1FVDk1L0g3RkR4b085cG5icGVmWGdlRE9LeURPCnJtajE5MXMvblA0akFkRDU2Sy9qbytNeG9nUW5OOCtYdi92cU43LzVyVjJ2N1Q1MkpLQ2twT1Q2elJ1ZjNMOEgvOU16eEtkL2ZlOTcKUCs0MzNEVEl2OSttK1Vscjdac2RHZ1FnWktEYXQxcnJBVUR3dzQ4M0tzN1Z5N3RVcGEyVlJmVmxoV3B4TVFCSVhKNldxbzRMTThidQo3K2J0NytGakFIbVN5M00rZlh5L2JoNlRNb3NEYUcrdkFNSzhid0VkcTZIMEE4SHU4ZTBTQW5yMjZkamVEYUZlMVVFZTZzQ2pKUUhICmlnTUNpZ0tQRjV3NFVSQWNYQkFXV2hBQk9WSEFDeXJnaGVSeFF2TTRKL1BZQVFYc2c2YzRCOHQ0b0I5bkRSL2lvdWE3cWJudUtxNkgKZ2dPWkQ2Qm9CQ0ExMzFVandKT0JBRUM0Q0lTMmc0RisvblVBNUtQanZ0N0JlYjJEZTdpQkd5K2JBMUM1QlBTVFZDRk5yWlNsaWFVbwpXRDlpYVVhbEpLTUNJc3N1bFdZV2xLZGxuMDdPTGsxTkw4NU1MVWdTRk1jY1ZLQ3FqN3RCQkFCeWJPSCswd0JFTFg1WkZvRzZrcGtCCi9kQXpuMEdtbVlmMFFZaUxBSWpaL3J4NG1PakJ3U1R5NlkzZDI0UE9hVU96R1JDRExKdW1xWGoxMHpPdkVHbzlBOUZVNkY5UFI4QzgKREVXaEFSSURRdHdXTS9jUTNwWU5pZ0xhQkFrcWZuNGxMMDhxeXF1S0twWkVGeXVpU3hVeFpZcllTbVdjV0JGWG9ZZzlMWThwcllvKwpKWXNwcjRvL0pZdk5sVWJsU0VTSjRzZ1R0ZUh1dldnSCs1NkJ5TjM5OERTTktrQ3Y5SVc5MWhQcTNCNjZweU5rZDN2d2E4WVRMMnVQCnZkUjg1THU2Z05kYmd4dzZ6YTAvNWlJUWRYU1g2UWdMV3IremU0L0FvMWNJeHNJWFZPQWhCTjU4b3ltSWczdzNrRTF2MUlFZWtmOGcKMTJjNC9BQzhMeDhXdVk3RXVZM0U3UjhVSGV2bkhPc0xQOVFYZkxSWGVHZ3c5Rmo3eWFORE1lNFhVcnhINHdJSDR3K09KaDRiU2RvLwpHdWQ5THNidmZOeVJNL0FRbmUxODRIeDgwR2o4a1pIVW82TUZRV2VLVG81a0hCMU85QnZQMlBkbStZdC8rTVdMSC8vcG1ja0g5c1NzCkRVRnNKSWpOQkdFL1BXMDdTZGc5SWpZK25GNzlZR2I1cDQvV2Z2RDduZCs3OWExTC9jTHpHWnd4WktBVE4vSURyNWVldUZJV05wSFAKdVpFY2RqVXpmQ0liN1hLL21oazVrUkZ4SXlmNFJsNkFlYW1MVGlKNnZXZWgrOHpQV3RES1ZQNGhLMC9VQnJSUWNBK1pFSnJTS1AzZwpXUFkrbTNOa0xBVnlkSndjZlhReERTNXcwS3pJQzhuNFBsNGF3OHFoVjNTZUtoZFNyUVl2UkdLTTRtQ2JVcTFhdEVVeGJDTlRLUWhWCmcyakhzL3VqRVZ5bTFjKzVyWmRvUytDOCtUM1VjZ2src0FMUExhUjM5dUFYUWh6dkhqNFZMM0llSFE0K0R4SlA1cVZmUTZnemtoWXEKQXBtMlE1SUx4UERyNXRISHhXTWpQUHU1ZUFjV0ZYd0hnd01qZzlwMUJTL3pFbjNxbGViU1czVVZGM1RpSysybysrZVdRZkdXVG5HNwpWZlZXbS9xR1Z2NkdYbmxUcTdyUm9uelRVSHU5V1RWbXFCbXBsVnlvbHdLQXJnOTJ6OXo3akpnaGZ2bmVCL2tGV1MrLy9oSnJKWXUxCmxMVnFLV3ZEaXFWclZpeGZzV3JsY3JpeGVpVnIrZkxkdTV4NldudUlKOU5UeEtQZTM3emhQQkFEZnhXKy9RTFBBZmJCODFIZTdjRUgKUmtXN0JpSTkreUo3ZjMxdUNyN3BEREhVTytMKzNWMXJXYXdsTE5hYTVVczJMRnRxdTJyRmhxV3NsVXZRbmRWcmJMNzk4bTU1aGVKUApIMzRFL0hydzZTYy9PRDk2UjF2elg2M3FuN1RMYmh2cnlON242amRiVVNuclNqTmF2RHVqa1hUS3hXMnlVMDNTZkpVa1YxbWVXeUZPCmo2MlBQZEExRDYvMFNoNzl6U1Q5SFNZMXFkSWlWSThYZmRtVTNBMW5HdlpvZXYrSnZpMkN6bDZ5eklQTzVPcU8ya3ZHdTB2azNSbTEKMXlqYVc4ZjJrNFg1bDRYNGw0YnVMdzQrV0JoeXJDRDBjR0V3NUNoY0Y0VWVMd283WVU1SVlVUlFFWVFkVkJBWm5CZHhJcDk5dUlUagpWODRGMWxpUFJzUU1ZQWg1cUVhSTk0VTVOYk1kZFJGN0RDRzc5VUZPeHBQT3hoQXlwczVvZkdvWWt6am1XTFl0TDk2OHpDUU9qbnNiCnoycmNqTmJqMGNvREJ1MXA0OEoxY0MwL1Z5S3FySWdyazhTWFZTWlVTSklxSmFsQUg2azBUU0pKbFVveXFJaWxtY0NnY25IbXFZcTAKd2xNcCtjVkpXWVdKNlNWSkNZVnhuT0xvdytvWVIzMzBIZ1BmcTRucjFoeGxQVTBpS3E2TndyazBpSEJjNm9VUTV6cUJPU0lxVHJWQwpXcUtvT05hSXFKZ0F4RndGOCt0TWdpeHVvTDhGUU16YWo2a0N4S0FQRHJNT1JDOEkwWHVpUVQ4UXZDTEd6TjhDSUxxQnFNWVhpMUQ3CndDM2lOWUFPUWovVUpSUlY4M1BGdkVLSnFGQVdYU0tMcGZRalVjWkxWUW53RWE3aFRxa2lybEllWHlhTEs1VEY1RXVpVXNYc0VIWFkKM2paVWxvZW5zOWRKQURsMmhiM2Fpd0RrMUJFSyt0blZkaElBQlBRQkFBR0Q0Tm9FSU5vcTJPY0NDSE9IRGlCOEU1NVYwZlVBMlNyZQpoOTVVZVF4RnU0eWdJOXM4QnhLOEJ1UDkrcVBnK2M2ck4vcjE4YUovZjZ2dTVidUdsKzdXN3I0azl1eEpPVUNldWUwL21ySjNMTmJ2CmZOcStDOG43eDlCT29xTm5BRDFKaDgra0hUeVg2WHMySGcwOHZKQ09YaXpQeFhtK0pYM2xEOWUrOXVRdkx6Nzg2TVdwZXp1SmFYdUMKMkRSTDJNNkFmbWEzVGs1dGVVeHNmekM3NDk3TTVnZkVtZ2ZFaXI4K1dQdmIzMjc2NzNkM1hodmZmYlVtOEhJZS8xSnU1Tlg4azljeQpRNjZsYzY3bWhWN05DNzlXZ0hJMUgxQmlLdTNjTEdSU1ppSGlQRDJBOERWOThwQlZBRkhvb2RkK21QUUpIRXVEWU83UTlZTkpCQUE2CmlBOUtRNTlGQzJTbWVzOFhESWJPUW1FQ2lLa2ZIRHFBNkFiNjBnQmlHT2p2RGlESFRsT0hIT2dIN3p3blgxOC9IMEQwRkJ1VHo3ZWMKdWxWZk9hWVZYelVxZ1R0dkdCVnZHcFdJUVcxcTFBMnRCL3BVWDI5V2dINGdsMnFsRTlycW9SclpqMjVjSkI1L1JoQlRjcVhDMXQ1dQoxVExXaXFVczJ3MXJ0bTVjczNrbHkzN3RFbnVicFJ2WHM3YlpyZDY1YXRubTFVdFdyMWtDYWdtT2p2emZ4NThTajJiRy8zVHpjRWY4CnJuNit5M21SYzE4NG12dlZ6ZzdvUzN6blYrOCtKdTUvL09ndkNaa3B5MWF1Vzc1MDFWYTc5WFpiV1Bicmw5aHRYbTVqdTJ5OURXdmIKNWhVN05xN1l0SnExQ1hDMG5QWHZMM3l0bzBsSHpFNC9lZkRSajYrZXVhTlZ2YXVWdm1Xb2VidTE3aTJqNXBZQlZiT3VOS3ZQMTFZTgpLcVh0c2dxRHRMaE9rcXNRNThqTGMwNkwwNkxxWTN5N09RczVocWtmRENEcVB6UzFwZ2toSDFML3JibWV2WE1oLzZDcHpFUCtxMENuCmtLS0RTRHVGbmgwQ2p6YUJtNEhyb2tQRGVCeWJJcDBhSTV4cXdsMGtRVjRsZ1Q2RngzMExBL2NYQkIwcU9IbThJR1FSQUowc1pBT0EKZ3MwQU9uS0s2MXVCMnArdEJ2ZEVXelVRQU1peHhnUWdKMTJFb3o0TURPUnNDS1lBNUV6V2VNaEowSmFIWTlBcVFKYjArWElBY210ZApJQXo2NElDTk1JQmNXOUZSR0ZsU1VYbDU3R25wSElDa0pJQlFKQm15T1FObGdvRUFRS2NyMG90S1V3dEtraWtBOFlxamp5aWpYWFFJClFKN04vMzhBaUc0Z0RDQ21nUll1QXMwQmlHNGdobnUrWWdETlh3SkRXUnhBNWticHVYYnB6OGw4QU5GaVNSODZnSERoWjA0L1ExSHcKaStvK2dyWThSRFlLTW1TOGtrcFJhVlZzbVNLaFRCRmZxVWlRcXBLcVZNbEtWUXA4bEttVDRXR2xPa21xU0t5c1NqZ3RKK3RBbFFLQgpQUEp3STVwS2dnSGsybzBHdFlGdkFFQ29FNGdFME91dFFhL29qd09BSUs4YUF2ZDBoT3lDVDVrQmhKZkF2Z1NBVU1oeEE2QWN2d0VCClBLdTZEZ25kUnBQY1JqTGN4ckxCUTRkYVE0OTFKKzBicjNuMTNZc3YvT1VuenhCL2VPN3gvWjJQL3VlNUQzL3lIMWZyRGcxSEgrMFgKK1o3TjlCNFRlcDlOOGorYmN2aHM4bUh5MVJFTlB6eWZkdUJDMW9HTEtRZk9SZnVkRlhoY3o5M3ppLzV2UHZ3dGlHY2xRV3dqSG04agpwcmNTaFAwTVlUZE5iSnNtdGs4VE95YW5OMDdPYm4wd3ZmUGU5TFo3aE0wall2a2pnblZ2bHZYUlE5YlBmclBpOW8rL01UYThmN3ljCk81RWt1cDdCdVphUFZwb21DaU91RjBiZUtJR0VYeXNLdjFvSUtoS1NFbG9FT2d2ZHQvZ1VoUjU2RnRNUGd6N01waCs2ZmlESHgwMmgKVGdMQnkxS0hMaVRqMmRsZ0lGTkQ5UG5FWXhlU21NUlpQRXowMFBWRHJVaFNCckp3RHkxei9VRHpHUlJQbmNkRW5VdEFEdk8xUEt5VQpIZ3NEa2ErT2N3Q2lHK2lyQWhEb0J3UElwWmROQVlpcEg1cUJMTmUrNFJyK1lHSjdmTCsrK0kxR3RBdHNRb2ZxUFRmYWxOZmFVUi8wCm5YYWtCOGh0WTgyTkZpWG81dzFkOWUxYTZRV041TTdZeU5Tais3UEVUSHhLM05JVnJKVnJXT3MzTGQyOGR1bk9WV3QyTGx1elpmbGEKKzNYcmJUYXNYcmRoNldaUTBRcldpN2FydHExaGJWakhZaTFqT2J1NC9mTDkzeFBFdzBzZjN0N2ZuL0w2c05CaExNWmxJSm83V0hEMQpqN2VKYWVLOUQzNTc0TGpmU2hiTGJ0TzZ0ZmJyVjYxaFBiOGEvaWVXYmx5MVl1dVNsVnVYcmRxNFl2bmFWU3pRbGYwNmxxM05zdldyCmxxeFp2aVFsSVI0ME5qMzUxNTljTzNPN1dYTkhyMzZudGVhdXNmcTJWbjFUcTduY3BCN1J5UHNVVXFQNHRLNnl1S1l5VzE2Wkt5blAKTFpGa2NCcWozWHZaZE1kZ3lsajFFTzJtNVg5WmN4QnJUTGhCUnlUeElKNWRYTzh1RVZnSGM4ZXpUZURSeW5lSFYyc2p6NldaN1F6aQphV0E3MWtjNjFJVHZxWTdZclFuZnBRNXpWa1M0bGdkN0Z3VDY1Z1g2RlJ6M0x3ZzhuSC9pZU1GSlNqOEJoWE1BQ2lvRUFMSG5BSlRMCkRpeGdIenpOOVJIejhMNTNaakNBbUFZQ0FEbFhpNXlyQlU1MVBJZEdCREprSUxRY0ZvcEN0a1dURzhSTUJzTFh6RERwc3ppQW1JdFoKT0pidStUd0E0Yzg2b1QvTE85YklUNmtTbGxiT0FXaE9QOUkwMEUrVk5CTkhKczFDUlNCeFZsbGx4cW15OU1KVEtkbEZTU1NBNGtWRgpNWUZWc1I3Tk1jNTYwVDhTUUhUOW1BQkU2Y2NxZ0N3TVpBRWdtb0htQVlneUVNTTlYekdBNkgzUXZ2M3hFSjhCRkNaOWNHaE5RcVkrCm9jVmo0UjQ4UXBTY0htRkpId3BBMUZad1QzTHhDOS9aT3lCd0c0bnlISTQ2M2lxS1YvT0xKVkVWVlhHVjZtVFFqMFNacUZBbXE1UXAKYWxVcVJLVk9WV2hTSmRWSmNGTmVsU1JScElobFNhZkZNU2tTVHBncXdxMHJZbmQvQkFBSUxqdzZVQThRQUFpVUEvckJBQUwzZktmbApLRjRGUXpmTkFFSjdla2tBNGQzdlR3TWc4MUFsRkhqbzB4dmpDMytIL1NMUEliNzNpQkRld1IvcVR3eG81L3IzQ2x5dUZuem52YUhuClAvbmpGakRLTFBIc0RMRnRodGhDRUd0blo5Zi8vTzNYUm5NREIrT1BuVWsvTkJwemVDanEyRkRpOFlHVXc4UEp2dWRpOTQzSEhMZ1kKYzJ3c1BtU0lDeS9oSHU4MGZQZFAvL25zN013bWd0ZzRROWcvbWJhWm5kbzRNNE1LUDFQRXRpa0VvSzFUcy9hVGs2dG5aMnllVE5zLwptTEsvUDJ2emtGajFpRmg2ajJCOVRMRCtOTVA2NmYrdzNuaDM2NlV4aDh2YVk5ZFBSMTdQNVU3a2gwOWtSMDVrY2E1blJkN01DN2xlCkZISzFJT0pLRHY5eUJsTXpDeWxub2ZzTEFjakNRQllBb2lwQXpIWWZwbjR3Z0RCOUtBQmhBeDBaVDBXSUpHZEk0b0U5R0VEMFJ1YW4KQ3NNOUZ2cWhBd2hDQjlDaE02aUZpd0xRQWdiNk1nQ2lNOGdxZ0toWHlxOEtRQTRkRVFBZ3NnRUlyWCtSc2xrOFNEeVVnYndIVVVjZwovTUhnN3FnV1EvNk5sc3FKRnNrMXJmU21RVDdScnB6b1VxSk9vRGIxN1ZiTm0wWTFXa2d5Vk4vUzF3Q0FidFZXdmpQVVJjeE9UUkdFCk1FcTBuTVhhdG1uMUZwdmxxemV4TnE1ZGJtKzMzZGJKWTFOOHRFMVpybjF4empleU0zZWNQTEhTYmZmcXpUYmJXS3dYTjYvZGJMT0sKdFpUMTNHdXZ2UCtyWDg4U2oyOS85SU85aHVqdmRQSk9uaW02KytuUFpvbkpHei83MFhkZTJ3MWY5TUxtVGJacldXdldzVmJ0M0xwNQp0OE96SE1Gem1Wazd5azgvVjFteExUcld4dFZqd3d0Zlc3Wm16VGZXcnJEYnNwYTFsclZ1eFFwMXBaZ2dKaDkrOXVlM1IvcHY2WlJ2CjZWUjM5Um9BMEkwbXpjVjY5WUNxcXJOS3BoV2ZicTRzcXE3TWxZbHp4Ulc1QmRMMHNLWVl4ejQybG9xMXpQV3RVNjNyNUUyNmN1YmkKQ2NSQlI1RUxQTnI1RUdxeHhyV0ZBMEhjYWVRNDE3T2Q2aUtkNmppT3RXd1FqNk1Hd3NaeFVuTndQSlg4dlJXUmZrWEJod3BPSGlnOApBVGxjY1B4NHdRblFqMFg1Qi9RekI2Q0N5Sk41YkFEUThVS09mN25BVzJycEhpYUFMQXprV2gzalhCME5BSEtzNFRuVzhSeWJPR0FnClo3UXhIZ0FVN21LWXB4eEhobnYrNlFDQ1ArSnVSUG9CQXgxbzVrVXBCZm1TbUJKSkhBQklMRVlBa3NuU0lWWFNkRXdmdVN3TFVpWEoKUWdhU1pGZFVacGFXWjVTY1Rzc3RCQUFsSnhjbXhCVEZCb3RqZkJxaVhYUWlqeGFCcFh2K1BnQ3kwQThDRUYwL2RBTXRCS0NGR09UZgpuUVJoTW9qaG5zOEIwRUpoMHNlaUFvVDFRd0hJdHovT2FyNG9nS2pRejhiRFI4WllEUmdJdHdEamF4ejBxUUdCKzBnVUdHaC9UeFMzClVaaFhGVlVwaTVPcFVxU0tSTGtpU2FsSXJsR20xcXJTYWpYcGtHcE51cUltcFZxUm9wR25LQlJwY25tcVRKcFFLQkhGVkhIM3Q2TGEKejU0KzlCRUE1TkFkOW5wdjJPdmRjeFVnM0FiMDdhYkQ4QkVldnQ2SmlrQ2dINmRlc3ZhRHU1NFhCaEE5cG9sSzVKS2Y1MENFRnlvMQpKM2dPeEhrTkMvMEdPWWQ3MkFHZGZMK3U2TjEzR3AvNytLYzJ4Q05ReTFiSUpHSDdpTEI3UUR6NytPSGFXV0w1WHg5c0htazYycDhlClBKeHdhQ1E1NEF3M1lEVCt5R2pXb2JQWkI4K25ITG9nT242T0h6VEtDN3lRNnZhRDNtOTgvQkd3eVE2K3llTkhPeDQvZW1IV3RPeGwKTjRtK0xlZ0hMc0E5YXg4LzNqZzV1L0hoOUtZSGt4c2VQRm4zY0hMMWc1blZueEtyLzQ5WSttZGkrUWQvV2ZIam43SGUvTW1TeTkvZgpkdkdjK3lVbDl4cHdKSXM5a2NLZGlJKzRuaHA4TXlmb1JsSDRqVUl1YW5tMkJNMUMwR0hlb2RObmNRTlo2c2ZjQTdTNGdlZ0FvcmFqCjB3TVNBZ0NoWTlSSUFPRXh6YWIyNXk4WU9uUVdDaDFBSmdhZFNUdzhpcnE0SUhBTndTM1M5QUI5Y0JZQWtDa1djNEdaTTRMcFRiSk0KQmxGckgvVFhUczh1UHYwYTR0SEp3MWtFUUdnZWVpL2JqYXp1NEsyZEVPWjZqU21EQXJTNmJhTFNYQkhJdDUrdk1tWmUwMVplMDBxdQp0NUFBNmxCYzcxTGRhbFZDM21xdmViTlZjMU92dnQxVysyWnIzWlZHK1RWRDlmMC8vV2FLbU0zS0sxekRXdmJzMnJYUGJGaS9ZZFVxCisvWGJYandSK0Z5TnpLNi9iWHZmNExQdEE5dmFlemIyOUQ3Zk0vUjhhK3N6VmVWcjNWMXNXQ3Qzcmx5OWFjTnFHeGJyUDc3enlvZnYKLzJxR3VIZnpMKzhrOXBWTi9PKzdqNG1wbjMzL2g2OTk0em5XRXRZbStMWkxWNjlidFhyakFhK3Rwd3UvWmV5eTYrdTM2eDFlM2RHNwp1bjlrMC9ESTh4M3QvMUZXdWVWNHlKbzFxMWF1WHJGOSs5WU5hMWF2V3JLa3I2dWRJS2IrOHVIdjMrNXN1S2xWdmFYVDNHNnB2dGFnCk9sK3I2SkZMMjZ1a0xiS3laa214UnBLSEFaUXZUUTlwanRuZEYrblp4YlVhajA0T1BlNGRiSWhiZTZRNzRJYU14V25remdhT2t4Nk4KMG5IU0lqb0FJRkFkcFlFTjFuR29pWFNxUmpGeFJ4WHBxR0k3VlhPZE5WVEl4U2tWRCtJdVlYdWVDdlhMRHpxWWl4YS9EaFlGSFNrTQpEQ3dNc2lqL1lQMmdGRVNTNFlCK0lBRkZQTjhLZ1lkY3hLU1BHVUJSVkZ3MDBiVEVvSjVvc2dnRUJuS3U1enMzOGx5YStNNWF2QzhNCkdZaGlFRGt2MFpJK09FemlMQjRtZmI0Y2dKemIwQ2dnZHlNQ0VCcUhxT0ZuU2FNQlFCVVZKZ0NSOUVFQjl5aWxwc2lsMlJDWk5LZFMKbkZWZWtYVzZMQ08vT0RXekpDVzFLREV4UHk2eUxIcC9UWlM3VnVUZXpIZHZqckthcndwQVRQcmd1VTFQQmFDbk14QUNFTk5BRFBkOAp4UUF5TWNpc0h3eWdmWU1KVFBwWWlmbGdlVHdWOUF1RlNSODZnSmdQQVEzdzBYTVlyYW1kYUkxSzFVUlhWTVVwNU1rUVZWVnl0U0sxClZwRldyOHBBMFdSQ3FtdlNHcFJwamZKMGpUcFRxVXpYVktWVlN1TXpKY0tncG5DZmRyUUx6TGtud3FNTGJZYmYxUk1HeEVIdFBpU0EKcUZXdzc3UWNmZFVRdUxzelpJOFpRSFBidnA0YVFPYUdwMmp2Z1hEUFFaSDdVTExYWUNLYVFOL0g4K3FQOFJ6T2ZPYlhiK3k0OTN0UQppeTFTeThQbkgzNzY3T3drUE53Mk0vbk5KNTg5T3oxdDk0UlljL2tOajk2aUU4T2lmV2ZUL0Mrd2ZTL0U3anVmY2VoOHpwRXp5VWVICll3K1BwaHc2bC9mU2IrOTgvZE0vYnlYYm5MZE1QM3grK3RPZHhQVG1XVlJQMmpKTmJBRUFUYUVpMEdad3orVE1ocW1aWnorYjJmN1oKck4ybnN4dnVUNjU1OUdqVm80Y3JIMHl1K0hSMnhmOTh1dUtEVDVlKzkzdldmNzdIZXVPblM4ZCt0UDM4bWU5Y1ZBWmVxNGk0bnMrLwpuc3krRmg5OEkrUEV6YUtRbTRYa25pOUwxbndoQUZIUXNYajR1UUQ2M0NVd3VuNGd6Tm9NYmxJR0FCMjZrR3llb0oxd1pNdzh6NURjCncvVUZ3dUFPaFI0bWdMQjFxRkFHZ2xpbEQrVFFTUHpCNFRpY0EwT3hPUDZETVZUMm94UEN5VFZXSEdzQVltNEwranNCeUxXUGczcVoKYVFDeU9HRURoeHBvUkEyZXBqN2xNc3lyTUtSZTBWWmMxMGx2YU5FY29LdXRWVzkwS3Q0d0t1RDZUa2N0R0FnQTlJWkJneVlpTmlsKwpjZmNtUVV5T1hycTRZZDM2RFN6V3Y5bmFzcGF2M3ZEU3JtY3JxcitwNjk3Wk1iUlczMldqNjkydTYzdXhxZnZGYXVQbWxxSE54cUdWCmZkMmJCNHpiWTZQc051ell3VnErWmZQS05hd2xMNzM2N1RzL2VtdDYrck9Ibi8xNWxuaDgrZXFsRjNZOEE5L1Rmc095N1p2WHJObHMKdnkyQy8xeFB6K3J1cnUzR3JxME5iZHUwUFZ2MGZUdWFlbmJXdEwvWTBQcGlWK2ZXYnYyMzh6TFd2UGpOemN0dGJEYXVaYTFqZmYyNQpIWC80eFM4L2UvendGOWZQWDI5cnZLR3R1YVd0dlZ5ck9GdGQxU212TU1ncUdtU25HNlNuQUVCVjRnSnBSWDZCSkRPNEtYcFhid1QxCkY0N2ozc0hGY1d0bHU3ZHhjT0FhNG1xTWhDRGwwT0tvaThSeDBMSlJtaVBCUFhzYU9BNjFYTWRhcmtNTjNuVmxDcHBBT0QvVVJpMFMKUUFLSVIwV1lkMG13WCs2SlEza25EeFlHSHlnS1BsU0U2TU5jL0lJRUZ3Q0FPQkJjL2duTzVSNHI0dTJUQ0YxVVVRdUZEcUQ1QmdJQQo0U0lRTWhCS25jQ2xRZURVRWc0R0lyZUdSV0lKNGZsQTJFTld3aURPNHJIMHplZUdRUjhjeHpZT0FNalR3SE1FUHhtNFFiVzhWSGwwCnNUU3VzaklSQUNTVElBREpaUmtRY0k5S2xxMldaaXVSZ1JDQXFpUTVVbFFFeWk0cnp5d29TY3M2bFpwUm5KcVNIODh2aVRtc2l2WnEKam5adDVqSHA4M2NGRU5iUFBBRGh6ZkFMQWVncERHUUNrSVdCR083NWlnR0U1d1A5L1FDRVR3bkdCd1UvRFlBV2l0ZUlDSjdXNGRuYwpmVGpHdnpjNnVqSG10RHhPSlV0U3kxT3dmaG9VNmMzS3pHWjFWcU1HcGFFMlE2dE0weW96YTlWWktsVld0VEpMTGs4dGtFYUxOT0dICmRlaUFSZ0NOYXpjQzBPNXVOQXZSc1N1TUFoQmVCWU9BaEhaMW9KM3c2RWlqbmprQXVmVjhBUUNaRnY3Z2ZlMVFuTWRnZ2w5L3pNRSsKb2VkUTRpczNsZDk2Nyt6bUo4VFdXV0lyOGNSMjV2R215U243SjdNN0hqOTY5c0gvYlo2OXYvM3g1RE5QSnJkUEUrdCsvTWNYKzZXSAp6d29PQUlET1J1MDdGKzk3THVYWTJhVGo4Qkk0bXUzMFpzc3I3MTFiTjBOc0k0am5pTm50TXc5dHB4N1l6ODdZRThUbW1abnRaTmV6CjNkUU14SDZhc0oyY3RYK0Nxa0hiUDV2YThpbGgreW14OFROaTNmMnBsUThlTDdrL3liby9zK3JEUjZ3UC9zVDYrUWVzSDM2NC9PMzMKVjEyL3MyenNDbXYwVFlmekRVZXVLbmczQ25rVHFhRVRtY0UzQ3NLdUYwUmV5V0t5NXVrQlJJY08vUTVHRDNYTjFFK0l0WkUvaStnSApMWUhOMzVORk1RaU5BaHBMT1h3aG1ad21FQWNBQ2hoTFJxdGdYelFNK3REUlEzOW9vUjhMQTlIUlF5LzhmRkVBTGE0ZmF3YjZhZ0NFCjFyKzZPWGd6bDNsNUMzWC96Qi9lT0U4LzlGQUdjaGpsRmV1VHhuV25yeGxrWUtDYk90bUVYbnFuVFVGVmdHNjNWZDl1cThYbmd2MXcKc0pWNDlQampUejc3NXNzdjI2eGE4dno2cGF3bHJQV2VYbzYxMmxXZGZiWTl3M2I2bmkwdEhWdDA3UnUwK3ZWdHhnMGRiVnUxcmR2cgpXci9lUExUQzBMbG1xUE9ackxUbE5wdldybHYyNHZvTlMxZXcxbTIxdVhqK0RQSDRTWU5Ddm9URldydHU1YW9kNjJ5WExyT3gyL1o4ClFiYnRRTy9LQnVOeituN2JadjIydGc3N1pzT09sdFlkK25ZN2ZTdmMyZEtnZTdHNWZXdDM5NjVLK2Rxdi9ZZk5wblViTnk5ZnptS2QKRERoQ0VNU2pQL3o2emFHdVM5cmFHOXJhOFpvcXRQOUxVYWFUbnFxV25xNldGS3ZFK1FweFFWVjVmckU0TTd3eGJuY1BtakZOajFzNwpCd2RlUlBFcksxeEFYUFFjaUxNT0tjZFJ4NkdDM2JPbkJRekVjZEx5SEZ1NGprMDhwM3ErVXkwRWpWcDJxVVdqbG5IUUFSUm0ramhWCmM4MUZJTXBBcUVMakpRbjNPUlhzbng5MEtCL3QvOXBmSEhLZ0tPeElZVGpvaHdMUXlhSndySjk1QU1ybUFJQ09GUE84cFVJbmRUU1QKUGxZQk5HY2dkUnpFdFRvV3JwMDBVVTRhOG9ldkVUbzJoenUxUktEZ0dZa21BNFZhdXVlZkRhQTliUnd2QTNldkRpNjREa2JPMFFaZQpvanlxU0JJTEFKSlVJZ0NaOVpNQitzRUFVa2tRZ0pSbUFJa3JzaXZMczRwUFpXU2RTczhzU2N2SVN4QVZSaCtyaWtKbllqUnhtZlQ1Cit3R0kwczhjZ0tocFFCU0FmRHNTbVFheVlORGZBcUFEL2NsV3c2UVBEb1lPTS80RGlSQk1IN3dRaGdIa054QnZOVjhhUUpZR01oLzEKd014ZTJrSVk5ZEJqVkhTZ0w4cXZUK1EraXM0aTVyYkVGTXRqTmVMRUdtVWExaytUSXFORmxZV2l5VzZxem02dXp6Q29Nd3lxN0RwTgp0bEtUWGFQS1ZpclNUa25qaytYaGdjM2hibDJtSWhBZUJlVFVFZXJVSFk1M2dXRUd2YXc5QmdCQ2JVQU1BTGwyZnlrQTlTUDllSUYrCnVubEh1dm11NXd2Ly9SZmpPNGxQZGt6T2Juczh1ZjN4NDJlZVRML3doSGhtQ25VcmJ5Qm1OeEdUR3lhUmpZQXlObitkWEQycVBuQk8KRkRTY0dEU1VlbVFrNWVpWitPQlJVZEJRdE5jVnlUZC85dzdRNXhuaXlaYlpLWnZwMlUwemFCMXR4eXl4ZlhwbTI5VDBscGtaMittcAp6VE5UdHJQVHlFQ1BacmJjbTkxNWoxZzcrV1R0UTJMRFo4VEdqNGtOZnlYV2ZEek4rblNhOVFuQit2TUQxdnVmTFAvcEgxZisrSmVzCi8vdzU2ODMzV0pmK2E4bm85N1oyNkIzUDFJVk5WQXF1NWJJbmNzS3ZGN092Ri9FdWYvVUFvcHArRmdGUXNMV1N6MEwwd2ZyQkg1bDkKT1FmT0pXSUFrYU9WWXZFUzJKRnpDWmErK2J3d2w3Zm9ZUUtJV3ZPaUF3Z3BoMEdmcndSQVRQMzh2UUhrTVdoYXpGb2NRSGdqRXIwVQpoRCs3K3d5dlFKY3dwaTI5WnF3Q0F3R0FycmRJdm05VTNHNVgzK2xFZThodkdkWHZkRGRkMXlwdjZxdi9kR3VjbUNUNiswYkFQWFpyCldNL1lzRmgySzc5ZW1MdWxlOEJXcDl0dU1ObzNOMjAzYXJlMUc3Zm85VHUxYmM4MnRPM1VxM2NZbW5lMjlEeGZNL0I4YzkvelBhM1AKcEFydFZxMnpYYzE2MW1iZG11Vkw3Si9ibVZ0YWJHOWpzM25OeW5VMks1NWpzVlk5OCt3THVZWFB0M2R2MUJ2QlBYWXRocTNHcnEwNgpvMzJMZm9leGRZdFdCOWR3WjcyMlkzMXJQNnUxOTluQndlOFVaRzJ3V2ZQaUtwYjlwdVZyTjYvNTBUcy9JcVlmdmpOK1preGJONkd0CkdhdVducWtXZHlwS1d5VDVLc2twZFdXaHNqSlBYcGt2TDhzdnFjeU1iSWh6NnVGUVMxb1dxMXF1Qmo0OUxucWVzNDRMY2RLak9CdDQKT0hCdGtoRFFwNFhyME1SemFPQTcxdkVkYXdUTzFTSTBqWkFzQlRuWEFIYzRXRHk0MThlbGx1OWN3ME1oRGVTa1J1dGZ6aXFCZThWSgo3K0pBdjl6QWcvbEIvb1hCdmtXaGZvWGhCd3Npc0g2c0F1aEVQaHNENkdRT0J3RGtLUlU1bE13YWpRQUFnQUJKUkVGVVZzY3c2WVBqCnBCSXhEWVFZQlByUnhBT0FJT1FkVTVPUVkxTWtOaEN1QXpucHdweDBJUkFLUXhaaEVtZnhXUHJHSEZjak90MmRHU1o5Y0hhM3p3Rm8KVnh2bllBTTNUb2tBSks1QUFNTGxIOUNQSllERVdRcEpGZ0JJSnM2V1ZPWUFnRXBLczdOTE13QkFXWGtKTWZuUng2dWl2QkdBL3FGTApZUE1BdEEvMFk0NVBheUlWZU9nTERDTGoxNUdDczc4emxWa0hNa3ZJT29Eb29XK1AzOStieUZUT29nQkNtVmYrNlk5RFlkU0VUSldoCkFldGhrc2dVOG5CZ1p1aEltZ2NteHJremk4ZDNPQVoxUTVPVEF6MkgwUnlkeE1hb2FuRk1yVEt6WHA3UlVKWFJvRURGbnZycW5CWk4KYnFzcVQ2ZkowVmJuTktreTYxVVpEZXJNaHVxc1duV0dXcDZTVlJVbDFBajg5ZXhkZmVGNytzSzhPc1BjMjBPKzJ4MkN6OFRBblVDNwpqTWRmMHg5N1JYdms1ZVpEUUtJOUhTSEFJOVBRWjNMc29STTVJZGU5bTR0RE5ZcDY5Z2hkZXdWdWZYUGRQM2dybkZldjZPQVFHZ0d3CnR6L2F2NCs3ZnlqNzY3Lzh3VXFDK05ya1o5dW1acTNtaFVmZ21BYzdaaDl0STZiV1B5WldYUHZodHpxU3dzYVMzQzlHSGJpUUVUQ2EKSERDYzRIbXI0Ym0vL042R0lKNmRudDArUFFYWk5qT3pmWFlXMExObEJ1UkUyTTNNNHZMUGxrbGl5K05aKzBleld4NFFrSzMzaVMzMwpwemZkbTE1M2oxaUY4OG5zOG84bWwvL1BnNlcvK1pqMXE3OHMrZW1IUzM3NDJ5VjNmNzcwNW4reExuK1BkZUhPOHI3cmExcDdYQzdVCkNtOW44NjdFaEYwckRyeDhpbnNqbTBrY0puU1k2S0ZmMDdsRHY0TkRvUWNEQ09oejhtSUdKUGhpTnM3SjhTeEkwRmdtem9ueHpNQ3gKREp6akY5SnhBczdQVllEb2hSbVFCeldsOE5DWmhQMURNWWZQSnFMR29ITkpSODhsVUpsbkhkQ010UVNjUzZiQy9Dd3pSK0YvMnB3agpnQ0Z6TUlPWU9UQ1M0RDhjajdOL0tBNEhmci84QitOdzlnL0VRa3duZGMrUGIxODBGWisrS0dyRUN6MCtQYUs5M1VJYzd5NEJqbGNuCkFoQ21EeU9vRFFYM25XRDZ1SFJFT3JlVGV3dDYyTmcwWnRCWU9VMlp5djRlNGI1ZU5CNEM3WXNjUUROQzRTYUl6WG1FazkyWlBLWTcKL1haTDFZUk9kdG1JamdPN3JhdTYzYTU0eTZoQ0hkQWRtanNHeFYydDZtcGIwKy8vOEN0aVp1b0UrK1JhRm12bnR0V2JXVXVYZXgvZQozTisxczZWNXE3YlZhcmEwR0hHMjZkcnNtdlRiOWUxd3dUb3QzcloyNmRvTlMyMDNyRmxsczRxMW5HVzdjYlhkU3RiWFdTeldqbjk3CkthL282KzBkYTQxZHR0cUI3UTFkMjdTdG05cDBXMXJhck1hdXVtZUxzZjM1OXM0bG9TZTNzRmd2cmwreWRBbXJxbEkyT3p2N3dVL2UKdmRDb25HaFVuVlhMK2xWVlJtbXB2cXFvV3BxcnJzeFhWaFFxSzRvMXB3c2tGWm5DbWdSWHRET0w2OXJCZDBiNkVYcnBCUkNIZHQ0cgpQWHczb3dDQzZUT25IeTBISFppbFk5TkQ5djFFb2hHQ3FQV0g3Q0JHQU9MaFpTL1hHanhxMlRKN1VEVkk0SzdpdXlsNVNEL2tUYmoyCkt3cjJMVHk1dndEbFFFSHc0WUtRSTRXaFI0dkNBb3FDSVlHRm9Yajk2MlJSUkVnaFNsQmhlRWdoT3lRZk5VRUhGSEVPVkFpOTVOSE8KNm1obnBRZ3lyL1pqdWhOdE5laVBXSXVES3NPcE90bTVRZWphRXVtaUQzVXhoSkdWTUw0anVVY01ueUZ2YmdCQ084VmNER3htWEJudQpvY0lrRGxJTzJkRnNOVXo2NEhqb3VXNEdMbnpFcTJEd1E0Ylc4b3NrMFdKeGdsU1NLSmVrcUtScEttbUdXcFlKK2xGS3M5UVNNbUpnCkVHQW9CejdLSzdPcktySkt5ckpPRmFjVUZDZWxGeVVtRnlZSlMrSU9LUVc3VzlsZXpkR2VUVkhNekFPUUdUMFF0OFlvU2o4dTlWRVEKTEI3bnVtZ3E5SzN2TGpWNC9kRXlKZ0RSNmJNSWdGQVlkU0N6Z1Q1SFAxOEpnT2dIWW1BQU1XdENwakRvOCtVQXRGRG9KOGsvVFFCQQphRE04V1JtQ0MvOWVVVnhUbEVLR0FBVDBhYTdLYkpSbk5xaXpHelE1T2swZUFFaGZuUXRCMVNCVkpnWlFuVHFqV3BGYVZCV2JvQllkCjFyTFJNT2lCY0krdU1QZk84TmQ3dytnQTJ0MGErTG9oQUFQb0ZmMXh1QW1mblFOUUx4dTl4MTBBUUtBZmV2c3pOUTdBSGQ2SUR5YjQKOVBQOCt6Ty8rNk5MbXgvOTcvT1BIOWxQRTB6NjREenptTENmZkdUNzVOTXR4SlQ5RExIeHYzLzNqYjZLb0tIWW8yTlpCMGZZUjRlaQozZThZWHZ6NDE4L1BQUDc2azZtTlUwZy9xT1F6ZzRJQkJQcEJRZnFac1g4eWkwSUN5UDcrTEdUei9hbU45NmJYM0pzRi9heTRSNno4CmVHYnBYeDR2L2ZEZWtsLy9IK3ZuLzhQNnllOVk3LzVxNloyZkxibjVROWJGZDFobmJ5MGJ1cmJDT1BEdHZwcUlpUUxCOWNUSW02ZE8KWGozRnZwYkp0TTdUQUFnYnlDcUE2UHJCNVIrcTZqTXZOUDNRQVVUcGh3SVE2QWNEaUY3K29Tb3h4eTZrNEExWkFDRC80Vmo0aUVjMgowd0UwejBBTXl1QXNSQjg2ZEt5R3JwOGoxdlNEcXo2VWZyNG9nT2o2Z1REcGc2cytsSDRvQUNIOWRETGRReFdCVEwyM0FDQ2dEd1lRCkJBRGsyY3Q1ZWdEaFloVytwa3BUdm4waWp6NU9jVWZhUlgwWkFPZzZhZ0NTWXdDOTJTWi91MDN6Vmx2MTdjN3F1NjJxSHhocmJ2ZTMKUFh6MDhiMy8vZk5McjcyOGpzV3l0MW02WmUybVoxT3pOM2QzN2pRYW1QUmhBc2kyVVFjZnY5WTlBQjl0c25oYmxtM2N2R3JscGszTApONjFrUGJ0cXBjMzZEVXQyYnZ0YWNkRzM5UzEyN2EzcmdVcmEzbWZyT3A5cE5ObzJOVFBwZzdPdFpkQzJXZjlDUjY5Tld1cm1WU3VlCld3T2FZZ1VHQmhBRThkZmYvdnF5dm42aVNRMEE2cEZMREpKVHpaVUYxZEw4YWhKQWlzcGlUWGxoVlVWT2dpWnh2eUhLcFpQcjNzNzMKYk9ON0dma2VyWHhYTkUrUDU0ejJjQ0g5ZkM2QTV2VFRFa0UyUG5NQlFFNjFjd0JpMGdldmVWa0JrSnJ2THVlQ2ZpRCtoY0dRZzRVaApHRUFRQktEQ1VDc0FLb2lrQVlqblB3Y2dFRS9VUE9JdzdzejdyQ3JXYXB4VWljNmFPTlFQMUJqcHFnMXowWVZEblBXUkdFRElRR1JMCmtEbWhaS3RRSk5OQXpndUVFcEtsZ1F6V2cxY2ttYUVEeUlrRVVIQXRQMDhhQlFDQ0FJQ1VrbFMxeEFRZ1ZBRXlBd2owZ3dHa0lBRjAKNnJRSlFCbkZTUUNncU9LNHd3cUJnNUhEcEk5SG93anlWUUdJU1I5eUlUS0t4YVFQQlNEckJySzJGb1lCWkZVOHpEdC9PNEJNQnZxWApBaEFFYllZbnEwRnc0ZGNuRXJTSVNoVlJOWW9Nb0U5TFZhWldudFdreW03UjVCclVlUjJxL0xiYS9OWWFWQWRxVm1kQm1xcXpnVUUxCnlyUXFlVktPSXZwa0V4cTk3ekRJZHVzTmQrMUVCNTB5QWZTcTd1aDNXdzUvcCtVb25vam8xSTJtKzJNQW9VMHVDd0NJdnZVZDB3ZHYKZ3ZNY1NIQWZFUjdvalhlNDJiUGh3U01iZ25qbTBZTnRUeFlHMFBUc2pobkNubmk4bFVEemV6Yjk2U1A3MGZZVHZmRW5CbE9DUnVQZAp2MWU3ODlNUE5xT1ZMK0taNllmMjA3T1lQbVlBb2I0ZmMrM0hwQis3eDdOMkQyZnNIaEsyRDJadDd4TTJEMmJXM1p0WmRXOFc5TFBzCjA1bGxIMDJ5UHJ6SCt1RGpKYi80TSt0bkg3SisrQnZXM1o4dnVmM2ZTeWZlWlYxNGkzWG1qU1ZEbDFpR005dGE2Z011bEF0dlpFVGUKS0FpNVhzeSttbTJWTzh3N1RBQlppTWVxZmpDQUlCZzlwdHFQR1VCTS9kQUJSQy8va0ptbkh6cUFxQzNvZU5VSkxsQk5hRDZBNWlURQpJTTRYRmM4aStyRUFFTFhtUlM1N3hlTllpSWQrelFTUWhYNllBS0tXdmF5WGYrWURhSDQzTHRwMlJBRUlHd2ppMGNOR0IzSFFGcnlRCmJBWVhQTFFjZnBmUm5yVSt0TUFOQWZwZ0RCM3A0TW82c3E3b0syKzN5RzRZRlRmYWxHL281YmZRc2ZDeXUrM1ZkOXByYnJXcjN6WXEKMzlHcDMrZ3hFTVRqWC96MHZ6ZHN0Tm00ZHJuZFN0YldGNy8remVhR1RkcFd1eFk5a3o0NHVPUURIM2NZVUJQUDVnWXRQSVRyWjNxNgpiVE5TN0pmYlBMZVN0WFBUY3Z1Vkt6ZmJmMk5UWmZITzdnN2JqdFkxelMwYmdVMU43ZHRxamM5b08rMWFERXo2NE5qcmVqZlh0K3hzCjdkc2hWMnpjc21YbjZ1VWJscTk0OGQrZi8vVGVaL2YvL01kTHVycnhHdG1Rb3JKTFZxbVhsUUtBYXNSNTFhajhVeWdURnlNR1ZlUm0KSzFJakd4TDJkS05kNi91TUFDQ2VTenZQc1lQbmJ1VHUwM0taaTE4WVFOUTFqVVRrTWFMa3ppK25ldFA2RjFvQ0l3MWtWVDhJUU5WbwpnY2xkS1hSVkNweFVhTDNNVFNYMHFPTHZLd2phWDRBQUJQbzVWSVRvZ3d4VUVJSjdnTXdBQ3FjREtMU0FIVUtlZzNHTUJKQ25JdHBwCk1RREZXZzJUUG5OUlI2T3Q4clY4NTNxMmExTUVNTWhORjBvdWgxRUp3eUZYd1JDQXJCcG84VHdsZ0VBNVZzTUUwSWw2ZmxxVnFGd2MKVHdGSUk4MEVBS0hGTDFtMlJrb2FTSnl0a1pnQXBCVG55Q3V5U3N1eVNrdFNDNHNBUU1tcGhhblJSUW5INUVLUXJsWDkwQUZFWC9heQpXUCt5Q2lDNmZwZ0F3dnI1bXdCa1lTQ3IrbUVDaUxyL1JRSGtQNUFNK2RjRkVIWVBBQWl1dllmUkRwZHdveWlqUnFSUnBEZFVaZWlxCnN2VHliSjB5UjZ2T2JkWGtkNmtMT21vTDJ1c0tzSUcwNm14dGRVNmpKcXRPaWI2NFRCWW5xT2J0Ylk4RUFEbjNSYnAybzFOT01ZRHcKZ1JoNzJrNVFxMkRmYmpyNGl2NFkzQ1FCWktvQUxRSWd0T01kbDMvTXg4VHU2NGVmTnViSVVJSkxmNWpUWmMzemYveWZ0YlBFT3RUbwpRN3h3ZjBFQTJUMTV1T01Kc1lXWTJrWVFXNmFlMkR4K3RPTGl4TDdPOUtQRDhkN2Y3M3JoNFovV2tMTU50eitac2lObWRzd1Njd0NhCkpqQ0E3S1lJaUZrL003YVBaalkvbUlWc3VrOXN2a2VzZTRBT3dWaDVmM2JwdmRrbEgwOHQrZk1qMXU4K1liMy9seVUvL1FQcnZ6NWcKL2VDWFM5NzY2WktiUDF4MitaMGxaOTlrRFYxakRaeGxHY2JYMWhqOHo4ajVOM0pDSnpMRHJoVnhKOUE4YU13ZENqUk05RmgxRHhVbQplaWozVUswL2RBQmhBekgxYytKQ0JtUUIvYVRSdTNBc0FJVDNXK0Y1UFA3RGFPVGdJZ0JpSXNacUtOQXdQMlh4QlRpSFIrSnhyT3BuCmNRQloxWStGZS9iMVJ1RlkxUThGSUF2OTBBRkUxdy9xQVdxUFJKdXVTUUE1dDBkQVFEL3d1K0RaeTZFQWhBMjBPSURjQjFISng3OWIKZUxBWHRTNTU5UXZoanNlUUtNb1lyZTBvdXFHWDNXcVczV3hWb3Voa2J4cmtOL1FTWEFFQ0FOMXRWZDFwVmx4dGE1cVpmWGp0NnNUcQo1U3MyckY5bHU0eTFaZGRyMjN1TjIzUmR0dnAySm4yb0NoQzRCNElaQkJlMmpUcTdKdjFPL1prdGd6MTJDWUp0NnpldFdiSFU3dmwvCnN5L01mYkcvMzBiZnRVa0xYNGJrWks4MWJ0SWE3TnE2TmpEY1F3VSt0YjNadUVYZjk2ek91UG5mdjdsMTVVcTd0ZXRzZHF6NzlmdS8KSlo0OHVObXRQMThqR3lZSFFHc2xwYzJTd2hweFFVMUZvYXF5U0NvdGtVdUtWQlVGRlpLc2RGV2FlN3ZBdlpYdjBRcjY0VGgwY1J3NwpPUUNndlZvT3MveGpBU0JNSDZ3ZmxDWU9ibjlHWnptaEJpQVVzdC9aaW40Z0RpU0FBRDNPS29HaldvQXg1Q1hoK2VYUEFjaTAva1ZtCkRrQ0Y0V1lBc1NIQkpJRHdRV0FBSUw5S2tic2kya0VUNjZ5TWdjd2pEdVBPZkFERld3MzZyRExlV1JIbnBJeHoxc1M0MWdsY205aHUKTFJHNDlFVTNrTGtOeUFTZ3Y5RkFEUGQ4RG9EQVBZQWVkS0V6TmEwZmJlREZLWVZsRWdRZ21SbEF5RUJTMUFCVUkwSEJBTUlHQWdBcAowRWF3N0xKVGFZVkZDZG5GS1drRnFmR0ZpU2VrVVc3Tjh5cEFsSDRvQUZuMC9WRDZ3WDAvVEFCWjZNY0NRSlIrRUlEMkdoTWdWdlZqCjNVQUxBR2loOWErRjd2K05BSm9qRHBNKy8xOENDTVFEQVBJWlFzTk84TDZ3Z0U2UnFFbW9VS1RWeXhHQVd1VTVCbFd1WHBYYnBrWUEKNnF3cDZLb3RCQVlacTNPTjVISVlTS2hKaFFwRkNrbENzb0ovUkkrT2hVY253M2VqQTk0dEFFUVZnYjREQU5JZWdZZE9IYUV1WGVHZwpKYmNlTnNxaUFLTE9pUFV4QStob2I3akhVTGI5KzIvYlR4SmI3MDJ2ZmZJUStMTHowY0lBbW42NDVURmhPLzFrNnl5eG5YaXlpU0JZCjE5LzlSbXVKMTQvYW4vbnN0eHRJL1d4Nzh1aVpTZUxaS1dMajdHUDdhZFR2RFBTQmJKMmFSVTAvazBnL1FCK3NId3dnME0vR2U3TWIKN3MrdWVUaTc2Z0d4N0Q2eDlKTnAxa2RQV0gvOGpQWCsvN0orL3NjbC8vVTcxZzkvelhyN3ZhVzNmckowNHQxbDQyOHZHNzNKR3BoZwo5WjFoNlM4dTF4ajNuVkh4cnVlR1hza0luU2lNdkRwdkVqUUd6ZUw2b1lvOTFFUE1uYkFyZVRpaGwzUHBBZXZRZTU4eGc0TEcwNjNxCkIyS05QcWxrck9nSDl3QlJBSUxzSDRvQkE2RkZzYlB4VnNPa3pPS3krZHhROU1GaHVNZlU3MnhWUHhheHFoK0tQamcrUGFqZEI0ZTUKN0RXUFBoMDhaanphdVRpdWJSSFlRQmhBNU9JWHg2TUhuVGJ2MDQ5T3BLSkZaREdMaUI1ME9FeXZZSCtQY0g4L0duenFNaWh3N3hjQQptTW9ONllNZEZTQ2VtNmdDcEVLNzM3WFNXMFlaQU9ndG8rcDJxd1lBOUc1WDdmY04xUlB0elFUeGVHaG9ZUDJ5bGVzM3JMSmZ3WHJXCjNXMVR2MkZiYzdldHZwTkpIeHh3RCs3K3dldGZPd3dkK000ejlmMklUVU9HTFNseG03WjkyNzQ0WjN1dndiNUZ2NjI1WjJkTHovWkcKOUdkdFc5czJ0YmJCTjdkdGFHZlNCMmVUdG5Xbm9kMVcxL05pVzdmOXk2L1lyVmh1dTNiMUd2dmxiMy8vQjhUTTQxc0RiV2Mwa2tHbAp0RlZhMFZCZTFDd3JVb2tMQVVEcXlpS1pyRmd1SzY0R0RJR0JwTGtCelhHK09xRnpHL2YxamtpSERyWnpHOXUxbGV0aTVHTDZmQzZBClRQb2hBWVFPa2FnWGtKdS9SQkNUZTJqREJ1bERDQzBBQkhjODVJSzlsVnpjL2VPZmp4cUFEdVVISHlrSUFmMGNLd296QWFnZ3pBUWcKVWo4bUFPVnpTUUJ4anhUemZTdEZic3JZUFFzRENDanpoZUttU0hLV0p6dFZwVGpLVTV3VXllUnlHTHplODAwQVFwTVNxZnp6QWVTcQo1d0NBNEtHemdYT3dpY2ZUQ0FCQUZaSjVBTkpJVWZtblZwcUREQ1JHK3NGQmg4U0pjeXJMY3lwSzBvcUtFd0ZBNllVWkNRWEpvZUtZCnZRMjhoUURrM2lDa0JSNkszT3FGRUh5QnZGZ25jS3VMZ3JqV2lseHFoQzQxVVJiQi8xbytCMEFXQm5wS0FORU50RkFUdE5XYlh3SkEKRmt0Zy80b0E4aDVHbThMZ3dzZmNCeDFxRUVvVUtkWHlkR0FOQmFCV1RYNm51cUNiQkJBd3FLMDZyMVdUMjFxRHVvSzA2bXlkSXJ0ZQprbHhZSlFwdDRIaDJScnIwb2xVdE9vQWdEdTFCOUNJUUJDN2dwbk5uR0RwQUF4a0lQZDFiQnhCSkh4d2ZNNEFnZXp2Q3Z2WE8yZlgzCjc5dE1FZHMvbWRyMitQN1dtUWYyanhjRTBBNWlldnNNQWRreE0vMy9xTHNQNkxiS0JPSDcxM1o2TDQ0VEVoamF0SDFuR0NETmNVOGwKRFVnajdrV1dlKytXMVZ6Vml5Vlp4ZXJObGxzY083MzNUbWRnZ0JsZ1lOaWhRNHA3WE8vM1BQZksxNHF1YkpqWi9kN2Q5NXovOGJtVwpUY2l5eWVqbnAvcU9EaTBBQVByb0g0L2RPUEhrYUxjZkNsWDAyTkRZeXNFeG9KOVZJMlBMc0Zrd0lyL2hDZjBzR1JpQjlPa2ZBZnBaCjBEY0s2QU9hMTQxaWsxK2pQbDJqVUQvZjlpRmYzRVArK3EzWGgvLzBldmZ2eUp1ZndGTVFMNy9yZmZaMUgyejFqMWZMT1ovbW80anUKK0RTRmZzdHhPQUlVZGJFNDhoSXIvRnpoWk53aDY4ZDFnSWNNSURmM2dNTFBsb0p3OUxnQ0NPZ0g1akx0UmVobjM0bko5SlBudWlmcgprZTFYMk1DUEs0Q0FzTUVEbVQ3T1NJTEIrMWNCNU9ZZU9QYlRrYjVyVXYyazdXelBBTzA0bEk2M3ZTME5iekw5dUxuSGpUNXUrbkZiCjkvT3orZ0VSK2lIV0FHSERQeFRuYloydDhBSnpBa0RRUUsyZWcvc2JXcE8yWVErQmg2bWhyWWw3SE1tVXBreWJyZUs4VFhUSEpMMXEKbEFBQVhUZExyaG1GMXl6QzYxYlJUYk1VQU9pYXJmYXRCc1U3VnVXbEJqMEEwSkZqaCtkNSs4eGZOSFBwTE85bi9EZXNiTE10MGpVcwpNVFNRNlVNQUNLQUhuLzhDclREWjhTVkJqK3ViL05UbVpXMHRxK28wdmlybDQxcjlRck54bWRIaXAyc0FMYWszTHphWWw1cXhkZE1xCjg3UDFUV1Q2T0RQYUFac1dtWnFldGRoVy9QNzNTMmI2TEp3emMrN2k2VGZlZUFNZEhicmtNSGRJT2MwaWpwbFhYVmRGcitleHhIeFcKWFExTHlZSDZFWW5LbGJ4eU5ZY3Q1N0Z6YXZPaVZWbGJqRlIvYXh6UVR4QjJuY0lhU3lKWlAzZ0Jwc1FOUnZEMm4rRGM5RDRlcGgrNAo5WDE5SGY1bWhxSEhCVUN1K2dHQjk3WkFXVW9RdGkxcnZRenV6QW9USlczbVVMWXpEd0w2QUFEdExIdU5BTkFlWmlTZUUwQ01tQWtBCjBlTWdnR2dKcmdCYXJVakQrUklnelNBaTQrYlJNajBXSUowQTBEcEpwcjhzRGZ3ZkNEZjVZOHVlTmhoaUFveXhBY1lZSWxjQXVSb28KME9TNXlReEVjbyt6RUJPYzV5SVhCditmQlk4cUFBQUtnZHYwNHJicTRnOHFLVldDakJwQnBvQ1hnd09vamwra0VKYUNWRUlhTkJBUAo1aHdFNHRGcXVhWDhHaHEzSWc4QXFMUThyNWhabE12SWorS2tiNjJqZU5RUEdVQzRmdHdBQk9nenJoOTNBSTNyWndKQXJ2cUJBTnBvCnpuQXprS3QrUEJqb1VRQzVHQ2dMNU1vZ2N2OWRBTUszdm05dnp3UzV1K2QvTVlBMmRhWnU2UUQvRXcrWFRBWjNRZ2E5MGtDdGtlUkkKSmZsNmNiRlpBZ0Zra01FMVFEWUZCRkN6a2dscVVOQ0JnZXgxY0VtUVJVSFQxNVlaaEFWQ1FRYTFMbjZiTlNha09TNndOYzROUU9zYgpYZ1Bjd1FlQlhqUy9naHNJZU1pLzhXQ0FJOG81RGpRSmdQREM4SjAxR0lDZ2dWcVNuenNsOFAzbVU5OCtkRjR2Q2x6eXhPREFnckVlCnY4a0J0R0p3R0ZEbThWSGdtNGVMUjlERncralMzZ2RQRHd6TVJ0R25odEduaGdhWGphSXJCOUZsdzhPTDBNSEhSN0QxenRpZUwxL3MKMkVPZ0gzemIxOUorYk95bmYyUlJMOVRQdk42eHVUMG9hSHJYeUxRSG8xNTNoNUR2QnBBdnU1QlBmdkQ2NEQrOTMvc2M2dWYyUjhpVgpQeVBuM3ZRNmVjdTc4NHAzNjNtazZkUk02eEZFZldpK1RyUGpIQy9oU2tIc3hkTElTK3p3QzBXNFpuNFdRSzc2SVFBMG9SOFNnSEQ5CkVBQWl3cWZBWEFIa3FoODNBQkg2d1FIazZoNGk0c2hCL0FFSEVQalV6VDI3ajZiamtTbUQ5MThFRUs0ZkFrQ3U5Q0VBUk5ZUEdVQy8KWk9DSHJCODNBRTFOSHp6bi9pOWJOR3hjUDJHdGlRU0E4SDRXUUhEclB2YUFYMzBEOUZOa3oxWGE2YWR0UWdDZE40eXlHeGJaVmF2cwpoa2x5eXlTK1lvVUFnczgyeFZXcjlJNUYrcFpaY2NHbUhScnV1WGI3eW9KcFBuTVgrQ3lZZy96cU4zOTR4bXBhYkcxWmJtb2kwd2R2ClNiMFJoQS84NEJOaE9JQ1dxdlNySEMwclJPcTVEc2RTbStNSm8yT0p3UVphYmpJdk5WbDhMWFkvaTJPNTNnNlF0RnhqQVY5MWR3K1IKMXI1SWIxeGliWHlxVnVhMzhyRmxjNzNuenBteGF0WGlMNzc2RmgwYU9HUFRIVldLbTRSY0k3OWFXYzJzNDlENXduSUFJRTBOV3lZbwpCd0NxNDFmVmM2dlV2Qm94bjBrWEZ5WFVwZTNVVTRJdCtOaFBZb0NCNnVZZU1vQnc5NnpUeGVHNUFRZzdYTWZ6MkE4ZVFFOGdkbG9QCkFOQmFHZHl1RlNxa2JxMUtBUFJ4SGY0QnZjcUlBTGtBQ0I3OTdBUVFJNTRBMEg0NkJOQVdIdmcxcHdhUU8zRitwdG9NZnltYy8xcGYKbXdwK24ydmxDV3NVY1d2cjR0WnFvdFpwSTEwTkJNK01oc2RHZXpZUW1UNGVBVVFZaUV5Zm53VVFRQThBMEVZRE5ocGtpUWNQZXpXVQpTajY4RTU3UGR3SklLU2dHN2dHcEJSTUFHamRRR1RDUWlGTUtBTVF1endZQUttRVU1ZEh6WTJ2U1g1SWxldFNQRzRBSS9Vd0dJT3hvCkpZLzZjUUxJVFQ5T0FCRUdjZ1dRcTRSY0FUVDUrVUFRUUZNejZMOENvRzJ0V1NCWEFPMDRESE5paUJTWlB2OGVnSWdkSzI1aEYxbi8KQzBIM1lBRGFpaTJURE9yRTlvSTFVYXNrMldKeG5sWXlBU0NqSEFPUW5ONVM1d1NRWFE0QkJBSUFxbGZRVGVJU3VUQTdVNTZ3MHh5egpzVGsrcUMxK2JYTXNBQkJoSUFKQUFEMXJySHYrWk5qMVI5MHVnQ0h3T2c0ZzBHUUFJc2FCQ0FEaGJ6OStIOTlZK2VQWDgzdlJKZmRRCjM2R2hPV2dQY01rS2VEK1hPMzN3Vmc2T0xSNSt1T29oK3VUSUFEelNjQUJkUG5nWHpudzlIUFliUmg4ZlJNR1hGbzROTGtVZnJoZ1oKaFR3aUFRam9CN1NrYndRRUFJUVAvOHp0R1FYNm1kMHo1bk4veVB2ZU1QTERBUEpWTC9MNVBlVERiNzNlKzRmUFc1OGhyMytNWFA4QQp1ZlEyY3VhMjE3RnJYdTBYdlpyT0lnMG5mTFR0aUtwcFdVUDlLMWM1c1Jlem84OERBRlZFWGNWbXJ5NlVSais2K2V0bkFZUWJhRElBCkVmcUJqWS85T0dlK3hwY0J1Uy85d2ZTREE4alQ4RTh1bVQ1NCtOZ1BmdTRPdmdZSUFHaEhaN3BIL2Z3U0FMa1ppRHpTUTQ3UXp5NVAKOU5tQm5mZmpFVUF2dGFiK0VnQk5UWjhwaG4vSTduSHF4emErQVg0Y1FDSE5DVUEvWkFCaE9UZDJlZXlsdHVTdExmQWJRdUZGWnNrSgpqZ3lGbFhiQnhydGhrNzZobDd4cGtOMjBLYTdaNUxkTjB0dG1DUURRVmJQZ3VsRjhwMEY1bzBHTzd3SzcxS0FIQVByN1AvLzJ4TkxGCjh4WjV6NTJIK0MxZXNVb3NtVzl2OHRQQkF3ODlCdWlEVDM3aDlDRkdnSjdVMnhlWnJYT3NsbWZxYmF0VWxzZDBqYXQwTGZNc3JTdE4KMmlWNjdSS2oyVmRuOVZOWlZ4bWFBSSttVzB6dTdobHZoY2ErekdiM2EyeGFYczcyWFRodjJWeXZtYk44bnZ2OU0zZTcrL3J2L1hoSQpKZWxVQ08zY0twT2dSczJyVUhJWkhCRUVrSzZLcmVDWFM4WHdYRVF0andNeWMyb1VYRHBObEJ1cFNnd3p4NiszVWdLTlNadlV5V1Q2CmtBRkU2QWNDQ0Z2K2pNMS93WGN5L0hUQlFFLzBnY00vY05vTEFnZ0VIbkFBYlJSQUFMMVVkZ0FIMEc1czdBZk9mekVpWHFHSGV3QVEKSXg1V05nNmdzb1RkNHdCNnNTNEQ1MHVBTkl2SVhUYnVaWGxPbG9LTlVTV3NWY0Q3eTFZcklrQXYxRVdzVmtXc1VVY1NCb0tuQk9tagpZTTR6bzkxekhTVnlHekVpRzJnS01BVWI0enptQ2lBNEdtU0JpNEZlcmsrQTE0RmhBSklJM0FHazRqdjFvK1RURkFJYUFTQitaWDRGCkJxQlNaa2todlRDaEttTm5iU0taUHFUaG4vOFNnTWowQVlFL0cwNEF1Um1JUEIxR0dBZ0FDTTl0Q3N3VlFKTkp5QlZBWk9MZzRWZWYKNHMrdVJ5UHVBT0x4RkprK1B3TWcvUFFnVWkrMVozcU9SQis4c0U1c0xYT0g4eVlqOEFBK0JTL2lwN2ZoRnh2aDRkK3dHVHNSMGEyTgpoNUppTEtrQ1NaWkpXS0NYMHl5eU1wQkpRV3VXMEpvVkRBQWdQSWVDM2lndncydXBwV2tWSlhYU2ZLRWdNMFdaSE9pSWU3NHRhcU05CklzQVJ2YUV4eXI4aFlyMDlmSjN0NEZycmEvaEtJTmVKc0JkTis4QlhvWDZhWTRLYTRvTmNBQlE4dmxBVWJvTnZqQWxyVGR2VkZCZlcKa2hyU25MS3RLZUlQRitVekhnek83b0k3endGSGx2V04rZzJNTG5zNHRteG9kUGtRQ250RVB5TWd3QnFQTFI4ZEp2SWJHU0VpOW55TgpuL2N6Q3JlN2Q0OHU2VWV4ZFQvb2dtNTBEcHo1UXIxN1VhUVhuZmJEb004My9WNy9nTnUrdkQ3OHAvZDduM3UvOVluM0czL3p1dmFCCjE0VjNrUk92STUzWGthT1hrZlp6aVAyb2QvMWhwUDdpdkhwandDRit6Slh5Nkd1MDF5NFZSMTBxaXo5ZmpQdG1DdVVRWDNLRmp1dHkKSHh3NlB6c0NOREgyZytVKzhITTgzNjA5eC9Md1hqMmFDeUxyeEltUHpxeWRIWm5PSmNiWVdUdFE1NGRTZDNWbUFCNjljaXdiSGxIWQpDV2UrOEgvVzlkb0sxMTd1eko2czNSMVpIdHQxT0pNY1B0WGxOdUZGb01mMVU2Z2ZsN2ExcElDMk5pZmp1VDV2YVVvaUNzWE9OaVJXCi9HeHFUTnpZUUFtekp3UTBKQVU3a2tJYTRLM2dHeDNnbWVMdmlQZHZqZ3V5QVFZQkVzRkxOSU50Y0F0U2lEVWgxRWJaYUlrSk0wZUgKV3FKRDdiRWJIVUE4MUMxdDJBYXU5dWpRMXFqZ2p2Q2dEc3BHZThaK1IrS3U5b04vYW83YzFwUzRwUzFtZTJmeTVzYTA3ZmFNVncrbApiRzFKQ0d0SkNXa29DR3ZldjZzcEtzcVV5YktWV0MwMUY3WHlkM1hTbTlaYTEyNVk0RFdvMTgyU3E0YmFhd2JSNjJieG16Yng2dzIxCmw2MjE1eHZxaDc3N2ZHUmthSE5veUN3ZjVObTVjeGZPbUxrNFB0elhZVitnYTE5b3NmcHFqYjVHNHlLRDlqR2RmcVhadnRCa1cySm8KSUxiQi94dmhzMlo0VDJndFMvV20rUmJMUEtOcGtWcS9RbWRlYmpJdTFOZXZVQnZBdjJWSjI2SDVxY2tyWnMzOTlXeHZaQlp5TUQ1dApHQjM5NFpOUFR0UksyN21WVGJYVmFpRmMrS3ppMWNoNEZUSk91WXpMVW5CWUttNjVtbDllejRQcGVKWEs2aktkV0ZSVHpTNldsTWJKClNyY28wdnhOMjU4M1VsKzBVRlpiWXRlYVk5ZVo0amRBOThTRHQzbncvdnFpTnVOUHVvT2gxbGRlc2lhdFVjU0ZXcE0yMU1XdXFVdDkKVVpIMG9pSnhqU3B4WFIwMGpiODBOVUNXSFN5aStrdW84UGhCYVZLWU5HV1RORFZZaWsxNzFjWmpwL0trK2NzeTFzbmdDRTBvTjJVVAprNHFQQU8yaU93R0VELytBRHJDaVFhL2hqYzkvNFRlaGh0TmlJMHZqRDlBcHU2clROZ3F6QXlTNTY2VTVBWko4OE9CTW1rMjBRWnkzClFad0RrMlQ1U3pPeDBaMVVFSGl2eFlJTGtnQjMxc3Zqc0dMWEtEeTNUaG0vVGhVTFdxK084YStQRHRCRkIrcWpnK0JvVU5URWFCQU0KSHg5eWhsRUpCcDREc1NVNy8ycmtzWitwUzVGVGVkdzBSWFdXbUpzRDNTTm5pMnVaWEU1aExVUVBYYzFuMVBNWkdoNjlqbGNHMXdEeApJWUJxcW9xWjdEdzZNNWZHekNsZzV5VlZaa2RXWjRkb0UwQ2hPa3FvbGhwU0R6eVVpS01ub0Q0bFVKTVNyRW9PcmtzS1VzTGpEZGRxCmtsN1VKZ1hXVVVIZ0ZSRCs3RndUTmdtQVhPOWxjejJnMGgxQVpBTzVqd005Q2lEQ1FOc2FNMEZURzhodEJHaUtDQUJOMktndDAzTWsKK2t3Tm9Fa2owMmRLQUczckhML05FVHZCRmw5OENsNTBwWTlya3dIb2dDMmxRcGF1RmVYcmEwdHRFcnExdHN3c0wzVklTbHRrY0FTbwpWY2tDQVF3UkJuTEl5blIxcFNwcGdWU1FsU1ZQRG11SWd4ZnV3QVhPRUVBYkd1R3AwRTREWVFBaXpnU0NLNEdNZXdHTThKVkFiZ0FLCkdUOHdON0NOR3VhSUFmUjVxWm15dVNVTm5xdmJSbjMyVHR2TXJxRTUzU01ZZ0tCT3hnR0U2ZWZmQXBDcmZ2eUdKM2E4dzFYUC9aaCsKZXNlVzlvemlxNTduZGNOUkg2Q2ZhZDFqWGwxanlQMFI3Ni83NExhdnozNkNtOTcvL0ErdnR6NUY3bndNOTcxZi9nQTUrWVpQNS9WcApuVmVRUTZlUnhrNXZhL3QwUXh1aWJuM01xdHQya2g5M2xSbDF1UWdBS1BveVBmNTh5ZFFBY3MxdHBJY01JTmVCSCtLY1ExZjlrQUUwCk1mQXpwWDRJQUpFSFpvQitDQURocCt4c3cwN3YzTm1SamgvV0RQZGtnV2ZNUUJpWVBFZjJ6V1NSMFVPbWo1dCtYRWQ5SGhuK2VWUS8KcnVoeERhZlBaZ2NWNUtvZldBTUZiNU1OUGdjMnhQdmJZemMweEFUYUlrUE1FVnVzMFlIWVdjOXd4N3N0Qm5BSG9HZVRLWHFMT1dhOQpOZExmRnVWdmp3NW9qSVYvRVpvVDhMWTJaT3h1eXRuU1FnMXlSTWUxVVU5K1ZuWDdxOUpESCthOTNFN2QxSmF5dGlYT3Z6TTg5RWpNCnh0YlV6UzBaUUdPSko2aWlOOU1PMzg2L2VMVHFmSDNWTFp2aVNvUDZwRTNvQmlEQ1FKY05rRUczemFMWExjSTdkdWwxdStLaVRmM04KZXpjSFIwZlVhcVVQZ2l6eVJwYk5udTMxbTkvOFVhT1piM01zTnpiTU41aFdHVzJyTEEyelRJYWw5WVpmYTJ3THRXWXlhMzU1cmdCYQpvTll1MU9oWEdHMVBHUnZCbHdDRGxoZ3RxelRtNVVZSFlyZjgzbXhkK3FlQWhkT24rUzN3bVlZZ3gwK2NHVVdIM3J0MDRiQkkwTTZ2CnNncFlLZ0ZMeG1NcnVkVUFRRUJDQUVCMVhEWmNBTVF2MXdncXRQd0tqYkFHdkFzQ0JxbHJLcFFpSm9kYnBMQ1hkTHlYcDdpU1R6V0UKaDRuMkJlb1MxeldrUG1lTis2TTU2Z1ZMM05PRy9kdnRzY3JMcVI5L1VmYnh0N1U1YmNsL1ZFVThvMHRhcTh4YXAwajNsNlVFeTVLMgpTQkozQ0JOZUZWQU9pSktTWkxucGlvSWNlV0dSdUlndUxxSEphT215d2toeDVqcEpJb0JSb0RScHZaUUt6QkVvVFF6anhXOWxSeFB6ClgyUUFPZlhqQ1VEaHBmSDdHWlFkTldsaG9peWdIQWlnQ2ZRUWcwQ1FXUmg2bk81Wlh3dUN3d3h3RkVxZXVGYWVNRjRjTnQ0REk5TUgKRDg2Q0tXTkE2MVRSNnpWUi92V1JHN1JSQVRwNGNkaGsrdkVJSUxkdklDTFRCNDg4OWpOMVZEbVZ3MDBGQUJKeHNoVzhRcVdFSVpUUQpBSUE0VmZtaW1pSUZsNFliU01rdGd3Y2xDT2ppbWxKT1pURzdQSi9CeUFVR0ttVG5KVmRrUjFkbGg2cmpROVVVbDZnaHFzUVF1TU1MCmJuUVBWbEZEbE5UZ3VzUWdKVGJrQS9vNUFEMDYvelU1Z01KTTZTQTNBMDIySnRvVlFHNEd3Z0ZFTnRCa2cwQms5SkFCOUVoayt2eVAKQW1qWG9kUWQyUG45K0pBUGVBQ2ZnaGNudTkxNkM3WVQzaTN3RStkT0I3VkFuU1lUNXhyRXhZM0NNcnNFamdQaEFHcFRNTnRVYkJCaApJQWMySGFaWDBuU3lVaVUvcDFpYXN0T1VzQjViMSt3UlFIaXJMWHVmTjJJcmdmU3Z2bWphQjc0RURRVGVHQjRGRU54TDNKSVUySnE4CnVSa0FLR1ZUYytxV2x0Uk5qcmkxUitsTC8vcm5XZDNEYzN0R2NRRDU5c0pCb1A4S2dOejBBd2QrSGozdkIveGJGdmZBN2U0TGUxQjgKeWZPMHZqRjh6NWYzajROdzAvc1g5MXoxQXplOVgvc3pjdmtkcjNQdklrZHVURysvTkxQdExOSjRCTEcwZVpsYXZiVk5jN1YxTHg1VwpoRi9teDE4cGlieVlGM0dwSk9vU0krWUNmVEw5dUw1Q2JHaUh6NCtPOUxpNWg2QVBzY3Vkb0EraG4vMm44a0VFZlFqOUVPaHhwOCtSCkhCQjVQTWJKRG1MNEJ3TVFwRGtHb0IySDB5QnJqbVRDUlRuZ0dUTVEvdEZ6Sk9pUUk2UEhJMzNJK25FRmtOdkF6OVQ2SVFaK2NQMkEKaUFtdlIvVFRtQmhrajlucW9PeTJVZlpZS0hzdDhic3NzVnN0MFpzYVlDRzJ5R0JyUktBMVBNQVdIbWlQQ0dpSUJNSHJscXhSSVkxeApHd0gwbXhPQmVQQXByYzF0ZVRzYUN6WTJwUVFmanNrNkZkTTl5RWNIaXRHZmlxOThVMUZ3TEQ3TUVmdENLeldnUGV2bHhuU3FKVXA1CkxmWEhiNnBIQmdVamZWWDNQcE5mdHZHdkd1UTM5YUszeklySkFIUWVIZ1l0dTJrUjNUSUpiOXNrZHhvVVY2ekt0enNkSXlqNnhaZi8KV1BYNDh2bnpwNitZUDNzdU11TzNFVEhQdEZobW1HMitLc3V2dEExejY3UUxkTWJIYlUzTDZyUy9xbmMzemIrVUs0RG1XeXlQNmEyUApLdzErU25qcXRLL0pzVVRiNEt0MXpOU2FubXh2ZXV4QXhQS1ppMzBYejVrNURkbTYrb1dlQno4TzlYV2RhckFBQUhXSXVVWWVVOGxuCjFna3FGSnh5d0NBUU1KQ2N4MWJ4eTlXQ2lucGhKVWdyRmVva0xEMlBiZWZWTkhEWjFzcWlkNDZ6ME1IS29YNzY1OTh5dEtjb1VaSjkKdTJSSld6VzV3Y3BVOEhOL1JOT0J4dmZ6SHZhVW85MEY2RkM1L0ZUQ1M1TG9UYktVZzN4cUZDOGxVWkNWTGNxbmlRc3JKY1VpV1psTQp5WkNLV1dwWmxVVmE0eEJVdDRyNGRvV1FLNi9JRUJac2tHUUZTVE9DcE5pUnpUSnFTRzNTRmo1bGV3VUVFSzRmNS80dlREOTc2UkVUCitobmZBTytNRVk4RGFDK1RzcDJURWlyTzJGQ2J0VjRLMSs1Z1RaemxnNGVMQjF2TkE4U1R1RVlCMS9TQVhxekRpM1dtak1ZajArZVIKNnFMWDFFV3VWVWF0VTBldVU0ZXYxMFE0THc2YldCdmtXVCtFY3NqMCtlOEZVS3ljVXNGTGtkWmtBZ0RKT1BseVlhbEFYTXJsd0gxZQpWZVU1d3VwQzRCNDFCaUFRZUpEVjBQaFZKWlhsQlV4bUhxaVlsWmZPem80cno4SkhmVnptdjVMeFBWK0FQdmljRjl6dHBVd0VCZ3FWClV6YktLSzRBY2pWUW9DSVo1TG8rYkR3UCtwa0FFR0dneVJoRUdHaUxQUk5FTmhBQklEY0R1UUdJTUJBWlBmOXZBV2c3TnZDenRRTXUKNjRFcmV6b2dodUNMNC9SeGJRb0FiV3lqVUUxcFhGbTJTVkRVekM5ckVqUHMwckxHV2pvT29NT3E4blpOeFNGMU9XNmdwanFHVFVrMwpxdWtXT1YwdktLd1VwVWRvS2NFTjhHSlVBQ0RNUU80QUlnYUJvSUgwcno1djJMUGF2Qjk4ZFRJQUJiUWtiMjFKMk5pVUhOU2N0YlVWCk1DaitOK2ZWMDc4ZG1OMEQxOThzN0JsYjNEdjZYd1NRcTM1dytyanF4M1c3KzZMdXNRWFkyQS9RajFmZktOSU45M3g1Zjkzbi9XVTMKUE80WjZPZDllT1FQY2h2cXgrdkNtOGpaTzhpeEcwam5sZWt0cDMwYWpudFpqeU9tSTRpdUJWSGFmdS9nYmo4cmlMdFdHWHN4Ti9wQwpYdVFsd0NCbTVIbUdSLzI0QW9qUXo5UUFJaDdjYnJkd0gvakI5RU1BYUlvaEg0SSt1SDQ4UWdSU3cyVjdPZjRuRStoblMxc0tYSGJUCk1YNEQxMzhIZ01qdThhaWZ5ZHpqcWg5Z25TbjA0enJoNWFvZm9Cd1lBYUJ4L1d4cFRBUVZtZk9ycktVeUU3MWVXNmF0TDVQcWlpb04KK1hSTGZyRWhPMWVma2FwTmlkVlM5K3NTZGhyaU51cWpnL1NSNnl3Ui9yWW84TGNnc0NVaG9CVzI0UkFGRkhBNE10UkdnU05HUjJJUwpqKzcvcWE4Y2ZaQ08zaTlCKzJuLytMWkVkU2s3M1ZhYVVsOG9iVXY3OE9QaWtmc1Y2QStGNkwwOHREZnYrMDhxTGpWS3orc1ZWNHljCnR4dlV3RHFlQVdTVzNHaVFYN09JYjVnQmdHcGZ0eXR1V1pWWFRZcnZQdi83Q0RyS0VYSVJiMlRoUEo5blpzOWI2THZpMmRMc1ZZZmIKVjJyZ2d1V1Zlc2NUT3NjQ28zbU8wZkNNemtSbXpTL3ZFUUFaVEUvb2JDdlZ4b1Y2MHpKejQrTXF1Ni9TUHJleC9lbVd4djlJelppLwplTW5zR2NqQ2hUTm5Jc2lSSmdjNk52aVBEOTV1VlVnUGk0VnRZcDZCejZyak1aVENTbmtOdTViUGx2SlljQkFJdkNnbzF3Z3JOYUx5CmVtRzVXU0xTaXhnR01jc281bWk1RlFadTJaMVRwZWhZeVdoWDFuQjNSdmRQaGUrK3hkVHFTNG9xTW9wbHlkVXRDWi8vdmJLL240WDIKRmZSL2w5amJUek1jU2FIemMwU2kzRHBKdGtaU29KY3l6SkpLaTdqYUtxeXhDcXRzb21vN3Y3eEpYTjBpNWdJQW1VVTEwdHJLUEVucApBVUdtdjdnZ1NKSWRKRTNEVDJFT2xtUnM0U1MveElyRk4zKzVEdi9zWTBTNkFnZzcveERTQng3L0E2TEhBLzBjcE1YdllWS3dRNERTCjRFYXQydFJIVjVOUWlYRHVZRDBDblJjbXlWMDhIZ0RrTkJCTUZiR3VQaHJrcjR2ZG9JOExNTVNUOVVPR2tjZkk5UG4zQUhSUUVjOFEKcEVpNFdTSmVEZ0NRVEZqRUZ4Znp1UG5zNmx4MmVYWlZaYTZFVzZMazB6VTh1cnFHQnFxcm9na3JTcXJZQmVXc2ZEWXpyNHlabjhYSwpUbVJsQmFtZGMxNFRlOTJ4bmUyYlpZbGhDa2dmN1BwYmVMOWJvRHdoU0FZUHdNVFJRMFErRnNGMWRieEgvVUFBaFJyVFFGTXd5TjFBCkdJQThHY2d6Z0NaakVCazllTnVhTThrR2dwK1M2Zk0vQ2lBNDI5V1p0clV6YmZNUjJGYnNVL2pLb3d1QThJQ0tKZ05RVUVmaWE0MHAKVEJVRWtFTlE1aEF6bXFVc1J5MnJ0ZFlKb0E1MUJhaE54WVpyb2hVTXF3ckVzdGN4TGFJU2tUQXJ1UzV4bXpWbTNlUUFXbXZaQjFwagozcnZhdE9jRlBleEZ3OTdWeG4wQmpiR0J4RHBvQnlVWVgxclJUQTBFYjBJdEZQQTJFOXlTdmFVbE9hZ3RmZG10WThnOWRGWTNYSDBNCkFkU0RMdTJCQm9JcmRZWlF2MEdZSzRESTZISE4wOERQaUhQZzUxSDlBUHJNRzEvMzQ5T0xRdjNjZjRoODErdjl4WDJmVDM3eSt2Q2YKUUQvZWI4UDdMcnl2L2RuNzRsdmVaMjRoSjY0am5SZGdqcU9RUHFaVFNIMEhvckl2c0RTK2RMcnE0T1dLMkVzbE1XZXpZaTRXUmwwcQpDejhQK0VJbjB3ZTNEZzRnVi8zZ0FNS3Q0NllmZ0I2M1Q4bEhQRSsyNklkTUgxZjN1QTc4ZURUSEk0ZnJqQS8vQUFBQmpoTUFJdHpqCnVsclpQWkpzUEVZZTdQSG9Iako5WFBXRDUvcnBaUHA1aEQ1WWJ2clpQRjZ6dHFiVEpEeGhFcC9RQ1U3cGhDZTFndU5hUHVpTVFYeEMKTDJ6WDgrejZHcDJ4cXRiQTV1cnBsZHJTVEgxNmxpRWp3NXlaWXM1SU1LZkZXRktqekNtUmxwUURqUWRUN0duSnR2Um9LelhiSFBYMQpUOXpSM3FMdTdyTFI3MVBSbmlLMFQveTNPNHlQcnRCR3Z1YWo5OWxvWDBWL2I4NXdkd0g2a1BuWjVhSWJSdmtkbS9GYW8rQzhWWXpmCitnNjZZYXZGd3orOWJKVmNzOVVDQUYwM2l3R0E3dGprYnpTb3Joa2s3eDA3TWpUUVBUejY4T1U5TzVBWnlPSVp5R056NTA1ZjRmZDAKU3Y2empkWkZkZ0NnaHVXbXBwbHEzUXF6YlpsQlQyYk5MODhWUUl2VitpVWFBenhYMnR5NFVBT2ZIemZaVnhsdGZ2RXhjMmN2ZUdMQgp6R21MRWNRTEtjNG9HQmxGKy91NlRqY1ltOFg4VmhIWHhxc3dDQ3NVSENiZ2pyeUdLUkZBQUVuNVRCeEFTaUViQUFoazVITzB3bEtkCmxLMFUxU2lGZktXQTA5cVFkNytuYk9DSHF0RXVHdnFnQUwzUEdmaDczUnZIODIrZFNYall4VWE3QkdoLzBmMmYwZ2J1RmovOFNlUXcKNVdsNTFVMFNwbGxZYWhVekhLSUtoNmpLSWFxeEM2c3Q0a3FBb1RaaG1VVkVVMGlMcXlVRitlTHNHR0hLVm5IQyt0cjRkWklNZURSegpiYUovYlpLL05ETllrTG1wTW5FYkhVNStUUnovZytrSHowVS9FRUJPL1RCaUk4c29PSUJlWmlkczRWTURhcFBYeVpQWHlvZ0xOU25qCnhlUGg4MWFyVmM1ZVZFZDVDTHcrSHB6cW1qcnNGeVJ5cmdyU3hBWm80d1AxY1ZneGJnVVpZbjgyTW9ud3lNU1p1ajJxK0JKaHFvZ0gKcndPVGNYSmwvRUtCcUZBZ3lLL2hsNVpYNWJQWU9aeXF3bHFnSHo1THcyR29xOG9VbGFWdUFJSVhZakN6dG9uaVlVTEtlTlN0Z2tUUQpUbTdDTmtGQ21DZ2hRSWI5ZDFiQ1E4QkJnZklrdkNCRk1vajRsRXlmOGR6cEEvOWcxQ1k1QWVUS29Da01CTE5sa0EyRU1XZ0NRTC9FClFHVDZUQVlnNTZkayt2eVBBbWhUSjNZaGZMdHpoZ3VDNW5BS2VKR1k4eUxvUTh5SUVWK2FtQmRyQXdDaTdHeWxGdFpuNllTRkRjS3kKUmlrYkFLaEp4Z1lBT2lTZkFGQzdFazZFQVFNMUtGa05LblpqWGJsTlFwTUxjd3JrcWE4YTQvMmJZOGdBd2s4REF2UWhBQVRvZ3hzSQp0TjRXdFFFNy9BMEFLS2d4QVJUcW9BQUFCVGZEelY5YkhaVFFsc3pOelVrdkhxYk4rUE03eUYxMFp0Zkk3SzdSQmQyamk3cmgwaHk0ClJtZGd6QmZURDJ4b2RGdy84QmIzS1pwRVA0OGNkWWlmOUFPYTJ3WDFNNjE3ekhuYTRYZTlYdis0Ny8yM0g3Mys4aTFjOWZ6MlozRGQKRHpiMkEvVGpmZXlxZHllMjZybmxKR0k5akJpT0l0b2ppTnk2UUtkNjhhUTUra3A1ekJWRzVMbUN5RFA1Z0VIUkFFRFlCYVVlOVVPOAo3Z1lnRURIZTR5YWV5YWJBUEc3MWNwdjJJby82ZUpyd3lnYnRiTS9DMjNFb0U4LzFYRUhuQVExdDhNYlF5UUQwOG1IUGthMURqdXdlCnNuNG1jdzk1eUljODdVV2U4SExWRDRFZXZEQjd3aWFYT09vU2hiSGNaS3BwTm5DUEdzV25qTktUQnNrSlBieXo4NUpXZGxFcnU2U1QKWDlETHorbGxaM1cxSitzbHB6UlZKelZWeHpTVkhacnlsbnEybzU1bDB6SXRXcWJhVk5wZzRkaE5sVVlOeTZvdStmWmpJVHJBN083TwpIeDNJUVFjWWczZUwwQWQ1YUZjUnJwLzczVG5EL1dWamZheXhud1RYR25NdmFTUjNUSm8zTEpMYlJzazFDNHhna0t1SG5LK2J4YmRzCnRiZXMwamNkZFhmc3N2Tks4Vjl1WFJ3ZDZodm9lYkJwWnlneURWazBZOXJLNmZNV3pGaTJMREZ1YWFONnZoMTR4ZnFZc1hHWndleW4KTjVKWjg4dHpCZEJLbldXdXp1Q3JiMWdwTnk5UjZsYTFPNTdWeUh6M0hKdzllKzd5ZVhNV3owWjhwaU1KaWZGOS9VTWpROE9Yamg5dApGdFIweXNVdFlxNlpXMjRVVmdNQXlYbnczR2N4bnluaU1TUThCakNRWEFCVXhBSUdBbW1GMVhvcFF5ZXRVQXVxemJXMU9wN0lJTXIvCi9nc1IybDNWLzJOSjc3M2lnZjZ5d1Q3R2FBOEQ3U3BEZnlvYStKcmUzMTNTM1p1SDlsWC84QjdYeWk4dzgyVVdMc2NrRkZzRmdnWSsKcDRGWDJjQm4yWVJzczVobEZMRTB3bEtPS0Q5Ym5CVXRTZHNsVGdvUlVkYlVVbGVyVTlmSnNqZkkwd1BrcWY2MTJSdHFTNEpGaFpzNQpsRzNzVitId0R3WWdmT3M3cnAvOWpNaHgrc0FJL1dBQVNvd3NqWCt0TEg1M2VjSkdBUVc4bGE1VlVPRTZuanA0M2RqYXVuaVhKcnd5CkFTQWlkLzNFNGJsemh4UmNEYTBjLzhYSFAxMnZqZ01HMmxBZkY2Q0xEZERCSmRMWUttbDNBRTJCSVRKOS9qMEE3VklsRkloVCtmd3MKb1NCYndjMlQ4Zk9Ga2dLUklJOHJvRlZVRnpEWTJSWHNYR0ZOaVpMUDFIQ1pBRUIxbGFXQzh1SUtkajZEQmFmQUFJRHltRG1wek96bwpDb3F6Y2lvb2lwMFl4VTZLWkZIM3NTaDcySlNkbFpRdDNNUlFJVFZJZ2wxQUswOEJ0QTJRVVVFVDlNRStKUWUrRStaSlB4QkFJWVpVCmtKdUJ5S3VDWEFIazBVQnVBUHBaQTVIcFF3REl6VUQvU3dHRTBXZFhhOHFycmFrZzhBQStCUytTaDMrSVBBSW9wQU9lTlpLcFRWTUoKOGsxaW1sWEthcEdVTjB2TGNRQjFLSjBBZ25OaG1JR2E2OWdPSmJ1aHJ0eFN5MUNMQ3hteTlIQjlRbUJURE1namdIRDk0QUJhYmR4SApHR2kxNmVBNmEyUmdJendTMmhWQVlVMEpJYzFwV3hyajRBS2dKdXB2and1UXYzMk5mRGN5L2Y3UXJBY2o4N3ZndEJRT0lIZ3oxOE14CnYzOERRTU5qT0lBSS9XQUxuMUhpcG92NTJFay9jN0RoSCs5ZTFLdHJ6UHRIYk9ickM2Z2Y1SU92a0hlLzlIcnpiMTYzUGtLdXZvZWMKZjhQcjlFMnZvMWU4Mmk4aWJXZW5PYzU2VzQ1NDZkdVEralpFMmJCSXEzbnhzR0R2MWFyNEs3VG9TODRUQytFQjBCZG9FZWVMUUI3MQpNMWx3VDdzTGdGekZRelN4K2dmVGo5dkFEM25GenkrZ0Q0NFBFbjNhTW1DdVYwbU1ELzlBd3JZbTRiTmc4QXdlYkFwc0Z6WVhScWJQCkx3RVFHVDFrK25nRWtKdDczQUQwQy9YajVoNDhnajRiYmZHYnJQSDd0UEZKeGd5NlBrK3FLclJyV0IwNnpqRWRGM1RVSWo1aGtaeXkKU00rWXBlZE0wZ3RHNlVValhJa016eWMwaUVHWERlS0xSdGdGRSt5aVRucmVVSHRaTDNoZHE3eWpWWDEwcVhxc2x6bmFrelBXbGR0egp0MmhnZ05uVGw5L2ZsUWRlN0x1YlA5U2YyOWNEQUZUNTAvdjhtNmFhTnd5S213WVorSld2MjJWWHpXSVF3U0Q4QWQ2SGloMEpmZE5hCmU5VW91bVdUM2JSS1gyOVV2TzZRM1RLSlQ5ZEx2djdyKytqSTRMZi8vTWNMNi80MGJZYlhxbGtMVnM2YTVqMWo1bU9KOGMvYXpJL3AKclg2R3hrVUd1SFdMekpwZm5pdUFsdXQwUzNTbUpTcmJDbzNqS1l2aldWV3QzNEhkMDJaTVh6bGo1cklsODcwUVpHTll5TDNlYmhRZAovZXoycldZeC82aUVjMElwYVpad0xXS09UbENwNUxGbFhDWkl5R2NBQUFtNWRBbXZUTXFuQXdNcCtFeTREMGhjcmF0bDZjVGxla0c1ClhWSmw0ZkowVlNYdlhPU1BkbVdnQTZYQU92ZnY1ZmYyZ2Yrd0pmMFBTb2Z1bFkvMVZQVGNLK3U5bjRQMmxMOTdrYTNnbHVoRklqdVgKYitXS2JIeUJuVjlwNFRPTkFqYjRaU1VDTG9mTHAvQjVyL0dydHdrcUF2bnM5ZnpLZGZ5cXRXTHVhaG4vUmFGb25ZaTdWc2had3hPdAo1U21DZU1MTk5Ya3ZWWVR2ZGdFUW9SOVhBRVV3SmdBVVNZK05waVZHbHNCVEVIZFd4SVVLS2Y3d210WDROWXE0MVVvS1Z2eDRjWGl1CmRobC9FZnNHVlpSVFJhNHZ1c2pHclRYNE9taW5lQkpjcFlVYmlOZ2d0a0ViZzYyUGRocklWVC8vRndDMFRST2ZMVXF1NFdWZ0FNcFIKOEhNQmdNVENmRDYzdElaVHpDN1BaYkt5cXlyeUpSeWFrc3RRVnBmSkswcDQ1VVVzZGw0WkN5NkN4Z0dVd2N4SllTYURVbGtwcWF3MApVQW96TlptUmtreFBqU2xMaml4TENxZFI5OUVUZHpNVHQxZFF0MVFuYmVRbCswc3B1R3pJNHZHZ24wY0JST2huQWtDRWdTYWJDM01ECkVHRWdsMEdnRExLQjNCamtDaUFjT3BORkFHakNScTBaSGlQVFoyb0E0Y2Nua25OM3o4OEJhSE43OHU3MnRQRDJyUGoyWEJCNEFKK0MKRjExWFFMdTZaeklBaGJYSGhSMmlwT2hUNWNJY3ZialVMR00xaTlrRWdBN1hzVHRWVUQ4NGdFQnRDblp6WFFVRWtKeXBrUlJWU0ROaQpkWlNRUmllQUFod3U2NkF4QUsyelFnUEI0Ui9qcS9qa0YyNmc1L1g3MTVqRE45amhpWWc0Z1BBcHNJMU5jWUZONlZzYjQ3YTNKRzEwCkpENTFXb1g4L1lIM1Z3K20zUjJlZVg5NEhFRHdTdlovRTBEaitwblk4elVPb0NVdXd6KzRmbVoxd1IzdnlQMFJyKzhIdkwvc2hqTmYKZi9rVzZBZDUrd3Z2MnhQbi9TREhyaUtITHlLdFo1RG0wN1BOcDZacjI2ZHJtaEc1elZ1bS9YMnpDdWduN21waTlMbjg2UFBGVVpkWQpVUmZaa2VjWjBlZExveThVUlY0c21CcEFybDl5M21neFB0TGpCaUMzSVo5L2RlYkxiZHFMdlBMR3MzN0dBZVE4Um5rY1FKdGFrcmEwClVPSENmT3dNbmgxQVFoaUR3QVA0VStveE1tNm1pT3llcWZYakNpRGlVMWY5RUFBaUQveTRBZ2k0SjlRVzd3b2dYRDhiTFhIZ0QzeG8KWS9SV2MrUmVWVVMyaWlyUzVOcFZ0RTQxNjZpMityaWVjOExBUFdua25UTHh6NWdFNXl5aUN6YkplWnY4bkZWMjNpcTdZSkZkc2NpdgptZVhYakxJcmV1bDFVOTE1aC94U2crQU5uZXFHUm5lMnRiU251eHp0eVVIdmNrYTc2Q085WmFNUEtzZCtZcUgzQ3NjZUZBMTNNMGZ2Cmw2QURWZTlmWnA0eUNNN1p4T2Vzd3JNRytXVzcvSXBKNUdvZ290dEc4VFVkLzdaVkJveDF3MVo3MDE1N3UwSDZ1a042eHlHOG9oRjEKR2pWZmZ2b3BPalQ2MDNkZlAvSDdaNlo1VDUvdmgveHF4alJmTDkrbll6Sld0clRPTXRrZTA5cUFoTWlzK2VXNUFtaXBRZmQwdlcxcApuVzFlUS9zcW8yM2hycjNUWjg1WU9jOXI4ZEpaTXhCazdYUHIvdkxaRjhNbyt1SDF5eDM4NnBQU212TktjYWVVWStOVldDUmNaVFVECkFFZ0JiOENBQUJMdzZBQkFRaDROQUVqR1o4Z0VaZGpSTDJ5RmdLYmxzNDFpcHBhWGI1WlVHMFNWTFpiaTRZZTAvbnQ1dzNjTDBidGwKWXovUUIzNmc5WGNWOWZUbFB1aEo3N3RQUTd1S3hyNWhuR29xRVlvWTlhb2FxNEJsRkRKTklycE9XcUtRbEhLa3JFSXhQNjVHOGdxcgo5Z1dPK1RtKzVmYzh5Kzlyck05Vk5heXRibm14c3ZrL1dJMS9yR2g5cnNMeEhOditSMGJMYzh4RGE5bm1FSGJGVmtZU3JwOWZBaUNnCkh3SkErK254T3lyalFrUndrZ3VvQmVoa01nQ3RxOE5TRUY3QnY0MHlNWTBGV2VQOEVwWTdmUWdBalJ0b0FrQnJGSVNFNEZEVCtBYXgKNkNrQU5GbGsrdUNScVRSMW0rdmpNMFZKVmJ4MEFUOXJIRUI1WWxFdW4xTUNERlJWWGNoZ1o3T1oyZnlxSWxrTlRWNU5Bd0RpVmhReApXTGtsekJ3YU02ZUVtWmZQeWdVQVNtSW53MWlwNDZWUm1hbWdKRVltbFphZVdKUVNXMENOS0V6Y1YwelpUYVBzWUNRQ0FMa1ppT3loCkNmMU1BYUJnZlNwZWlDRU5GR3BNQjRXWk1pWWRDcG9VUUs3VFlUOS9RT0syWnZkZWFzbkJjaDhUY2txSVJCOW41RE9nc1dFaE1uZGMKWDNFbEVYNE9FTEdRd2kweWZmQUNqeVpFdDZiem1sbU56WkpERnFGZFcxRnRMcUUwNS9nZlN3dzlUTm5WUm4ybExSbTgzMkRMbktuZwp6V2xUSjFUUjlrT1FSR0dkS2NHZGNBSFFTM0NUT2ZpZXhGZGFxS1gxbVEyODBsWSsyeXBqTjljeTJpWHNUbG5sRVdYVk1YWE5FWFYxCmg3SVM2T2RRSGF0ZHdXcXBZemVvMkxZNnBsVlNMQk5tSkduaTF6c2lOelJIK3pkaGh4dzJSQWJhSS94dDRldXQ4RFFnZjlNQjBIcnoKZ1hXbS9XdU4rM0FBZ2Y2bzIvVzhZYzhheTRFTmRqZ09CTThCYXFTQ2dscFNOanRTTmpWRmIyNmlyR3RMOVQxNzB1ZmpyNmYvNHh2awpIam9kUThuOCs4Tkx1a2Q4ZTRhWDlnekQwM29HNFVKbTM1R1JwYU9nb2FWamc3N29ROURLWVJRRVBJUmZicnAwZEd6SkdBeS82Z3RTCmFSQmRNVERtTnpEcUN4dnpCYWpxUW4zdm8wdnVvd3U3ME5uZEdIMTZ4N3gvNmtHK3Y0Zjg1L2RlbjM3bC9mRVgwLy84MmZRM1AvSzUKL1FGeTdUM2swcDk5VHIvamZmU1dWOGRscE8yOFQrT1o2ZFpUM3ZwbVJOdUVTSzJ6NjdSL09DVGFlYkUwOWtKaHl0bHk0cTR1dDF3WAo5TGdXZGE3RUpmQXBMUktnWjN5cXkyM1V4MjNSRDRFZTBJRVRCWGo3aitmajdUdVdCenRhQU5wN0pCKzBwek9QYUhkSERoNCs1MFZNCmUrMCs1R3hYV3liZXp0YU1uZkN2d0RncHNGTUU0YkdCcmZERzBNMU5xZURQTmdUUTRlVHRoNUoydENkREE3Vm43SjQwZHhLTkI3KzYKNjFDNld4N0ZBOXJSa2s2MHZUbHRzbDRDdnoyc3JjMnBXNXBTOERZN2tsM2IxSmlFdDdHQlN1UTY4SU1YWm8wRGJUYkhoVnBpQTZ3eApBZWJvamNhWVBmb0VpaTQ1UzVldWwrVTFLa3M2Tkt3ajJzb09mZFZSRS9lMFVYaGVMenh1RTUreGlNK1p4T2NzdFdkc3NyTjIrV1ZMCkhkRFBWYVBxc29sejFjSzVaZE9lMFlndTJ2SWVmbFdEOXRKR3VrbzhOdFNUMi90VDFlWFd5ak02MVJrei81aXArb0pkZmQ3SUI3NjUKYkJSZU1BbWh0NnppS3hiSmRiUGtsbEVDbnNIRDJ4YjVEWjBRZk05MXUreVdwZlpkaStJOWcvUjlzK0tLU254U0svL0hSMitqNk5BYgpiN3l4Y3RsajNyT1FXYjR6bnBnNWV5NHkvYW1jTkQ5Ny9USzliWldxMVU5djlOVWFsOVliL09wTnk3Vm1vS0lWOVZaNDFaZW13UmVrCmJWeXFzK1A1Nld3cnREYnc0QXV6d25NT2RXYndqL2pWRzVkcERJOHI3TXQwTFl0dDdiK3hOYXpZL2ZLeTZUTld6UFpHbGs4RCtsbTMKL3NXL2Z2NFhGTzM5OFBhRk5nbm5na1o2dHBaN1RDRnBsZkFhUkRXQU1pb2VzNVpUVnN1amk2cExxbXZLcXpqTUdpNU54QzJVVmVmVgoxV1RYOG5QQUc2RktuRjFmbFFsK1ZLdFNGUE1WcFRZeDI4Um5jU1dNSDc5TUg3aGJQTnhWQnRmNjNDc0JENFAzUzhIejNSNzZqL2V5ClJvWUtCdTl4amhscDhoSkJmVTB0K01mTi9IU3RzTGhHd3N5U1ZCM2dHWUtaMTM3SGZzT1BlL3kzckp1L1lkNEEvWnB4L1ZuNnRXZksKcmo1TnUvSlU2ZVZmMDI0K1UzcjVhZHExSjh2ZWVMTGt6aDlveDBQcC9CMWwxTjFNQUtDRHJ6QUJnT0FOOFB1WUVRZVlrYUFJdUFBbwpDZ0RvSUNNcW5JNWRnRXFQajJRa1JOTGpvMHZqSXNyaWRwZkhCWW5pWHF4TEFKcUJ0ODAvTXZrMWtRdUozQ0lHaEI2SlRKK3BXMStYCjRERi9WY0lHTlNWQWt4QllIeCtveFc2VjEwWUhhQ09EZERIanhVMmtUVmhyaWw1bmp2RTN4WUkyR0xIMGNmNDZkOThRQmV2alBhZU4KaWxNa1Z2T3k2cXJ5Wkp4OGthaFFLaTVVaVBKNXd0d2FmajZiVTBpcktDeGhGckJZK1lMS0lnV25tRk5UVUZtUncyQm1sVEt5U3VBdQpzSUo4UmtGT1dYNHFNejJWbFpiR1RrMHJUd2Fsc3BOU21NbkpqS1Nrc3BURXN1VDRrcVRZRW1wVWNWSkVNZlcxb3FRRGhkUkFYb0svCmlMS3VscnBlU2cyU0pJYUtFOEZIdU5aSENrK0VjaXVnMXQwOUV3QUswcVdBM0FDRUdXaVNvYUJIQWZTekJwcHNGbXd5QUxtT0FEMFMKbVQ1WThGcDRqd3o2RndGRXpDTzRSNklQM3RhTzVOaVdURjREcmRYQ09XN2h0MW01Smx1bDBzUmdOdVFsT2RKM3RGSURPNUtDajhEagpmL0Fmd2VIc0dDQlJhL0pMYlhDbURGNk0yZzZmTng1SzJkSUdBVlNveXpUelMxb0ViTHVzdkxXV0NRRFVVVnRCQUtoVFZZV1BBQUVBCnRTckxDUURWQ1RQVGxKUmdleFRRRDd6dnZURnl3N2grOE9NUWNmMFFBTUwxQTBlQWpLOEFBTUZkOFphREFRMHgyRHBvYWtoRFltQXoKK0NrOFphTWphbE1URlFCbzZlbFR5SWZmSWw5OGkvd3dOQjI0cEF1ZDkyQjBVYy9JMG5FQXJlcEJIK3RESHhzRXJNSENqbmgrWWdEMQpHKzNEOHgwYkQrMEhMUjRkWFR3MHRtVEllYy9YNHY2UmhmMGpDd1pBWS9QN1IrZjFqY3pwSFozVk56cXRid1RwQlEzNWZOWHYvV1VQCjh1azk1T1B2dlQ3NENubjdjd1FiKy9HNjlnRnkvQTdTZnNXbi9iSjM2MW5FY2R6YmNnUWU5d3owSTdMUGttai93eUhjZnE3aTRHVTIKWE94OHBvQk1uNmtCRkhtMjJDVklIenlQN25FYiszRWQ5ZkdzbjJONXJ2UjV0U09YeUtOK1FHN3VBZUhJOEFDZ1p1eXlkRWNLK0ZNTgpEMkp1bndDUVI4cU1Cdzl4OEpUN2QrNXNTOXRKY2c4eDNqT1pmZ2p4NEcwRHZ6MHNRajhFZ0FqM3VBRW96SjRJY2dNUXJoL1FGZ3Q4CkRyYkZCZHBpZzAzUm0vVFJ1OVRSZTFReGUzVHhhZXBrdmlMYktpdnBrREdPcUNxTzFWY2YwOVdjMUhQUDZMZ1h0SUlMQnRGWnMvaU0KV1hyUlZIdEZMejF2RVo0eGlNL3F0Y2ZxbE5kYkJWKzl6MEo3eXdmdUZwRHBNeDZ6NThmYzY4Y3lUOVRMVG1wVkovUTF4K3NyemhrcQpqaGc1eC9XY1UzcnVXVDN2a2dGaTZDSVcwTStsZXQ1dG8rU09HUTcvWEcrVVhiVkxielRLWGo5YWY3Mmg5cVpKY1U0bFBxRlYvZTJOCm0rakk4THUzYnYvMmlWOHQ5ZkphN0R0Ny9vSVpQc2kwcDFOU2w3YzQ1bWthVm1sTW9NY0FmZlFXUDZObGlkRzhRRytZcTlNdk01aXgKUlVMbVpUclRjcDFoaGRiWnluclRDank5RVM0aE1zRERGVUdyVk0wTEcxdVdhcFZQeGNZdFdMZ1UvRXVXelorekJQRUozdUQvOVQvKwpqbzRNL2VYQ3VRNlI2RlN0NUlKQmRVUXQ2bFFJMjZSY203QkNYVU5YMUpUVkNjcGxmSmFVeTVCWFZ3ZzQ5SEorY1prZ2h5WklMeEdtCkZrcFNjbXRUMklKVUhwOEdyd2NYcGVocTg5WFZ6THFLL0daZDVvTnZjb0I0Z0h1QWZrQkREMmpnVTlnOUx2aFBPdkJUOXNnRHhqOC8KWkI5eDVJbTVPU0orZGE2SW1jR3JmWTFwRHkwOStqemowdS9vTjM5RHYvejdpcE51OUNFaUFlaG9LSU83bzR3QzlFTUFhSjhMZ0REOQpRQUJOVElFQkFJSEtLRGlBWHE2SUR4SW0vTzhGa0pLQ0cyaURPajVBRXhkUUg0TWJ5QVZBanpBb1VEK3hab2lZTEFPZ0lkUEhtYXVmClhBclVSY1VvS0pXOFRFVjFYbTFOSGdFZ2dTQ2J5eStvcU1FQkJJODlyQ3JQRTFSQi9UQloyVFJHUmlrakc3eGV3aTRzWk1FYndkS1oKNmVuTXRBeFdhZ1k3R1pUT1NrcGpKSU1BZ0tpMDVJVFNaSGNBY2VQOUJRbnJKSWtBUUlGaVNyQ0lnZ01Jbm9vcDhjQWdNbjNnQVZGUwpxaE5BWkFNUkFISTNrRFVkNUdZZ2p3enlDQ0RDUUI3MVF3Q0liQ0QzcFQvajRRRHlZS0JINTd4Y3hUTkpKUHBNQ2FEdFRhbTdIU21wCnRveGFYVUZUZlZtN3NiclRVSE84cnVxSXBrS3VwNlhhczdjZmdzTTh3WjNVelIzVWx6cVNDQUNCd01ObWJMWFFTNGRTY0FEdGJFM00KTkthQkgzR2FCT3hHV1htYmpIVkl6Q0lBZEZSVEF3QTBNUXVtcW5Db3krMUtsbDFTb2hibFp0Y2xiakU3QVVUY2h1RThEQm9BeVBJYQpBU0RYTlVDQVBnQkEyTWxBKy8xdFVVR05DY0JBK0Z6WXBzYmtNRWZNcHFiazlhM3BTMDZlUU43N0d2bjBCK1Nidm1sM1IyWTlHSnZ6CndMa1pIZ2ZRbklmREN3WkhmUWZSRlEvaDNWNlBQWFJ1akY4eURGdUtYZW9PVkxSOEFGMkJ0V2dJWFR5SUxuNklMaDFBbC9TakMvdlEKK1gzb3ZINTBUdS93ek42aDZiMkRvR2s5UXo0UEh2cmM3ZmYrb1hmYVp6M2VmN3ZuOWVFUHlKKy9odnA1L1cvSWpRK1FxKzk0blg0TApPWHpGcCszQ2pOWXpTRU1uWW14RDZsdDg2aG9RaVhtR3BQNlB0dHI5NTZ0akx4VkVuaTA4Y0lHKzU3TDdYVjFFeEpTV1d4Rm5pb2pDClR4Y1RrZDB6aFg3MmVhVFAwVnlRcTN0ZU9aeUQ5M0s3MHozazljNXU3aUZnNGJxa2hyZzRBdTRWYjB6ZTJncm52SUIrY0FEdGJrOGoKYSthWEF3aDNEN2tkQUQwdVRUYllRNGdIYnl2NDdXRzVqZjE0cEEraEh3SkFic00vTUhOOHFEaysyQklmWkkwUE1zZkJld0Mwa2Y2YQo4T2UxNFVIS2lEM1M2QlJKUWxsdG1rU2VZNjByT2F4bWdyK25KelZWNXpVMTU3WGMwd2JlU1NQdnJGNXd2cDUvcVZIZHFhazhiYTE2CjYweE4zL2Q4ZEtpdzkxNHlPc2dodWNjWjJsMkREdWIzZlU5Ly81SVkvSnFkY3RaUk9mdUV1ckpaVjk2dXJUaW1xVHlscVRxanJUbHQKNEI2MzhJN1krZWQwZ290RzhWV3I5SXBKZEVuSHUyNFdYN1dKTHRsRmwweWlOeHZWcjF1VTc3Ylp2M2p6V3ZlOXI4ZlFoOFBvb05uUwpzTVRiWi9GY1pKbmZ0RlV6ZkJiTzlQMWRNV1BSMGRiWlp2c2NzMzJleWI3SVlGMnFONi9RV1I3WFdYNmxzeTR4TlBnYTRGMFd2anI0Ck90dzJiemJQdEpybm1hd3dnMjIrSHRTd1NPOVlyQU0xenpZMS84NWtlaVloY3M2eStRdG5JZlBtenBnMWExYUlmMUJYWHkrS2p2YmYKKyttdmw2K2RFTXR1MU90UDFkYWVVTXRiSlJ3N3Z4d0FTTTlqYXdRVmRWdzJsMVVrckdhb3F4ZzhUa21lS0N1K05qbThMbUdmS242UApKbjYzSnU2Z2twSWd5Y29ScERHRThXeCtNcGViYzZ5cHNQZkxhbno0QndjUWNBOE9JUEN4NS90OGRLRHM0ZjM4bnZzRjNROEwvOWxWCmV2Z0N2YVNTdGJiaTFMcUtLeSt3Yi82V2NlMnA4aHUvcXJyeGE5YXQ1Mmp2L1pweDgxbjZEUUNkcDBxdjRvSG5aOHF1LzVwMkd3UFEKbFNmTDdqeFpldXVQdENOaGRNNXVlaHdPb0ZmaEZCZ0UwSDRXMUE4QklFdy94QlFZQkZBRUxTRzZOQUVIRUhpWGZWR1JDQXprTHlNVwpRWk56SjlGL2IyVDZQSkl5M2w4VkJ3eTBRUjBMREFRaUFjaFpxRFltcEQ0YUZJd1ZvbzBKMXNlR0dPTEFSNCtSNllNWG9JdUtyS093CkJabTFWYmtRUUlJQ2lhaEFMc3FYQ0hJRWd2d3FUZ0c5b2dCQUIzQ0h6c2htc3pJWnpDeWdueEo2WmdrOXE1aVZWOFF1TEdBV3VnSW8Kc3p6RmFTQm1DZ0JRS2owVkFJaFNnZzBDRlNjREE0VVhRZ0FGVjhkdDRNV3ZGVk9BZ1FJa0VFQ0IwZ2tBa1Eza1VUOFFRSUhhWkJBTwpJTUpBR0lNbVdSS0VBWWd3a0J1RHlCTHl1QmdJTlBVSUVObEFaUHE0QWNqZFFQOC9BMmhIUzFaSVo4YW16bFNLSTFXb3oybldNOENQCmxjZnFlY2ZxT2UzYVNwMmV3YlFVUkRlbWJXMUxER2xQQ0QxTUNUa3ljWFhHeE1JZ09CcVVDcjVuV3l1RllrbXRsUlk0aE93bVdVV0gKak9rR29DUHFhbUlsMENGMWVaT21BdTRGcTZYclJRVWw4cFE5dXRoQTdCUkVIRUJyR3NQWDJBK3V0azBBaU5BUENMZ0hadDczbkJFQwo2SG5EM3RYbUEvQk1GR3hCZEVoakRBQlFxQ00yekpHMHZqbGx5WkZPNUsxL0luLzdFZm15YTlvUGd3QkFzN3JnZmFqd2tKNmVvV1c5Ckk4c0dIL3FPRGkxRmh4ZWhvNHZRa1NVanczNURvNDg5SEYwNWhvSldqSTM1alkzNWpvMHVHUnNCTFJ3YlhqbzQ2UHR3Y0ZuL1E3LysKaDc1OWcwdDdIeTdzSFpqZk4rRFhoUzdGZG43TmZvRE91RHM2L2J2QmFmODU0UE41TC9MWmQ4akgvMFRlL3p2eXhsKzlidjU1K3VXMwpwcDI1TmUzRVZlVHdWYS8yaTBBLzNvM0hFZXN4Uk5lSktCeUkwRGhIcFB5ZG5mZnErU3JLWldic3FkeW8weGtSbDR2M1g2MGcwMmRxCkFFV2VMY2JvVTRqbDFFL0VKRU0rSHVtRHIvZ2gzRVBRQityblNJNmJmZ0I5OEFqM3VLMzRJZWpqcWg5b2krYms3UzdyYVp6NmNTU0cKTlNSdGJRYjZTUUg2ZWFtTnVyTXRDV2lHekJlWFVpYkovVHZkeEROQm41WVUyTThOK2JqcUIwU2U4M0tkOEhMVlQ2aU5BcSt3R0tlUApxMzVDTGJGQVB5R211QkJqYkpnaE5nUXVaWWp4MTBldDAwY0d5U1BXMTc2MldycDNUZDMrRUhYa0FWVnNnWUlxa0dmVUt3cHNkU1dICmxNd09UWG1IdHJKVFYzMWNXM01LempWTGpoaXl2M2kvRk8zakRIVVZEblZualBVWERQeFVTcVlQM3VnOTJzaTlESFM0Y0tpbi9LUGIKeFdlMEJjMzhza05hNGVGYWVxZU1jVXpHUEM1bm5hd3JCOWc2YWVDY3R2QXZOTWpPTmNyT21vVVg5ZnpYRFpLM2pMVzNqZUliTnVtYgpWdjA3emRhNzc3MkJEbldOb2YwRDZPREpDeWZERHg1NDNNL1BkOTdzeDJZZ1MzMm5JYjdJd3JuejV2aithaVV6SCtobnJzVTIyMktlClpUWk9NMm1ubVRYVExlb1pkdlZpazJxRlFmMk1SdjNIT3RVNnVYcURUTE5CcmdJOW9kYzhybE92MEtsOWRackZ1bm80WEdRQUdYMGMKMnBtUisrWXVuejluTnJKOCtkeVZDeFlzbmo3enVULzlCNytxNXNNUFB4aEJSMGVHQi9xKy9lYjljK2ZPVzh4V0h0Y3VxYktKS3gwSwpnWTVYSWE5aTFBa3F4QnlXaU1mbVZ1Y1ZDTExDWmRUTjliSEI4SmlaYUhnVHB6SG1CZlBCWUUzNGRtMzhObFhjQWVtQnBuT0ZEKzV5Cmh2cnpnWFh3Q1AzZ0QraURnckY3eGVnOUJ0cFYydDlGSFJwTnY5OWJmdWROUmdEdjJETmxWNTlrdmY2YnFodlBzSzgvVTNucjZmS3IKVHhkZkFkeHgxUThPSUJBT29LZktJSUNlTHIzMUoxcjdSbnJseS9Sb2ovTmZCK0VhSUtDZnFFaG1ERlpjRkNQdUVRRFJFaVlBcEVqOApYd2dnWWgvK3VybzRna0Z3Umd4T2h6bG54RndMMGNRUytvR1RaYzVOWk9RUkkvZWhJN2ZBMzdMWDZoTEtoQm5pR2dnZ01TOWZMTXdICkFKTHljNFQ4L0JwdVByc3FuOGJPSzJaa1krakpoRE5mOU16aXNzd2llbFlSTTdjUW53S2o1MlV3MGpNWWFabXMxQ3gyQ2lpVGxaekIKVEVuSEFKUlNscEpZbWtJQUtLSW9HUmdvdERJMmtCdS9WZ2dIZ1RhSUV3SkVDWUJCL3JYdytHK1BCdktvbndrQTRRWjZkQnhvRWdOWgowa0MvbkVHVHJZbmUydVNNSkNIUEFDSlBmcmxPZ1pFQmhNMXF1U3ZINDR0VEE0aDhQU3JlcG82Y3NPUFpnU2ZTTm5kUVV4dlNGTHI4CkppMjcyVlRkYktnNW91Y2VyNjkyMUxNRStzSjBXK2ErbHVTWDJoSkQyNU5DRGllRmRpUURCdUdYdzI5dGhTdFZNUUJSdGh5S1A5aVEKVXFQSXQ0a1lMVkpXaDVSQkJoQytGNnhOeFFJUExacktSbVdGUThhd2lPRTY2RGhsUXJBOU1xZ0JMbjllMnhDK3VzR3BuN1ZBTnVhRAo2MDJ2clRFZFdHM2MvNkpoMy9NUVFEQ29IOVBlUDhGeG9MMHZHUGRoQm9vSWNzU0VPS0kzT1ZLQWhNQTdhR0FqMWErOURibjlHZkxoCjk4am5QODc0cm4vbS9kSHBYZWlzWGhRZWl0Zzk3TnN6OUhqMzBLcmU0Y2NHUmxZTWppNGRIbDAwTnJZQVJSZWl6c3ROOGZ0TjhTWFAKZm5pOTZQSWUxSzhiWGRHRkxnUG9lWUF1ZmdBWC9XQXJmbENrQjBVZW9NamRVZVNiUWVTTEFlU1QzamtmZmpQenZmLzBlZk5UNzFzZgplZU9uSFo2K2paeTRoclJmOERsMEJtNTMxeCtHNS8ybzJoR0JmcVpRczhiQzNYVzZQUEpLUWVTNXZNalRKYkhuYVpFWGlzUFAwOG5FCndTT3Y1c0hEQVRSdW9Ba0FlUlFQMlQzRVNtYzM5eEJOQmlEeUtoKzNzUjh5Z1BDSVJjVDRTVGxoZHVxV3BwU1g0S0FqRlFRQUJEU3oKcTlWZE03OHdNbmNlUVk5TFU3akhJNENjNDBBTlNhRE5kcXBibTJ5SjhJNExLNFZvRS9ob1NjQUxNOGNUQVJ1Qmp4djFzWnUxTVpzMQowV0hxeUNCbCtJYTYxNEIrMWtrUHJKY2ZXSzhKWDZ1TFdGLy8yaWJsZ1ozeTE0cTRjVlhDWkprb1d5UE5OOGlMTFVxNlE4bHNsVE9PCjZVdC8rbFE0OUFEZ3BtaXNxM3pveHpLMGk0WjJ1N3VIYUxpckZMMWZPbncvWTJ3MER4MnUrT3JkNHVNTjZRSkpta2FhcTVMbEtlVjUKS2tXK1hsSG9VSlFlcTJOZVVGYWNVRmZCU1RHOTZKWkYvcnFwN3J5Q2U4a28vL2o4NFcvKy9sZTB2d3NkRy9yd2s3OFVsWmV0Q3dwWQpNR3ZlZk1SNzdrS3ZtVE9SRlV2bnovWkNGc3llTVhPV2o5K3NXUnVXcnRyREZFU3lSRm1zMm5LNlhGR29hTWlTZDZUV25xVFd2cDNBCitVc001L053enZjSGFycjJjbnIzY252MzF2VHU1L3p6SVBmVFNNNTdNZHdyVk43UmRKNHRUMVJmTEpMVEpOVUhpOWMvL3J0NVBzanMKT2NqY09kUG56WjI5ZU1IcytYT1IrWWpYU3I5bFcxN2VMdGJLSHFKRG8ralE5ejk4OWRhN2R6cE1haldIcGFwaDZnUlZTbDY1bE1QawpWSmZXMU5CVEpXbmhpcVF3WGV4cVM4d0w5dWkxOXBnTjVsaC9ZL1NhaG9qQU51b2ZOSy91YlE2M3Y1OTNyNjhHZlVqcjcwa0gvNFVmCjNpc2F2RjhNSGtEZ0FXK2dwNnpuTHJQbko4YkQrMlg5ZDh1NnYyVVBkZlBIQm1wT2ZhamZwemo4QlBQcTAxWG5mMTEyNWxuYWxhZloKVjU1bVhIaXk1SXFyZXdnUFBVTzcvVlRwNWFmcFY1K2szd2F2L0ttc2RUT2Q5UXJkcVIvbjhBOERBb2pRRHc2Z0tBYklDYURvTWdBZwp5amlBS01FaXFoTkF0WWt1SndBOUVzbERQd09qQ2JqOHN2QlRjTWpoWnhHdGxjUDExOWkzd1VteERhckVRSFVzS0VnVEY2U0p3Y1BSCmc0OFBBUnZocTZmeG0xYlg2MXpYRFAwaUFJR2ZNZllxNHd0RjZVSU9CaUJ1bmtTUUp4UERFU0FoUDdlR20xZFJuVWV2ekMwcHp5bGsKWk9XWFpSVFFZUENCbmwzQXlpMkF1OER5QUlEUzZXa0FRRm5zdE96eVZCQm1vRlJvSUhwYUtpMGxxU1FGR3dSS3dReVVFbG1VdkxrOApOcGdUdjE2WXNFWkNXU2VPQndhQ3k2TC9EUUFGMUNlQjNNYUJNQVo1MkJzUEdZUUJ5SlZCaElISURNSWtsT0Z4Z3hnQklKS0VQR3dICis0VUFjaldRUit0NGZQSGZBMURnNFhUd2MvbU81cFRRdG9RZExZa1o1bFNoTmsrbm83WHBhMENIZEZYdDJvcm1lbmE5b1l4dEswaDMKWk85cmdMZGViR3lqaGh5aWJqeVV0S1VONm1kemN5S2NHbXVsaExYSHZkeE1aYWp5ek1LeU5oR3pVMEozWFFUdE9nTFVxb1lBYWxOWApPbFNWemZMeUJtbVpVSktUSVUvYWFJME1zY0VGUUFCQXp1RWZiT1pyclhsQ1B3QTZSTThaTWYyWTkyTUcyb05mRXdiOEZOd1lCUUFVCjZFZ0lhNlNHTnNTdGJMWWdWOTVIM3Z2UzYyL2Z6UGlxYS9yZFlaK3VzV205OEhSbUFLQmwzVVBMK3VCazFzSkJkTTRJT210a2RPYncKOEt5aDRibkRJOTdvRU1nSEhRYk5RRWRBTTlGUjBGelE2QmhvenNnbytQNFp3eU0rb3lQSTZQQzBrWkZwZzBQZWZZTStEL3FuZjk4OQovY3Y3MHovNVlkcEgzeUlmZkk2OC9RbHkreVB3Mi9BNi81NzN5YmVtZGR6eGJydUpOSi8yYmp5SzZKb1FWU3NpYjBNNG1sa0M0Zit4Cnl2ZWZMSTY2eUE2L1VIVGdYQWJjdlhXbU92d1VQZXBjRnBrK1V3UElaZjVyQWtBZ04vUVE3cGxzZTVjYmZWN3R6SGIyNk15WG0zN0kKNkhIVHo0UXdtcEtJOE0xVCtJYXBVRnZpWmdjKzVVcmQzcElJUHU1cVRkblo0aTZZZnpVQ091QlB2bXZibTVMeHBuQ1BSLzNnOUhIVgpENDRlSW9JK1lVQThqN29uMUJTSEYyS0VvL1NodXRpdytwaE42dWpOeXFnd2VYaXc5RUNnZU45ejhyMXJaZnNEbE9IQld2Zy84V3ZyClgxdGZ0eTlBdGplaDhtQk9UU3liUTYzaHBQQjU2U0pobGx5WXArRG1uRzlQRyszbWpUM01IdTFQUS92ekg5N0xIT3NxZ01NOEpQcmcKOVQxZ29OMnMwYnRGRCs2VkRQYlEwWWY1bjM2ZFZXalljOUNTZk1DV3N0K2VjdENhUWpHbUZ1a3krWm84bGJyb3VLb0MzZ2F2bDE3VgpTRS9wYXkrMFc3NzQrQTEwdEhzUUhmM0xSeC9tWm1ZdFgrcUxJTWljZVhPbis4eFk2YnRpMW1KazNteGs3cnlaajg5ZHVuZlZjNVhyCmRwN2RTVVgzMHNlMmxhUGJLOUdkMWVqdUtuUlhCYnF6SE4zQmdMM01RbmV6MEYzZ0l4TTArZ3B6Y0MremZ4OTk2QldtczVmWlF5OVgKWUZXQlJuWlg5VVp3UG55bHlMaHVmL2l6cTVjc1hlQTlINWszSFprK1o5cU1SYk9RNlFneUUxbnZ2OXFvVlkrTkRnNE85L2ZmLy83YQoyUk42aVZCV3pSSlgwMFU4QmsvQXFPQ1Z2cUpPMnF5bnJNWDBzOW9lRGZRVFpJQXJTelpxWS82a1N3clJ2M2Jrb3pSMGhJYjIwZ2EvCnlVZmhrRTh4QVNDY1B2aEQ3NzNDb2E2eXdlN2N3ZTdrMGQ2U3dSOHJCKy9TZW42TVJ0SDhMSjNHdC9qUzQ5WFhmc3U0OG16eDlhZEwKTGoxYmVQWEpFc0NkNjAvVGJqeFRkaE1QUElOWG5xSGR3UUgwRFAwVzBOTHp0T1l0VE1ZZStqNWNQM3N4QUxsT2ZrVXlvMEdZZnB3QQppcUVuZ0RBQVVWd0FCQzlreFFDRUg0Ukl6cDFFLzcyUjZZT0gzekpHL3JZQUpTVkFtUUFLVk1YRG9JZWlBWVA4TmJId0pDR3RjNmxRCm9DNHFxRDRjaFBPSUhKaytlR3Yxa2J0VmNUbmlOQjRQQTFCTnJwaWZLeEhuQ1lVNWZINU9OU2U3b2pxSFdabE5LODh0WW1ibmwyWGwKbEtTRHNta1p1ZlNzZkVZZUhBRmk1WU15eTlLeW1lazVyTFJjZG1wZU9meVl6VXpOWXFSazBkUFR5bEtUUzFOeEFNV1ZwTVFVUVFDOQp4STRMcTRuM0YxRUFnTmFLNDRHQjFrc1MxZ01EdVFESTFVQWU5VE1CSUxLQkpqc2ZLTXljQ25JejBKUkRRUkJBWkFOdGNVejBLSU1lCkFSQmhvRzB0Nlo2YnhFRGpTNXNmMGMvRTNlOHVyNC9Qa2JuVFoyb0FiVG1jOGtwcitpdU85QzB0cWFFZDhCeWdORnRhalNtblFjMW8KMUxFZGVyZ0M0SWltNG5COXBWM0xWdW5vTkVOV2lqa05NQWlPK2h4S3d2ZkFiMjZsaHJZbmJXMUpDRDRjdDdVdHNiQSsyeUNndFFybwpIVUxhWVdrNUFOQlJWZlZ4RFljQVVMdVMzYUppQWdBZDBsUUJBTFVvS2xxa0xMbWtvRkNTc3RVY0dXYUpDTExCRGZBQVFFQXpRRDhiCmpBZUFma0M0ZnZEQkh2aGczdjlINDE3dzhRWExnZWZOKy81a0FxL3ZYVzNldjhaeUlNQVdIdHFZNHQ4STNrVEJ1MUgwcit4cTVPd3QKNVBXUHZUNzhjdnFYZDMxK0hFUzY0Tms4cytBczJNankzaEh2L2w3djRiNFo2TU9GNlBCVDZKRC93TU05ZHgvR2ZUOVUvbFVQNTh1ZQoyczk2akIvMkhIcW45L1NkM3F2WGUyOWY2WDNuL1Bmdm5mdiszYlBmdlhQbSt6ZFBmL2ZHbWU5dW5mMzI1dG52ajEzdWJiM2NwYjE2CnQrYkdEMW12ZjMzZ3JTL0MzdjFrOWJ0L25mUCt1N1BlZVh2R25UZDhydC94T1g4VE9YNFZPWFFlYVRxTm1EcThkTTNUbEEySTJJcFUKcVdieHVNOVoySHZQTUNNdTVHTVRXMlh3ek1PemhVQS9yNTB1amJpUVRTWU9IbmsxRDk3NDVCZnM0S2tpSXZKNEQ5NWs1L3FRNmZOSwpSeGFJUUEvdW5pbm9RMTVQODRnd0dxbGJIYzYyakc4YUQ3TW5oRmdwUUJYYlcwQ0pvSjJ0MUowdHlSQXJKTlA4a3NnalBXN3VJWnFhCk82N2ljYzBqZlFqOTRQUng5cWg3OElJTk1VSHFTRkN3SmdwOERLd0xENVM5dGtHNmY0TmszenJGM2dEbGdVRE5RZi82aUxYMTRRR3EKaUsyeWlGZEZFWW1WRVhrMThXeE9TbVZsY2tWMVNnVTNvNHFiV1ZXVlp0ZkZQN2dyUjFIdXc0ZWxLTXBFUjhzR3VrclFBUUdaUG5pOQpnMlVqUDlMUWJzYllZRTEvRndzZExQNFc1VlRlTEZuYkZyLzJNR1ZkUitMNmRrcElDK1VsUitLQmh1VFloalR3TTlLaCt2SnphdTVWCm0rYmRtMmU3SC80MGhnNzk4L05QaXdyekgvZnptNFVneStmUG16ZHIrdng1TTMwWHpwMkRJSDZMNSs1KzlnL2FvUERQRDFiMTd1ZWcKcnduUUNPN2RBL1Q3QjVuZzQwLzd5MzdhUzd1N3IremVmdnI5QTR3SHJ6Rjc5dFU0MjFQZHQ2Y0sxUDhxYkdoMzllREwxUTlmcVI3WQpVOTIvdDdvWHEyZGZkZjgrOEk5VTloM2dvbnY1NkQ3K0Y5dHpsYUg3TnY3aC96dzdlODRDQkZtNFlQYXN1ZE5tVGZOYU1tdm14clZyClR4ODZqSTZPb1dPalgvLzkwemFiVVZCRnErRVUxMGhvaFpWcEd3MlVRRlBjZWt2c2VndWMvTUptSWVNM0dPTzM2Tk9lVnlha244cjYKZWxDQTNzdEM3NWFnZzhMQnJ3dHg3dUREUDdpRWhydEt3VWYweHlMMCszejBYakhhVTR6Mmx6NThVSUFPbDQ2TkZuenhVelZGMzdHYwovdDdLMHJlZnlYNzNWM2x2cktLZCtSM2prcHQrQ0FNOVcvWTZYQTFOdjRJQjZQS0xaWTFibWFWN0dLOFF3ejg0Z1BEaEh4eEFVUzRBCmlxRTdBUlJlbWhCVkFobjBTbVhpT0lEQW15aUY1SjcvWVFDNWZNOGp2eDkvT1JXN0RUUnhReDFrVUlBeURtZlFCbVYwZ0NvbVVCa1YKcklyY3FJcmFvb3JhcG80RWtla3pOWUJXR3lKM3FtSXp4S2sxM0J4cGRTNElCeEJma3NzUlpsVnlNdGhWbWF5S2JEbzd0NGllazErVwprMW1TQnNvcXljeWhaZWN5Y2dGOUN0alFRQVNBZ0g1d0FJRm5IRUFadE5TVTBsUnNFQ2dWR3dSS0JRYmF4WTdmVkpPd1FRZ0J0RVlDCkFRU1RKTGdCaURDUVIvMUFBRzJBTjg0L0FpQzh5YzRId2dGRUdJZ01JRGNERVFCeU05RG14Z3hYQTdsZ0tJTnNJQmlaUGxoYlBSa0kKUm9MTzFBQnlucVJDamtRZnZMMnQ4SkNWVGUzcEc5dlNnenN6QTQ4azcyeE5TRzFNbEtzS3JQV013L1VWUjdFWnE4T3F5czY2eWhPeQpDcDJ1cE1xWVI3V2x2OXdNbC83Z3k0QTJ0amtCRkhBNGR0T2h4RHh0dGs1UTJzSXZPeXdvQVFBNklxK2FERUR0bXFvbWRWVnJYV1ZyCkxWc3RMcVNKVTE4eVJXNDJSUVJabkx2ZjRlU1g2VUNBWWIvYjVCZXVIemp3ZzRVOTczdkJzaC9vNTBYem5oZE1yNEovTU5DZUJBQzAKdVlHeXpSYit0RVdCbkxpTVhIOFhlZi92MDcvNDBmdUhoOGlETWE5ZWRHWWZ1cWgzOUxIK3NiMzMvai9xN2dPcXpldCsvRC9aTytsSQowelpONm5obUp6WjdHanl3OFdCdnRDV1EwTjU3aXoyRVdBS3g5N0xCSTdGangzRTg0cEhSakRaTm1xUkptN1JwcGdkN2FqeS9lL1VJCldVaUEwLzc3LzU3djk1ejM0Y2lDZ0lIV3ZQamNlNTlubHYydnVkYVA1dDg1Ty92ajRjbjUvdXUyN3UvbnU3OWRhUHArb2ZFN0c4ajgKcmEzdUczdnR2eHcxLzBKTVh5T21mOEtxL29GVWZZMFkvMm10K3NlODhaOHpwbjlhSy81c0wvc1FLZmtJS2Y0SUtma1lLZm5FWHZxWAorYktQdjZuNjg4ZlZIN3hhOTY2NTZUS3IvV3hzMThtTm5ZZC8zajU0cCtYd3JhYXUyMHBiL0RSMXQ2bkxuMnd1U3oycElwNGhwcjJ1ClREN0JTVC9Hd3h4VDVCeVRaSjltWlozbEpKNFUrdEpuZFFDbEhlZWx2OEpmVEpoMlhKRG1QTlB1NVI3MzdNZjNhczdvUlgyVzFRL0kKZmF6ZGx6N0w2c2ZMUFc1UEFBQzVEYlJqVVQvd2VqbnRCRGVBNGp3QTVFdVpmemQweGMyWFBydjZLS0NWOU9NNzZmSE5kK3JqQmFDdApQdm9COUVHTE1lZHNiUUMvMm1ZSE4yUUcxS1g1MTZZR21sTGd5bGR0WXFRNU5hWWhNN0krTTd3MlBhWW1jNjh4SjZVa202SEJ5UFRrCm9zTDhZZ1BkVU1UUVZiRDFGVHh0R2FkUVI2dXJ4WTZNNUIwN3lubHBoUDcrdTlLL2ZNVCsvRE9XTDMzUVJ1ME1aRnFIakFsR3IrUEgKcm5LLytVSjQrRDF4Y25kK1hBOXhieDk1M3dBY3d1MEV2L01Na3NELzJiY041L0lzVkdPajRJMGp6YU5mdk85d1RNd2djd01EQTg4OApzdGJ2RnI4SEg3enpGNys4NzhHZjMzblBmWDczKy9tRlAvS0liR2ZjdHp2VnN6alRYRVlKRXE5RkVuWGorK1NUU1ZxQUdFaVovWHJRCjNQN0MrZmdpYTN6cHd2NlMrWDNGMC9HYXFRUU5lSnZ4WkpCNklsazlsYXlaU2RMTUpLclJacE5VTTRuS21VVEZkSUo4Smw0Mmthb2MKUzlET0pKY0JLbG1URlBZRUtaSmVhazB4bmt2bkdvSjJCLy95MS9mY2VjdGRQNy83dGdmdXVQMmUyL3o4L0JJU1V5OWN1QVFNdERBeApldWJVWVVPeFdLaWxDWXJva2Mzb2Zhbmc5eUs2Q1lRTmJ5VUVkNUpmYktGRmRoTjNObXlydjBoOC94L2lmL3dnK1A1SDd2U2t6RFloCkJlSUJMd0dBWnE3eUFYM0FZL0J5ZklwMlpWVHk0VitMVGx5cVBmUldTOTJKa29LRDFZck9uaVJWeCs4NWwzNnRmUHRaNVJGLy92bU4KaXZkK3JUcjNPK243WHZSeDV3VFFHeEJBaW91TEFCSW55VzhBeUd2OUswZUZRUUdVSmMvSmtXRlJBR0VWeEJzQTBwS2pLcUIrbkFEeQpkYy8vRWdDUmcydWR0K2x3M3E4RDVMNWJtWWVCSUlQQ3FqRVIxZGxSMVZuYnFyTmpxelAzMW1USDEyWW4xcTBJb01XOVJONXRhYzNhClhZK2xHYW1HWWdpZ1NqMjd2SmhkVWNFdE5ISU1aUXh0UWI1S1IxTnE2RElWR3dKSXdtSkttV2dzR1FRUVY4bEZZOHBvYkVVK1Y1WFAKMDlCQVhEV1Zvd1RQVUFHQWdJMm9VcG9iUURnaEJOQStGWDY3QVFJbzBFanlCRkJ3eFpKVk1IZSs5SUhmeEVxU1g0aVo1QTVneUQwRQpDbXZPQllXMzVFVzBVa0dSYlRTMHFBNnF1NjJkTkxUb3JuemZZcnJwb0cwOStWNEIraXlybjhVaEVOMHJid245dEwxQm5zUlppVUZMCjg2SFBxdTA4dUh5TURscHhHN2UzU1g3VXJBWUdPdHlnRzdUb2V5MjZJelhxL2xwRmZaMUkxY2dodDlIQVA0Nmh3NlROUnduN0Jza3gKdzhTUUk4VFlnMlJ1RTYyMWxEdGNJdTAxcW9lTnlrTW05YUVhdUEzSWVRUk10NWdHdkUvUWNJTjJxRjdiVmF0c05JcXFTdGpZV3Z6Vwo1c3huZTlPMzlHYUV0YVdCZ2pyU0E5clN0N1NtTGR2emJhbGJPakpBNE1IVDdVblBkYVFBQnNHajhtMllMZTI0MEI1Q2RBOG1wb2Y4ClpLZjRqdjVPdjNNZitYM3dxZDluZjcvLzIyK2V2WFlWKysyWTVhT3hEMTY3UGpGOHhkNTZ4ZGJ5bzdYNUI1QzkrVWRIeXhVUWVHRHIKdkdidHVBcXl0VisxdGwwQm9XK0p2ckd0K1R1NzVWdFl3emYyeHEvdDVuL2E2cjhFV2V2K2JxdjltNjM2YzZ2cHJ6YmpaeUI3NldlTwpvbzhkdWc4UnpSL3RxbmZuNVpjbkpHZXZDbDVyMXgyVHlkcDNDdlFicFV4L0N6L3hWV1htYVZiMnF3VGlVVW5XQ1duQ2FYSFNhM0QxCkt2c1ZYdXFyM1AydmN6RXZTOU5PU0pKUDhsTlBjRk5QY0ZKT2N0Sk9jc0ZyUGFjN25xSGljYnZITTkrRFhiNTduRmZhNitOZThGcnAKdWo2ZUFQS2MvWGdaeU1zV0tDRFEvY0pidTRoUm5ZU0lkdkR0STZKZWllMkhOUEVsQzVwcmxyUDBZN21MYzdhN24rcVY5eURLalo0ZQpDaWdXeXN3VitnemFqbTZ5Vjc3ekhsZnRycUxiQ0doYlcvR2diUzM0bUdZYytQbTYxUUoveXFJUDRIbVcyc3pJbW95d21uU0FucUNhCmxJRGFsSUM2VkZCMGM3cC9ZMnBrT3lXcUhoZFJrN0xOa3J5L0xJbWl3c29MU0VvRFVWZVdvekxnUzBxMFJZWGNzbkp5b1lHcE1sQWwKY2p5WG41M1B5NklJczRqaURLSTRqU1JLZSswTnlvSk5pb3puTzZZNGMyTUZ5UFVDKzR6QThqNEhjNEJPT01UT0dXWWw5ZWZ0N2lSdQpkZTRrQlZhTEhLTHVIS0RGZEpKMkR0SEF0MkJQTnpGdWtCZzZoTm5aemhqODRNajh4SS9JZ3YzekR6L09TRW05M2Mvdi9udHVmZlQrCmV4NjY5L1k3NzcvMW5udHZqWHJrZHgwUjZhTVpCaVM1YURaUnQyd3pRQzMvbFpKMHk0YnNMMFJTeTYrbkYzUkVaRVkrL05nZGQ5OXkKeTRPM3cxdGozT0gzaTEvL1hDd1VUWTFPT2hEN3UzOTlyMmlnTXFrUXQ3NDdQV3lBR05XVUE3NDdnRDRCVFRtaDdZU1FGa3hFQnltMApHUmRremdvQTM1cWFqT2hHM040T2FuSS9PNmVYbHR5YklqNUsvMmFtMERwR21mOU9qbHhUSTFlNGpsblNXeDhaZnNkKzlXN2hheHNGCkp4L05PL2s0L2NRdithOCt4anU1aG5jZUh1eVN2TGxKL3ZwVHNoTlA4QzZ0VVoxNGh2ZldFNnEzZnk4NnUxRjI1bkgxUjcrVC9PbHAKeFV0d1Y1RGk4a2JaeGZXS3MydlViejRsZnlkUzFob25wOFFwazVKazZjbnlqQ1g2VWVWa3FUR2VHNEJ5bEhoMC9JT1JrM0FpdUFTVwpvaURINnZQQ3kvTUNUZkJtNzZGVkpDQU1WOTc2OFNYUklrcVd6NXM0YUo0M1dQVU12S3ZscThsYnR0QVZDcStoQnRTVC9PdHcwY2JzCjlNSXNtaTZicThOeUNvbTBDZ3pPbUIxZmt3Vitad2kxWklIQUx4VlI1dXhRdUpFSUU5V0EzZW9NUEhDcUtDZTRHYi9Wak1kVVVYVEYKREZNQnU2eUFXVkxFTXBYd2lvc1pCY1YwVFdHK3ZJQWgxdE9GV2pvUDRFYWVMNVRtOHlUNUhBbVRKV0d6NVZ5dW5DZFFjUGx5Rmt2QgpaaW1ZWEEyVHAyVndWSGtjRlFVd0NEeGdLUFBSYlVDNUVpcEpjc05BcVJKeXJBNEs1c1Vhb244VkxyUUNCSmZBVnM1YlA2NEpFTnlIClZVY0lyaWVpQUVKSFFjQkFvVTBVTHdPQndPUElkcGl2Z1ZhU1VFdzNEZlRUR2JTakx4OTBVd2JkRkVBK3ZybHAzc1JadlIwSDhwWXQKc1o4c2JhVzNOb2dHTE1xaEpnaWdZWXV1cTBVL1lGYjMxNnQ2NmhTV09uRnhBNS9UeXN6cXlkODNRSTBhd29jTTQ3Y2N4bThmSXJJcwplVTJsbklQRmtyNEsxVkNsNG1DVmFxUmFNMUtyQlEzWHVWTWZjcm9LQlZCUG5jcFNKVGFWY29pMWhHM05PUy8wcFB2M3BJZTJ3c1d2CndQWTBmeC8zdUh1bURidWxKVHVvT1Myb0pkRy9JOEcvS3dXOGZYQnpXbGh6cG45Yit1YmU1S0RlWFpIZCs3ZTBVUjdyTUQ1NjdGek8KeGI4WG5Qbit6RXRqNDcxVFNPTTQwbkIxdnVPSDBjR3I5cTdyOW81clFEbmdKUWpwdUE1cnZ3WUFoQm9Jdk1yWFFBQkFxSUVjamQ5QwpBRGtOWkRkL0JReGtyL3U3dlFZYXlGNzFWeEJTOFlXajdGT2s2QzlJd1VlSTRVOE83YnV6NnN0VGlnc0k3eExDdmpESFBQVVJhK0JnClFWdFJWeDMraUM3eFZYbjBCZDdlMTNsQU9SbkgrU2tuK0trblJUbXZpRWt2aTFOT1NqTmZrV1NjRUNXOHlnY013cjdFenpvbTNQT2EKMkpjK1hnQzZxWDdjN2xsK3U4OXkrdkZhOXZKZCtmSVVqMWR1L2FBRGxaMU8vYmdCZ2VvbnNnTWYzcGF6dlllSVRtdDI5cEhSOFF6YQpzZ2J5L1VCbzN1N3B5ME5iYWRMekh3UElhK3F6ckg1QWJ2MjRBL3FCaTE4MUdlRzFHYUhWYWNIVktRQkFnWFdwZ2ZWcFFRMnBVYzcvClNVZTBZS1BBV3pha3hkWWtaeFJsY3ZSNU9vTklXOEF3bE9ZYWloaDZBNitvbUdZb0pKU1c4Z3BMMmVvQ21reVRLMUxsY2xWa21nS0wKbDJma0tGSk54L0h6ODJya2FqNWNySm5SMjM5Z2ZUc3F3L1RrYksxT2lER254VFNrYjIxTWoyN0tqbTdCUnJmandYZGtkdys4RE1HTwpRZmoxRCt2RWJEdkUyTjVKSnZYejN2dnl6VWxrZkFhWk05WldQZnp3dzM2MytQM3lOeisvKzhIYi9lN3p1LzFldngxcjFvOXN4MDlrCkZ5MWtsVXlrNktaVDlONWUrVzgzbmJoOGs1bkZWL2VycGhQMVNIYmx0NG1xOXFEVUhiK0JZeXFndEx2dXZzM3Y5bHQzeHU3KzdJOS8KaHJ1MnIzOVdmS1lsdEprUVdKOFoyVTRLYWNOR2RCREE5eTdVa2gzY2lndHZKNGExRWVCRjlocHpRbW96ZzZyU0FpdFRBaXFTL1l2aQpueXZQaUM1TmZ1Y3JqWDJTQjFmRXBoV1RQOUlkODR5Kzh6VlBDTTc4WEh4dW5lRFZKOWhuMTRsZWYwUndGaEJudmZUY2V2SDU5WkkzCk5zcmdxdFpheGVuMW1qOXQwcjcyRytrZk5oU2VXNnQ4OVFubCtiV2lpMDlLenp5cGV2Y0o1VVVVUUUrb0xqMGxmeXRLMWd3QXRGZmgKQWhDcUh6ZUFzbFVRUU9qNkY5RFBUd0VRT2w5eFZVM3l5a2M1cStSTm45VUI1UE9mTCtZRzJkS1czclgrUm1IVmVVRzFGUERUUDZZUwprMUdRUTlOaXVEbzgyMERpRmVHWnhUaEtLVGFuRXBOVWc5bHR4c1EwWkVjMFFnYUZOV2FId28xMHpsdVBOVHIzVTVzeEtJQ3lxOGlhCkVrYlZJb0NxaXJsRnBVeERpVGVBK0FvNlg1YlBsZWF6SkV5bUZBS0lvK0R4RkZ5ZWtzMlVzNWh5QmdBUVh3TUJ4Rlhud2ptUWNrVUEKcFluSnU3WGs0SXIvendEYVlzTDRWMlBoK2JwRkE2RU1DckdRZ1lFOEdZUStRQUhreVNBdkEzbEpDQVdRT3k4QXVmTUNrTHZWR1FRbAo1RU9mLzc4QnRITW9EMTV4em9jK2FKRUhDZGhPU29HRjNkWW9IV3hTSFdqU0RscTB2Ulo0Y1AxQVBhVE13V3BsZDdXc3JsWllZT2JLCkd0a3BuZVQ0SHZMdUFXSktOMFZjbjk5U3doMHFFbmRYS1BzclpJTkdCYndnVURXOC9RWGF3VnE0Q25iakZ2Rm1YVys5dXNVa3JTdmoKTVdweTR5eVlMVjNwVzdyVGdsdFRnbHFTblZ0L1VuM3BnN2EyYS8rTDdZbVJyU21nemExSlQ3Y21CN1ZrYjI4bGhMVEM1OWYzSkQzVwpteGd3Z00vdE12UlpqbjNaOGkxaStSRnB2Z0prZzNTTklUMWo5dTVSTklmSFkvQTh5QUVlQXhVNVF4bUVHZ2dOTlpDOTVYc0FJRWVUCjAwQ1dmNEdBZ1J3TmdFRmZPZXEvaE5VQ0JuMkJWSCtCVkgyQkdEOUh5ajlEU2o5QlNqOUdTaiswRjMwd1ozaDNYbjNacG5rTFVmNEIKNFY5QVdLZG5lUzkvS3VtN3BPMXFhU2lROStuVFhsSHZQaVZOZmtXRU95ckVIZU5sbnVRbm5oTHRQUzFLT2lVQTlBR2xuQkFuSHhkagpqa2c5SnowL1plcmpxUjh2K3JqMWMyT244MkhXdjBzZnozSExEVzMwNXJyLzZLa0sxQkRiblhwd3J4TkZ0T1BDMjV3WEErd21vSnVqCmQvYVFZbnVYR01pWFFlNlA1WlhYMzhUZEV2UjRySEN0QkNCZitvQy9ObWliODJDWE8vY0pyMjJ0cm1KYThHalJnRDdOT0JSQTZDVk0KNERsZWROTVBYTjZDNDUrUW10VGdXbWZtOU9ER3RCQkxlbGhMU2xSVFZuaFRaa1JyWnJRNUxhazBrMTVBRkNvcENpbTFxSmlxMFpBcgp5bVdscGF5eWlseWRubVF3TUF6RlRFVWhYVlJBbGVob1VsVWVXMFhBNnJNU2l0T3pCN1BIWjh1UXE0ejVxNHJaQ1FHQzhBNS9LQXFyCnpkM1pnWTJGMTZIRzdPakE3KzRobzk4ZytDWHFKTWIyRW1QN1NkdjdpVHVPc0Y1c3dwRDcxUjlmKzhSdW4venl5MC9pOThUZDduZkwKZlEvY2Y5djlkOTMzODd0dXY4VXY2RGVQV2lKVHYwOVdXWk1OczRtNk9hQ1QvZXFwNUJVblBiNHpvZjhzWC9xZ3plMVdUeVVaUnBQMQoxK01VOXYwR0JHZjZORTFwQ1V6YTlPRDlkOXp1ZCtmUDc3dnp6cnQvL1l0SHVudTdFTWM4WXB2cGZPL0k3Z2I2WmdzdXVEa25xaFdlCi93cHV4VVMzQVEvQm5VQ2dzQlo4UkJNT3JwdVljOExyc3NNYmFNOWJXRnVxc28zSDhxd0x5cG5ydEtseDNkU2thSDVleSt6c1h5TTQKOTVqc3d1L0ZwemVJTDY3VnZQYTQ4UEphNlJzYjVXYzNTZDk2RWpMbzdTZmtiNi9Wblh4QzlNbnZSVWVmNEwveG1QaFBqeXZQZzFjOQpLNzBBaExSSjlmWmExYVZOOGtzYmxPZldxaTgvSTc4WUxXdllxeUR2azZlZzR4OVVQeWlBNE82ZnhmVXZGRUJZeFEwQTRTV2VBS0lGCm1xakJWYmx3U2FVcTE1V0pzaGdKNUZhUnQwVjh5YkpxdnZSWnpKc3lOOG1VdDJ5aFZiU2dhdkNBc0tzTWw2M0gwalVFam9iRU5sRDQKQnFKUVR4VHJ3RXM4dXhoUHFzQ2ttYkwzMVdidE1HZHViY3lFdng2M1pQbTNaQWRhY3NEM2NXdGRUckFGRjJuR1paakl5bEtHcVpCVApYc2dxTG1SV0ZMRUxTeGo2NG54VkVRQlF2Z2VBYUR4NVBsdVd6NVF5R1ZJMlE4RmxLK0FwTUs0YlFDcUdRTXQwTG9IbDh0VVFRQ3dQCkFMbFd3WVM1V0VGZXBvZ2NweVdIVnBBMlY3c0FGRnhKQ0tvaUJvR1h5K1ZMSHhlQVhqUm1iNjdLQVF3S3FNRzVSMEV3QzluTFFHZ1IKYmE2OEdMUVNocUs3cUNBdkJya2w1TVVnWnpTUUY0TldrNURQcmlEWDNxQWgycjhaWkkxdm51anh6SmMrYU51SGlERUh5UGh1V3AyWgpkN0JHMW1OUnREY3BoK3BBR3RCZ3JicS9SdFZyVW5RYlplMlZrcllLWVdrdHU2Q09wV2lreXl6MHNocFdSekd2cDFqVWJGVDBWa2o3CmpmS0JLc1dnU1FrYXFsWUJBSUgzY0tBZVRvRFFEcHAxL2ZXYWRwT3NvVndnck1wTE1tTUQyak8yZEtZQi9RUzJwUGkzcGE4Q29NZ08KZURIb1RTM3h6N1NuKzNmbitIZG1QdE9SdEs1ei82TjljWUh0ZUhLRHRzM2MrMm5ITy9OOS8wQjZSNUhlQmR2QnNmbkJhek85VjJkNwpyMXI3eHBEZVNhUjNDdW1lWE9nZFJiUDJqTnA2eDBEZ2dSV2dCK2pIdzBEb2xBZ2RCUUVEMlZ0L0FBWUNBSUk1QWVSdG9OcS9MeHJvCmJ3N2o1L2JLdnpvcVBuV1VmZUlvLzloZThtZGI4WWVJOW0ySDRySlZjbWxPZkdsV2N0a3FBZ3g2SGFHZVdzZ2YrcEhiOTVhNnBhbTIKa2oyZ1RYcEZ0UE4xZHV6Wi9PUlhlSmlqUE94UlR2SUp6cTdUbk4ydkNjQ3JNbzZLZk9tRDVpVWVyd1V2MzNuUFNudDlmRGM3by9yeApYZkJ5RFg2VzZzZk5DUGRqTC9xZ2hvaEI5OGM0aTJwekFTaW1Ddy8zQnZXUTBNQ1BaNUN2aEZBTWVaTEZNMC8wZUQ2L3JIN2NBUExOCmx6NW9idkY0SFc1M3U4ZE5IeEE4NStVYy93RDNvUFFCaGNIajd1bk8wdHo2Q1cxTUIrZ0piOGtLQVFCcXlOamFsQkhlbWhwVG5Vb28KSUNnMGVRcDVUbTgzL2RqTHZNb3lZcUdHVjFwQ0x5M1BLNnNRNm9zWUdnTk5hTWpqNlBQNG1seXhuTWhVWVROS3NuYldad2MzWmJ6NQp1UUtaazloKzREdkdPZGNSUlc0L0lhcU51NzBQN3I3YTNnUDN6RG0venZBemplMGk3eGpKQXpEYTEwdU02c1pIZCtVcVQ5ZC83UmlkCmM5amFlOW9lZnZTUk8vMzhucmpuNXc4K2NKL2Z6KzVjZjgrOWxTOXVuOXV2c1dVVUw2UVZ6aWNick9sRkV5bTYwZjFLSzl6QzdFMmYKL3hrQVRhYnFSK05WTTBrNjhMY0NMOGYyS3NDVDRDLzJ4d1NlZUZQWW12c2V1UE9oKzIrRnU3VDlNSmpzRHovNTh4eGlQZkczeTNuRApCbjlUUm1RM01iUWQzbDBocW9NYzJrNEliZ1Vxd29ZMFljT2JjUkV0K0tnV0FpaTBuaG5ZaWdQL1VzV2JVajY3cWtObTJiTmZTUnl6CmdzOS9xQW5Vdi9vbzcvVU4wZ3RyRk9jM3lkOThYSE44ZytUZGRYSjRmZWZuRkI4OEpZRVAxbWorK0h2NTJXZEVad20xUGNMK05uL1IKaDc4RjNCRmNlbEgxemhNcWVQM0RkZXFMQUVBYlZlZlhhaTQrcHp5M1RWNGJMOGZISzFLQmZ0TGttWXZYZlVhUHZyc0FsS1BFZ29CKwpVQUJoWlNBZkFGWGxCMWRSUXlvcDRPVnlCdklZQzNrWnlJYzRxK2ZqbnY4eWdFSk05QkFqTmFxQ3NxK0lnTk1SR0dvU1IwTmg2M0taCmhqeWVqaUxXa0JScW9rSkxrQmp3N01JY2FuRm1sakU5eVpTeHN6NHp6SklWYU1rS2FrUUJCSStTUmRSalU2cEpzaks2c1loVFVRQUIKVkZySU5KVFF0TVUwZVNGVmJLQ0s5RFNCSmwrZ2hBRGl5UE5aOG56QUhicWNBd0RFVlBJNHFrVUFTZWtvZ1BqYWZMNDZ6dzBncGp3ZgpBT2pHUG1oaExvNmZseU1nNzFPVHc4cEovaVppb05FRm9BRFRmd1FnTk1BZ2RCU0VNaWk0a1FSQ0RlUUpvUEJXQ21oMUJubGlDQVdRClo2c3ZpcUVBOHV3bUV2S2h6MzhYUU43dWNWNXNGNzNqMHJMRkRWQkNoMG03QnlueUprWkhOYis3VHRMUklCMnNsL2ZXSzN2cTFkMTEKcXE1YVpWZU5vcnRhMFZNbDc2MlNEMVJJK2lwRXJWWEMybHBlWXhXL3UwVFFYU3B0cUpKM1YwcDdqREx3Qm4wbUJhaS9XZ253ZExCVwpjOURzMmdQa0JsQ0hTV1lwRTJqS3FabTE0QmV2ak0wZHFWQS9yZkJlcC80dEdZQkJ5L1prRXlhZ0JRdlhTcnB5bnUxTWViSXRNYUFqCmJVYzN2cVN0K25UUEs1TjlYeUo5czBqL3duanYxR1QzT05JMVBkczlhUjJZZGh5WUF5MzBUODMyallQbUJpYm4reWJtZXNkQjF0NEoKdElXZThma3UxMHpJeTBCdUJnRUEyVnErWHpUUU4walRONjdOUU02MU1FZmRQK3gxS0lEK0JnRmsrc0ptL014YSthbTE0aE5iMlY5cwpKUjliaXoreUY3enIwTDJES045QkZHL2JKWmNjL0hNSTV4ekNQT05ndklIa3Y0WlFqaUtVM2g5WURhOGFTdFdkdXRUanFqMG5oWW12CjhKT1BjeE5mWVNlZVlDVWZaeWU5d280L3dmV2E5SGlOZkx4MitTeExIODk1enhMNmpEQmd5MjMzZ1FINkRPYWpvZnRzdkhiYkxHT08KNWVpem93UHF4MzB5SE9nbjBua1p3SWpXYkhpRGlHNGlhSHNYWVZjM3lSMHFJYTk4NmVPYkoyaFdldDUzMHVPTEh0K1JqL3Z2Nzg3TApQVGRhWFBOeURYN3FNd0Y5UW1yU1F1cGNCWnRUUXhyU3dpd1pFYzFaa1MyWklTMnBrZldaTzVweW9ob1RFNHdaREJWWnI4QjNOdVdOCmpjcG5wclVYenNxS05iUWlIYU9nbUdrb0VxZ01WRTBoUTFSSVkrdnp3TThEcmh4UDFtVHRxOGdFbGdvd1p4V01ZR2JuRmNnb0g1bVYKZGY2QkdGR0wyOTFGaXU0bHgvUlJ0anN2NUxnVGZqV2dML2YwNVlZY0lHenJ4dTN2cGlTMFVaditkR0FDbWJGYXJUZ3MyZTkydjE4OAorQUNrejROMzNYbkhMZG0vZStiREZPRmN1ZzZKVmRtVDllTnAydXZ4OHBtOUNsdUMxZ29nc2svaFM1Ly9icjcwUWZzbVJUV1pwTFh2CjE4M3VVVjNmcnh4TjA4MmtHaGIycU9lU3RRaXU4czAwY2ZpdkhyL3RuanZ1ZmZDQlcyKy83YTVISDI3djZFTHMxaXVPSzlnaDVmT04KMmNBNjRSYnM4ODNab2ExRVVFZ0xJYXlGQ0FwdklvUTI0a0xxTVJGbWNreERlcEFsYmtzNW8rSzRDVmt3SWxmeUVGdCswK242UjdnWApIaGVmM1NCNVk2M3MwZ2JGcGQ4b2oyMlMvR0c5NHZXMXNqZWZsci8vcFBEOFJ0MnJqeXJmV2N1K1JHN3EvTmUxNm5HSG91U2xvWTBBClROTHpUNm5mZTBKOWJxUDgvSHJOcFNjVmJ6MnBCQTh1dnFBNnZWMXVUSkRqRXVXcFFEK2VGLzVCQVpTandzQ0FmaFlCNU5RUEFTTWwKQWdCaHBDUVhnTXJvQUVCQlJscElaWjRUUU82V2tWRHdqUTNJcStkTG5QOG1kRUpYQ0FBb3ZKSzZyWVNjWkNDUU5BU21ob3dDaUt2Tgo0Mmx5K1JxeVVFTVVhUWxpTFU2c3hZbzAyWnlDTEdwUmRuWkYxcjZxckcyMVdaSDFJRGdCUWcrVXhac0k0bko2WlRHbnNwQmRWTUFBCmFZcHlGWVZrcVlFczFPWHl0VUF6ZVFJbFZTQ25jUlYwdG9MT1VzRHhqeHRBUEJXSExXY0RBSEdVZEpHT0pkVFNVUUNCLzRTdG9uc2UKQkNPTFhBREM4c2tKS25Ka0tTbGdLWUFDallSbEM2b2tMZHNOQUxrTkZGQ0RnOWRvTWhOQVFRMUU3emxRQ3hua3hhQlZKTFMxTXc5dApXUVl0SnlFcTJ1b011aUdoQWRxeTdSaWsvcHU1Wk9QVjh2b1pvUGpTQjIzbklIbnJJREZtZ0pqUm5hdTBNSnBOM0o1YVVWdVRwTkVpCmE3SEllOHlLZ1RvbHFLZE8xVmFuc05UTE82dGszWlhpZHFPd3dTU3dtQVNkNWNLdWNsbFRsYUtyVXRwdGxJRlFKd0VERFRqdkFqYnMKUEZxUEFtaTRRUS8zUVp2a3plWENpaElHd1VRSWIwcmYwZ2JQZlBtM3B3SUFCYlRDRFQzTHRxVWQ0OStXK1d4NzB2cjJoT2ZhY05nMgo3WUdPSTk5MmY0ejBUQ0I5TTlhZThkbWVzZG1CNnpORDErWVBqYytOakUwZHRNMGN0TThQMnhZTzJxd0g1cTJETXd1RFU5YWhhZXZBCjFFTC9KSnF0RDRZYXlBMGdUd081bDhQZ0JNZzVCSEl1aEgwRHNqVkNBOWthL3VuY0VQMFBlKzFYcUlFUWFLQXYwRzNSMXNyUHJPV2YKMmtzL3NSZi94VmJ3eC9tQ0QrYTFBRUJ2SVlJTENQY01Jamt6TG52TndUNXRBekZmUVdndklaUVJHNlYvak5yOUxhT3pzYWFJMzZOTApQcWJjLzRvbzhSZ3Y4VGdyNVJnejh5alRkOUxqUlo5bEY3azg2ZU1XanhkOVhEY1pYV0hCeTRzK2J2ZnM2YVBHOWVhaDdlN0pSZHZWClRRSEZkc0hSd3M1T0VnaTRCN1M5bllDKzlEd2I1YnorU2s1a1MzWjBPeGJRWjFzbmZrY0hQcmFMQ05yWlNVQWZnRHhKNUF4K0NOODgKY2VOSm5HV2Y5SUxPNnVoeExYVzE0ZEZpV25GTFdsenRjdTkwZHUvNGlXeklSdWtEUXNjL0FFQkI5VENnbjlER2RMZCtRR0hOcVZzYgpjVHNhTVh0cWtpbEdna0JLTXVxei8vSyswckZBc1ZzWjE3NDNOTlZRaXZYc2lrcVZwb0N0SzJNcEN2S0Zoanp3azRDbEpWRTEyS3lDCnJCMVY2WUZONmVBREpadjNuL2diRDBHcXZ4b3ZJZlZodDNZd2RyY25SWGVUUWR1ZGE0SndNeFA0YWp2UkdkVkxpTzdMaldzZ0gvL3IKYTFaazZydnZ2MDVOVGIzTDc3Wjdmbm5mL1hmZmNkZmR0LzNpZ1h2MG9YdnNtVVhJSHUxVXNtWXNYVHU1UnphN1R6bWRwcHRNVWkvcwpWVnJqTlpPcDNsNzVyK2RMSHpRazNyQVFwNXJhcTV4SzFrMW1GRXdtNjJiak5lQ1pxOG5LMlQwS0pMSHdDcmFFdkNIZzdudHVCd3o2CnpXMTNQM3pIdlFhVmF0NHgrNVh0Vzg1d2lYOGRMcWlOdUsyRGdyb25vaGtXMlVLQ05SRWpMSEREWWt3Rk1hcUJ1cW5NdEUxOStQeDcKYlFnaSszNWFtMWphOUd2VzVYV2FOemZJenErWFhONmd1TEJHY2U0cDZlVk55dFByMVgvWUpIdDNrK0RjTThXdi9scjBScmpvOVZmKwpYSTFNNVNPenhQZitMZ29YblhsY2VlRUo5VHNiVkJlZTBaNEQ3bmxLK2ZaVHFvc2JkQmRlVUovY0tTOUpWbUNUWk9udVphOHNlTnN2CjErbDNvQitzRWdQMTR3UVFiZ21BOE9CbHFwS0NBaWpBU0ErcXBJZFUwRUtNK2M2b3JxcHkwVzVneU5rTmkvaVM1VC9LbHpJM3FZcTIKYkVFbWVrUUZkWGNSTVZPSHo5TVFJZmUxdWVCLzluSmxua1NaeTFHUkdWb2lYVTlnR2ZCY0haNnJ3VWxWV0lFYXc5RGxFQXF6VTh1eQo0b3laTVRWdzNUbThEaE5TbTczSGhPT1cwK0FCK0VKMmNTR3pzSkNoTEtMSUNrZ2lBNG12STdrQkpBUUdVako0U2lhOCtLR0M1MTRDCkF3RGlLRGdNU1Q1SG51OEdrRkJGQTNGVkRKYUNqaDRFQXdZQ0FDSUo4L0FDS3A1SFRsU1NvMHBKUVZVUVFNR1Z1S0JLZ25NYTVFMmYKbXdBSW9NZXpMU2FNcTFvcytCOXhRRDBlR01nOUNvSU1jZ0xJYlNBM2d6ejNCaTNkSWVRQ2tKZUVQSmZLVS83VUFBQ0FBRWxFUVZURApsa3JJQmFDZktxRis2dko1KythbWVkUEhDMEEzNklQbVF4KzA2QVBrSFFNa0FLQ29RYml0UjJYSk45ZXhtOHk4aGdaUnMxbmNWU2ZwCnI1V0R1bXZsYlhXeXBucHBBM2hnbExSWGlocXJSUTBtWVVlNXVMTkMxbXhVdEZkS09veFNFQ29oT0N0eUF1aWdHUm9JQmRBaHMvNmcKV2RkVG8yeXRGSnRMMkxRcTBsWkxGbHpoYWttR0x6dXlWZ0hRczkwSkw3UWw3elpUZEEzbGx6dE96d3g4and6YUZ2cVE4U0c3ZGNnTwpsN2NHeG0xRG83TUhyOXFIeHgwRDEyMUhyUE1IWitmN3AyeDlVOGpRTEhKd0hqa3c1eGlZdGcyNkRJVHFCMlFITDNzbnJEMDNBQVJYCnhKWUN5TnJtbWdCNUFzalRRSTY2ZjZCeklLUWFBZ2hrTlgxdU0vN1ZYdjZwbytRVHBPUVRSOFZuU09ISGlQSTlSUG5Xbk9yaXBPcmMKZ3VyQ3ZQQTB3bmtWeGpxSjBGOUY4azRncEJNSTRUaUNQNFpnMnI5aE5CMG9xZUwwRnFZZVVXWWNFV1ljNFNVZTQvak9lRzdxbm1XWAp1cFpNZmR6NkdhYjcwc2U5MTJmWmtZOGJQVjd1OGRJUFFBOGFTZ2YwL2cvb2dmQUl1RXN4R3dWUVRBZThUVG9Ba0lzK0hRVHd3SjBiClE4NXVmSlFsSDlHSE9Ddk5kYnlzNC9LTjgvSDJwVXRkU3lZOVM5MEROeEdqTFVjZnowMC9RQ1NlQUVLM1BNTk5QMDc5UkRSbm9BQ0sKc3FSR05wRjMxT0V6SzlNRXhSU0ZQTGVualRJM29VTm02TmFwZk1lYzV1UkwrWVdhL01JaXFVeWZxeXpPRjJ0emVXb1NTMEdrYXZCWQpBeWErTENPeU5qV3dLVFdtSVR1NEppR3JOYkhwTFFaM21CQnN6Tm5lVGQ3Vm5iMmpLMjk3SnptMkoyOVhMeFU4czZPWGhGNlBZRWM3CktiNkZmdlNyYzFaazd2dC8vblByMWtpL1cvd2V2ditlUng2NjU4NzdiOTM4aTErYzJFbENNb3FuZDh2Z01mWDlTbVNmOW5xeTZzZDAKOVV5U3hyWlhOWjJnR2sxUlgwOVljUUkwSGEvNTcrUkRIelRiZnZWOFBKejNXSk4xZ0dJQVBaUHhTZ0F5SkZaalRTMEV6OXQyeWhCQwpSV1ZFd3RvSDdyLzdybHQvZHV1dHQ5eDlpMGdoUVd6MnYxMzdpdmxTZVZBakhxNVVOaEZCNFkzd0RwMmhaaXdJUEFZQUF0OUtBSWdvClM4MEcvZkFhOXRuZFJhMmxyNXRFM2VaMS9GZWVGSjlibzd1MFR2SEcwK0szMXl2T1A2MzhBQjc3VWx4Y3I3dTBYdmJXcy9JTG16U3YKUHlhOHdHbzZORGt0bTdzcVFiNFYybWZaeXU2WDE2aytYS2U3L0t6eWpRM0tjeHUwbDU1V3ZmTzArdEltN2ZuTjZ1T3h5cUlVUlZhcQpMQU1BQ0hXUDY4cUhpK01mbkFxTFUrRkFlQ1VCQUFnbkp3SUE0U1JFZ2hReXlBa2dXbmdaSThESUFBQUtMa2YxNDI2UlFVYVBhWkNYCmdYd284NS9sN1p1YjVrTWZGNENxYVZ2TGMvY1ZFREVhUEYxRDRHbkpYR2RpRFVXb0puTTBKQ2VBU0V3ZGlha2hnbmdLRWw5TzRzbngKTENXV3BNMU9LYzdZVVprZVdwMGFYcE1UV0pNVmE4S3l5cWtBUU1ZaURnQlFVUkZUWGtRU0Z4QUZlaUlFa0k0aTBGQkY2bnd4U01VUwpxZGdDRlorcjVITVVQSFFUTkY4Rno4TXpuUUFTYXBrQVFFSjFIbmg3QUNDZW1zbFJNcHhEb0h6bkVJZ0dBRVFVVUVsY2NvcUNIRjBDCkFSVGtBU0Q0eDJYem9jOFNBTjF3andrRC9nZ0hRdFU1bTJzZ2d6d05CQm5VVFBJMTBLb015Z1g5ZEFiRmRPZUJWbWVRSjREQTcxN0wKTjdCOFB1NzVEd0VFYjdpOVhGRUg0WFVPd2N1Z0lYemtJQzZubTJJdzU3ZFdNanVydVowMWdyWmFRV3VkcUsxVzBsa3Q2VEZLK2lzawp6U1o1YjdtOHIxemFaaFExbVVUUVBlWFNwa281TUkwVFJyQXU1M0lZdWdvMlpGWURBS0Y3Z0E0M0dPQUZnV3BVd0VsTkpWeW1pUkxUCmxBM29BeS8yMDVhMnVUMXpsU1d3WFkxWVhXZlpPd09YcGdldk8zcHR0dTU1Ujg4WTB2czkwblVWMEdlcWYzejY0TUxza0gxK3dHWS8KWUpzZm5MYjNYd0VlV2hnWm53WC83QXhQemd4T3pnOEE3a3loQUhLdmY5bWNXWHZHQVlBV3VxRit2QUFFejhiREUyRVFRTEJGQU4wNApGUTh5L3hPcGh3RURJVldmSTZiUEhhYlBBWUNzbFo4NUFRVG84eW1pL1FnQXlGNzRaOFR3dmwxK0NSRytnVWplUkhqbkhmeHo4NEt6Ck00TFhyWnhUQ1Awa1FqMW1weDJkeVQreVFEbUc0SWFSbkk0cmxKcVRxa0psc3lMdHNHRG5TYjRYZEpadFdmb3NzOXJscTUrRCtjdnIKWnhGQVh2cUJlVXhmUE5IanpqMzc4ZFRQMW1aTVZGTU9vQThvdkNrN3pBSUVrTFcxRFlNQ0NBUzVBL1RURHFkQnFJZDhXdkpSYm55NApGZERqT2RIeEZjK1NHWS96R2Q5RkxuUmt0YngrRmdIa3BSOTA4UXQxanpzWGdNd3B3WTFwb1UwWjRTMnUyUTh3RUNqYWtoYldTTjVXCmd5ZVZaWXBWT0lPT2Z1cUV3RDR2UXE3STdLTWlaRUgyeFNkS1l5blRVQ0RVbHNIOUNwSUNHdmdCQVA2NUJ3REtMTWJHVm1WR21OTkQKV2xLakxWbit6WmlJV2x4RTZmYVFCbnhZTTN0blozcDBWKzZ1THVxT2RrcHNKMlZuZHk3OHNuUVR0dmNRdDNaZ1k5dHpSLzUyWWg2WgorZGUzM3dTRmhmdjUrZjNxRi9jOStPQ3RmbmY1eFQzNitEdXBYR3RPd1VTOGRDWlRCd0EwbjZqN0xnUFNCOW1ybnR1ckhFOVNUU1NyClorTlZDM3VWM2w3NWJ6ZVZzSHlqKytYZ0x6YVpvaGxOVUZ5UGwwOGtxaWFUMU9NSnltc3BtbXRKNmg4U1pEUHBXbVMzSEVrclBMWS8KYitNalAvZjdtZDlEOTkxOXQ5OHRaZVZWODRqOVg3UC9ZZzJwbjJ4S2kyekVSMWtJVzV1SUlQREFlVThHV0dnZExiQTUvNm1TcGsySwprNytUdlhhLzRQUXZCYTg4Umo3L0c5RW5BWXBUdjFhY1dhdTV1Rm55L2diWm1SZmxuMjVTbkhwYStzNGE5YW4xaWpmOTlSY2ZGNTdaCkpIdW44VXdQTWsyNE9xbWZ2OEpEcGtrakh4cCt5M2w3cmU1VWtQclNSdVg3QUVEUEtGMEEycUo1YVpleUFBQW9UWnJoWHZaeVhmbHcKWlFEaFZ3UVFBd0FvR0RDb2t1WlJIbHFRa2VKcklNZ2dIOHI4aHkyT21uNXFIamp6TEtnNmIyczVKY0dBeDZ0eEREVUFFSkduSjNGMQpSRm9SaVY0QTZRTU14RlZUZUdvS1gwbmhLY2g1eWx5R25NeVhFUGxpTEYyUms2bEwyMW1XRWx5VkRBQVVVSjI1M1lSaGxPZWhBQ29wClloVVUzd0NRUUU4VzZITkZ1bnlKbGlIVk1tUXF0a1RGRVMvZUF4VTlCaTlVd250aUFBQ3haVFFBSUxIR0JTQVFYOFBpcXBnb2dKeFgKQTZJNWgwQTBNZ2NDS0thWUZHeThBYUROMVQ3dXVTbUF0aGl4eS9aaU5jN2Q1aHI4bGxxQ2Z4MHhvSjdrT1JCeWJ3d0NqME9hU2FBdwpnS0cyWE05VzJoenRpNkdsSlBJd1VHOHVLS2FYNm01Ykg4MmpQSysyOTFPWGJjY0FEZVJMb3RWaGRHUGtzN1J0L2VTVjJqcEFEajlBCkRoc2lSZmVUOW5XUnM5dnp5RzIweGtwV1N4V25yWXJiYnVTM0dZWE5KcUdsUm15cGsvUWI1ZDFHV1l0SjJsZ3RhVENKTFpXaXRsSmgKWjRtd3lTaHVCUUNxa25hWVpOMVZrdDVxMlVDTjRtQ3RDajBDQmlkQUZ2MGhTd0hjQmxTajZxbVNXOG9wU21OZVloM1p2eFgvWEdmNgpscGFrRUV0cVdDdDJTMnRHY0V0bVdGdG1XSHZPbHRhc0Z4dXhxWTJjNHZiUzhlWWZwanF2ei9mQm5UMEwvVk56ZlpNTEE5UFd3Wm01CkF6QTQ3RGs0YXowQXN4MmNBeTBNejdtZldSaWFBVzhKVjhFR25QcHhCb2RBL2VQV3ZqRTBkRGUwZXdqa29aOGZsdXBuOFlKQWxuL0IKR3I5MlRvRGdQbWg0SHQ1MUpQNExoK2tMZXhXNkZSb2F5RmIyaWIza1kxdnhoL2FDUDlwMTc5cFVid01EMlNVWGJPTHppT0NjZzMvVwp6bjNOem5yVndUcGhweDhIQUxKUmp5Q2tnM2JLUVN0eEdNazZpS1QyVHVGYlRzdHFqRlZsMjA2eGs0NHlVby9ROXg2anh4OWpKaC9oCjdEL0MyL0VTYi9mTCtmdU81cWNleWs4ZnBpVU4wL2NjNXV3OUpFZ2NFcS9rSHQrTlBxaDRWdG5yQTdpRHJuUEIrVXFQOHo2Z2ZaU2QKUFhCQktxNlRzcWVEdkx1RHZLdVRzcU9Mc3IyYmd0Sm5aenRwUnh0eFJ3dGhld3RwV3pNeDJ1TGFLSVB1ai9FRUVNb0lGQmJBU2U2SgpFZW9ucjFaNi9xYTUzKzJOMm9nZzl4a3VyenkzTmkrN3g5bGRkQ01HemIzc0ZRYmNVNThaV2UvYytHek9BQVdaMDBHQmpXa0JsclRRCnVxeWdwdXlnaHNTZEhVbmh6VHVDTy9hRnQyZnRhQ0ErMzVPOW93bWJVMEFTYWlRcXRheW9pUERsWDFYSUROTXhLck9OODIxVDBzbnIKcFIwdFdJVVNxelR3eERvdVM1RWgwM1BZZkFwTFMwZ3hwdnZYSlBvM0pPMXNTSWkwWklPQU1vRTEwUzhzdW5JSHJCUFhSWXRyeUFYaQpDZXpOaWgwaTdtckZoWFdSVDc5M3dZcFlQL251YjRFQkw5N2w1L2ViWC8zc1ozZmZjY2VkZnZwZnZmaDV1bXcrcTNBK1hqMmJyQjFOClZNNmw2R2IzS1dlVE5PN2NGeTBFVFNmQWFkRC9mTDR6cDlXWHpDSWVlZnpSVzI2LzViNWIvUjY0cGM1Y2pWaXQzMTMvanRCVytIeGoKWm1nakxxbzVMNmd4TjZLUkd0ZVlIMW1IMzl5Y3M2VzI1Tm1TMWsycTQrc2xiMnlRbmQ4Z1A3MWUrdm9Ud3JPYnhCZWYwcnk1Vm4zbQphY1BGOWRLWG41YS84clRxM0ZPNmMrdFY1OWJwUjU1U25YcXE1T3d2Sk8vRzY0Ny83ZXNDNnpScGRKemgrRjZPak9LL3ZLWkpMaDM0CmpmakROYVh2ckZXLzg0eit4S1BhNDA4YnpnUXBMMFJvQnVPVW9uUXhMbE9kbFNuUHlGSmtZaFE1empVdkRGNkp4U3NCZW5BRUZRZ1AKQWdDQ0JuSk9nQUI5Y0tKY25KaVFJcWRHRk1nMmwrdUNLNFhoNVpTd2NrSm9KVE9rZ2g1VWtSdFVTWGFpaHhwWXhRaW9aQVhEWGRKbwp5MjBTOHNsMzE4N3FlM2Q4WnptdWZOL1NHZHpzYktLSFZya0tNN3FLTU5KaWk4aVpHZ0pWVFlUbnYzUmtFRTlINFd2SUlKNFd4bmZ1CkIrSm9LQ3dWS1Y5RkFRQmlTd2xNTVk0TXZpQnFVa3h4Ym1BbGRYTUZNYnljRmxHY2h5bGpWUlJ4elhxNnNZUmRXc3d0THFJVkZlWVgKRk5DMEJwcGFUMVhxYVhJOUhhVFJjbFVhbmtMREJRd0M3b0ZuNEJWOG5zcnBJUm1icTJBSU5XeXhuaTNRNVBQVmNEOFFUOGxBdHczZApHQUlKNFNvWWtjZkxFakoyYTNQaExjQ3FpUkZHUWxnbCtjVnFDdEJZUUhVMnlOK1U0MStGOGEvQytWY1JZRWJTamRCbm5LMElvQmRNCk4wSU5oRElvb0I1dUQvSmFGME1CRk5wQ0JnRHlNdEN5RzROOGw4YThkZ2lCWDYzUVVSQ3Nod0x6QUpDbmdXS2dqV0MrRWxyZVF6NzAKdVZuZTlGa2RRRHY3WEFhS0hDQnQ3WU83QWZaM2t0TTZjZ1gxWkZWZFhtVXRxNm1hMjI0U2dJQ0JHcXVGelZVaVM1WFFYQzJzcnhiVwptUVQxUm41VEJiKzVsT2NCSU1rcUFCcHUwQS9XcW50TmlxWUtYVzJSZ0ZXU0UyN1ovMHh2Y25CblJtQno5cnIyck1CR2ZFQjcxalB0Cis5WjA3Z3JwSmVvN3EvL1lkbmw2OERyUXoyelB1Qld1WVVISHpQZFBBZERZaHFCNzNMbjFBM0xyWjFrQXVaYkFGZ0hrMXM5L0JpQ2IKOHlROENpQWIzQUFFOVdNei90WG0xSThiUUk0aWJ3RFpQUURrWUo4Q0FISXdYbkhrdndRTWhGQ0diZFNSU2RxaGFjcXdBenVBWURwbgpjQTAvRW12ZUVKZXBMUHFVRVVIbWNIN2FvZHc5eCtuN2puSlREd2h6RHJEM0gyRnNQODdZK1JJOTduRCtua09NK0JGMnlnRzJyMzUrCnlsNGYzKzArc1lzTFhuSGR1YnU3S083Z21hd2VNdHlVMDBuZTFVNEN4YmJCb3J2Sk1aMms2QTU0ZFJ5bkpJZ3hUWVN0alM0MFJGbmcKUFE2QmU5eTVSeWx1QTNreXlMTlZYclY5WlJndCswNWdQMEU4bnVqeDFRKzhZSS9GcFIrVVBuRFRqemtMelhYeXk1d0JEN3FER2pJQQpnSUlzNlVITkdlRmQyTERtOURCVEVuaHZrZjM1ejhPM3gwWlZwaWVYWkRBMDJYSUZ4cURKNm1yUG5oMDFJTk1zWkZKb0hXZGFKN2pXCnFmSlRMN09MOUJpeGxDQ1FFdmt5UHB0THh2R3dzUVpTUUEwTy91WmdUdG5hUUZrSlFEdUdhSkhWNlltOXpJZ1dURXhYVGtRZjNQeGIKOExvWlFheWZqWDRkRlJsNnQ1L2ZvNzk0NkphNy9XNjcreGJHV3Y4dnMxVXorSktadllxRnZjcUZWUDFvZ2dLdWVTVm8vN2NCeUhkVwp0UHJFNk84WnFsMVBQdWQzbDkrOUQ5ME53TmZWMW53VldmajgreStUMnhtaE5Sai9oaHg0TGNvR2ZGZ05QdHpNQ0xVSWdINmUwbzlzCmtKMWJMMzV6byt6aUpzVTVFSkRRMCtyTGE4WHZyWk5mWGlPL3RFYjc2bE9GZjFvaitQNEorZXUvRTM3eXFQaVBqd3ZlL1RYdm5VZFkKSC9EYXVpZW1CZmJyOHRrSmdlMWJxZU1xK2Rwc3NXSnc4RG5wYTArSVRqMGplZi9YNGs4MnE5NTZYUHpCdzdxL1BxczRHeWRUWkJicwozTS9PQXZySmtmOVVBR0ZsSkp5RWlCVVRFeVhDVUZYTnN3VXRXNHJMUWtyRkllV3M0SElxbkFPVjA0UEs2Y0VWY0N6a2pCNWtwSG1VCjUyNnBoMjV1SSs5QnpzMG1PaXNGS09hNVdoZGE2U3FxSW5kM0lUbEhTNlNyU2VqaUZ3QVFlSGtEUUJxNGVSbThaS3ZKTEJVWkJSQkwKZ21lS0NBUXBJVWxEamk2bUJsYmtCMVNRQUlEQ1MyaVpwY3pTQWpZQVVGVXBwN3lVWDFuS3JpaGhsWll3aTR0WkJVVnNmUkZMWDhUUgpGckoxZXI1V0wxUnIrWEkxVjZ6a0NwVThRQitCU3VnSklPQWVGRUJDTGRNTklKWUhnTWdDdUFxV0pTYkY2VEJoUnJnSkthSXFKOHlJCmZiR0dHRkJGRHFpaUxKWUhNOUpBUVZYNFpWc1JRSnVyWUM4YU1TRDA4UllURG9TdWkzbHREMEtYeHREVk1jOTFzWlUyU3J1WHhwWmQKSFhOR0FRRUd3WnpiREtONzh0eDVTaWdhMnNobElLOThNUVRyei8yMzhxWFA2Z0JDNzB1QTNwUTdxcGV3dFFmZWwyQjdEM0YzZTA1RwpLNTVueVMycHA5ZFhzMXVxT0JZajIyeGkxOVJ3YTAwY1VFMFZ1OWJJcmpPeTY2czREVWFPcFZMUVloUzJWNGtCZ0hwTVVsOEFIV2wwCkFXaW9Uak5Rb3hvb3JTb3JGUklyVW5lWTl3UjBwRDdYbWUzZmxyMnRMZWVaM3NUbldsT0Ntb21zMXVJM08wN045UDdMM2orTGRDRUwKUUR6T2tRL3FHR2dhSjNmYytsa1lkdEVIYlZuOW9BQzZzZjE1VVQrZzVmWGpCSkQ3Q0pqN2V0RHdjb2hPL2JpdkNvM3F4MUVMQWVRZQovNkFBZ3ZvcHZRRWdoL1pkdS9vZGgrS3lRM3JSSVhrREVaNzNBaEJDZnhrQ2lEYUM1QjFDeUlkdHBCRWJZUmpCRGlJWm5VaEtxeTJqCmZTckxmRWhSbk5PbjJIMlVtem5NVEJ1aHh4Mmo3M21KblRyTVNoK0MxKzhCdmtrZHlrODRSSXM1VGwxbW16UGFBUWJhWHVmVVo5bkIKaitlQ0YzcUFQTFlYN3ZXSjY2VHM3YVRzNjZEc2JTZnY3U1R0N2lUdTZvUWJsbEZxN0d5SG9WY0ZqR3JET3lOR056djE0N3dlSzZxZgppSWJza0lZTVVHZ2pQS29LZms2amVSbkljOG5Kc3h1Q1dab3ZpWlozejFJQStZcG5KZmY0MGdmOWROeURIOGdkNSt6SERTQjQ4cXZlCnFSOG5nSUIrZ3BzeWdocVNYekR2QncrMnQxQzJOZEVEVFdtSkxVbmE0N2lPTjNJUHZFNjVlSkh6cDNkNEgvK0o4K1huYkdSZTcvaUIKNFhBQ2FHR0Nqc3hxdnZsQy9mb0o5cEhEckpkZVpnK05DSVpHS09aaGJHNWZlb2g1VDJoemNtaERUbkFkMVF0QWJnT0Z0bUgyOWxLZApJc1RFZHVGRDIzRzRRZlZWMitqbzlSOFRjMUw4YnZGNzdPNTc3cnYvVHI5Ny9CSi92ZTZMTFBWY1pvRTFVV3ZmcmJEdmd6dHNKbE0wCmN5bTZ1YjAzSmtDZSt2ay9CS0M1SlAxWDZhcUVwemZmY2J2ZlEvZmZkZGZEOTc1NjZqamlzSjcrOHZ4K2MvNldocHl0N2ZnZ1UzSlkKRXpPMG9YQnpVZVVtMVhGNFZrdjhodzNpOXpmS0xqK3BPdnVrOHZ5VHlvdVBhVWFlMGw1K1FmL2VCdFhGTldwNFI0dXRta3NZVXgrLwpyVjNXYzZEc1dGZkpDVlBGaWJvTEgycnRNNExKSDBxbVJ1VUxQeXF0UDFKdDg1eFAvbGw0OUhKRi85blNBK2RxaktmNkdrZTZWSU9OCmUydEdRcVhOS1ZybVBsRUtScDhEOU9NR2tGTS9MZ0NSVkRpU0V1K01TRlFRQ000bE1MeVVoSlZqTUpLOGVGRlJnT1RBUnNXcHB6VUQKV3dwTWdXV0ZRV1Uwb0ovZ01tWndHVGNJVk02RUVvTHJZdTZXckk3NTB1Ui9xbVgwQTlwV2xydS9nSUxUa0pnYU9QZ0JPUm1VSzlCUwpRTUE5YUZ3MWhhMm1NSlVrcXRvSklER1JKb1k3eE9HTlFVcW80Rk1PcUtDRWxlYUhGTlBTaXVrRkJuYTlnUVVBVkZVbXJDN25nVXhsCi9LcHlma1daQUpDb3RFUlFVc3d2TGhRWEZJcjBCcEZLdzVjcGVXSWxYNndTQ2RVaW9VTEFrN0Y1TXJwSXpSSnJtTTROUUhUd2dBYzMKVFRNNFNnWUtJSnFZbWl1aUFRTVJCYm5aSXRJK0RTNjhFaE5ZZ3dVTUNxN0VPWmZBeUlzdFhRSXp3ald5cGEyNkJJYWl4N2NYVERlMgpCNkVNUXMrTEJWc0lJVTFFa0Z0Q3kyNFM4bUFRQmY1T3NNZ2dIdzlCQUxucWdyLytidTNPZGVlSklRQWczM3d4NUNaUlRCOWNhUEROCmx6NkxlUk5uOVlCN3Rqc0J0SzJYQlBRVDJZT1A2Q1dFOXhFQ0I3S2plM0pTMm5IVVJxS3NsbEpVVFRXYThtdE05Rm9UcTdhS1dWL0IKcUMram04c1o1a3BtZlJVTENLbXhrdGRpRkxSWGlUcXJvWDc2YXVTRHRVb0FvTVAxV3BnVFFFY3RoU09OaG9ObTNXQ3R1cmxjVVY4bAo0bGFUb2hyU25tdlBDdTNJQ1c5TjNkSWM5M3hUZkdhMzlPVzJsNURHSDVCT0JPbEc1cnVteHcrTTJZWm1RU2hsM0V0ZEFEMmVMUXNnCjEzOENndnFaOWp6ODVaNzllSTUvMENOZzdrdENvL3J4SFA4QS9iaXZCKzNhQWIxNFBXaVFTejhlNjE5UVAwc0JoS2k4QWVUZ25VWTQKcnlIc2t3anpCQUNRSS84bEsrc1FRajJFRUE4aitDTjI0dUU1OHZBQ2NkQ082ME15MjZleTI1Q2tscXRaRFMzNjh0UWh4ZmJqakYzSAo4TmtINmNrampMaERyTGhoVnVJUUszV0lFVDlDalR1U3Q4d3VIN1JGOS9qU3gzZWpqL3ZvT0x4d2p2TXgzUFRUQ2RlODlyY1M5clFSCll0dWhQS0xiblFScHhlOW9JU1RVRXVKcWNUdnFzYzZwRHo3S2dvdDBYcUlldU1kMXN4NXpGZ0JCVUgwYU1GQjRFL3hSamVabUVQb3oKMjJzeWROTzhmYk5jUy82VG0zSEhVenkrN2tHRG54UzYyWGxSUHlGbVYrQnhhRjBHQUpEenpCY0VVSWdsUGJRcFkwY2pKclFKWHZvOAp0QlVMM2dEWG4vbmVqNnI1VWZxOFZXU2RrU0RUQ21SR2h0aWtNNU1jKzVRWXVTNnpqc3VzRTN6YkpNTSt5VWJtNUROakV2dThhc0VxCnQ4OXJySE5TNnl6LzYyczgxYUhFRUZOS1dHdGVXRzBTQ2lDdklSQm9WenNwcEJzZjBaRWQyNDRGUCtQVE92bGZ6SDgzT2o2V25wRU0KOUhQdmZYYzgrdEFEOTk1emU5TGFwNy9QTVl5bTZhYmlaTGI5YWlTbGNDRkJjMzJmREFCb0lWVVBubGxXUC8rSEFEU1Jva1AyNnErbgphdmV1ZmRydlo3ZUJ6LzJKUng1KzZkQkJLMko5NmF2TE1mV1VGMnZTb2p1WkwxU0t0cFMzUHFzNnVrNEdiOWkrWHZvQklNNEd4WVVOCnlqTWJWZWMzS2k4L3BycThTWFhwS2ZGN201U25uMVora0dFK2MvbUhvb2tya21tcmVIcGE2SmdWems0eWJaUDV5S2pROFlOa2JJd3gKTThxMGpTdW52eGZQZms5REpsakloQmlaa2pyR09jZ3NaMjVDQXI3RlA0N3JEZjJHUkxrMFJaU2FyY3h5NmljTDZBZW5jQUdJcU1DQgpWZ0lRUm9ISmtkRDJDc3RlRkwrOFJuSjVnL3pVczVyQjV3czdBMHVFUVdYODRBcE9jSVZ6UzFCNWZtZ1pQYXljQWYrNGpJSGNwOFo4Cjh5WExmNWJ2ZTE2U216N2h6bUtMeUtrR01sbEw0V2dvZkJlQW9IaUVPbUNnUEhodXl6bis0YXB6V1NveVEwSE1VNUhwTWhKRFFzeVYKRURPVnBOMkczTWdTNkwvQWNscG9TWDV3Q1MyaG1LNHRZTlVXUUFCVmw0dHF5bm0xRmZ6YWNpRUkvTkZVS3E0c0VWYVdpTXBMWkNWRgprb0pDaVVZblZLZ0ZFcFV6dFZpa0ZQTGxIQUFnb1lycEJwQkl6WENlR21Od0ZRdzJQQXRHejVmUVVBQVJCQnlNZ0JHdnlJc29Jd2RXCmswS014R0RuSHFDQVNpeGFvQkVYV0lWeDV3WlFZQVV4c0lJRUs2ZUFWZ09RYStUamJhQWJPNmI5cTdIb3NYbllvb1M4TndrdDNUSHQKd1NBSUlNK1dHbWdKZ0VCUlhSUjNuaGlLQXErRlBGb21YeGhCRy9uUVovVjhpZU9HenJLRkRSQWpCK0R1SC9TKzNNQkFVVTRBaFE1aQp3L3N4Vzd0ejR0cHlNcHV3K1dhOHBKYWtxYUZVVk9RWksvS3F5Nm4xNVRSelJUN01TSzh6MGhzck9TMUdYb2RKM0ZVajdhK0ZoK2VICjZsVERkVkEvUjh3Nm1CTkFSeHJoRU9oQXZiYXpUdGhheXRXVlVGTXRwQzI5bWMrMEpRVllNcUxicWZYTkIvN1c5Z0hTZDlVMk1MZlEKUFQvVk56YzVOSVgwVDhJUnpoQU1EbldXdW1jMUFDM1ZEMXhCVzlTUGMvdnpEZjE0SG9EM3ZDTVlxaC8zbGFCZCt2RzRDQkE4QTc5NApFU0RZb241YzYxOU8vZGhLL3VJbytnZ3AraEF4dUFDRXlDOGprb3VJZURrQU1ZNEJBTm5vaDYzNWgrZW9oMmZ6RHMyVER3TUR3VDNSCjJJTklUanVTMXJHUTNtMU43VUlTTEgrbWxlbHJwQWxEck9qak5ManlOVXpmZVlnVmU1aTlmNWlkTk1oTUdHVHNQMGhIMjNjZ0gyM3YKRU0yWnQzdlFWanpXM3VtOFhON2kxcCtZSHVjTlFidmd2dVBZRGxKc0czRjNDM0ZQQXo2aERwZHN3cVpWNFVrRitNeEN6UDZTN0IzVgpPVnNic0JHTGx3RkVBUVF2VkYrZmlSNEZEMjNNQkFDS2FNeHkvOEIyTThndG9YL0xRRGZOODMydUFoMWY4Zmk2QncyNng3bkxCNFNPCnRhRHR6T21CNExPcnl3aXFnL3BCYzA2OElJQ2k2N0xDbXRNRFcxSUNtektEYWhKSUI1SS9tNVFoOHpUN2RUNHlKa1BHMVBQWHhIT1QKNHFseDNzeTRFSmxXV2NkVUMyTml4eFIvN2lyVlBzWUdWRUxtbVRQamhQbFJDWEtOalV5eGtGbGR3MG53NzN2MlpqTnVSK3QrejYrbgo1MWR5dXdVVDBZbU43TUdDdjBOY1ErN2IzLzdSUGo5bmJtNjczYy92cnZ2ditOWFA3dmU3elM5NXpWTlhNWVh6aVhEU001ZWlBNnlaClQ0Rm4zY2VUMVFCQWsvc1Y5dmovVGZSWnRhbVZpbGRlMjZkQTloZDluYTZPL1AwVGZ2ZmVjb3VmMzdvMWozNzY4VmRYRnFZckwvVDYKbHhNMzEwbURLNXVlVmIyOFR2NzJPdG41OWZLTEd4UnZvdnB4OXNaRzVWdFBGbHplcER6Mm5Pcjhwb0xUand2ZXpUQ2Qrc2VrR3BuSgpHQnZselY2aE9NYUU4Nk1xeHpVNmNwVmorNWRzYnB5N2NJMEV2bzlUMXd5VFA0cm5ScWt6UDlDbXJvdkdKbm5nMnozNXJSQlp5QmxkCjRMRWJ5NklGRXF4bUgxV2FDL1FEUXZWRFVIbTR4d2RBMEVCU1VvNE1ueTJtN2hFVlBpOFplVXgyNlhIWjJVMktrMDlwai9zWEdRTksKaTRJclpNRkdackNSRWx5UkN3QVVXc3FGQUhLM25JUzg4cFhLWXI3RVdRMDZudE1kejBLTURGQm9wYXZ3Q2xmN0RlUXNQU1hmT2V3Ugo2SFA1ZWlwUEI4U1RKOVJSRndGRUJYOTBBVWhPQmdCaXlFaDBNWUVvSXlhcnlkdUxxR0dsek5CU05xQlBTQkV6cUpTMXQ1aWhLR1RWCkZMRWhnRXFGOWVWOGM3a0lWRjhwcmF1UTFaWkxxMHNrSUdPSkZCcW9VR3pRQ2RWcXZsekpreWtGVXJWUXJCSUpGRndBSUNBZTRCN24KRG1qNEFIZ0lQVG5Qa2RPWlVnZ2dtamdmR0FnQUNNZGpKTXJ6SWt0ejRlbDNTSndjLzJxTTd3RjQxekY0RXliSTVGUVIvQ01wc0pJYwpXSmtiVUpHM0lvQkF6ZzFFTjNJOTczRmV6TE9BR2lBaGJHQXRMcWdPSDF4UENERVRReHRJWVkza2xXWkNFVzFrejN3WVJBWjVBaWl5Cmsrek9FME5SMEViZStXTG9Cb2w2eWN2bVM1L0Z2SW1ERnQxTFhMYVFBVUpFUHpHeXovbEg5TDdjUFFUbnEvRHdYOGtlVEZnUFpsdFgKenY0MlRKWUZTNnJIOG8wNGlaR2dyQ0laVExtbEptcGxKUlZncUxhY2FqR3lXMDNjemhwUlQ1MThzRjQ1WkZZZk5Pc09tZlZIRy9SQQpQK0FsekFrZzhPUkl2VzZvUnQ1YXl0TVY1V1hVWkc1dWlkL1NuQ1ZzclR3N2VCRnB0eUVEOXZuZTJjbnUwYXNqay9QRFUwamYrUHpBCjZQemdOQWdBQ0YzdGdudWNSK2JtaHBkZ3lIUHc0emt4c25rQWFPbmhyeHY2OGIwVmhodEE5c1ZMSUxvV3Z4cStjU3llZm5kZkJkRnoKL0xONEpXZ1hnSUIrN01VUVFJN0NQem4wSHpnMGYzQW8zMFprbDF3QWN1NEI4Z0lRUW44WnlUMkM1QjJhbzQ0czVCNUNDQ01JZGdUQgpEQ09ZQTBobVA1TGRnMlMwSWVsTmpveDZKS1htU2xibEdXWVpwazhRZjVBYmU0aTFaNWdaUDh6YU84S09POERlUDhCeXU4ZE5uejJEClZOQytnWHpRM240YUduQVBtcmQ3Rm85M09UYzR3ME5WZ0Q0ZzhBQzRKNjZkRk5OTzN0bEtUclJRc3Vzb0ZHTWVzeXlQVjVRckxNd1YKS0lrVUpTWkZsNzI3QXIzK0dCeU5vQUJDeFFCbHNHaUNNRXRXZUVNbUNON0V4L21UMjJzZzVDdWhKWWo1ajNLOTU1dHhaM1gzb0lGUApEVjNoUXZXRDBpZWdMdFcvTmlXd05nMVdsN3A0NFo5MDlNcUhJWmIwTGVaRWdMK3RqWVNReHB5Z21wM2ExekJmejFjaU16TDdoTUF4CktiUlBpUjB6Y3V1MGNuWmNPajBxdG83TFpxL3drUWtaTWk1REpsVDI2M0prV20wYmt5M01LSkZyVkdTU2QrSmo0ZDc2eklBYVFuUnIKWG5CdHN0ZFgwdjAxQkUvdWFzWkdkdUVDR2pHdGJ4NUVITlpQL3Z6Um83OWZjKzg5dC8vMm9RZnV2TXN2OHJlUC96MVZnY1FiZ0JLUQp2UkE5WTRuSzBRUUZlRG1UcnA5TzBVN3NrOC9ILzkvUXo3U3ZleGFiU0lTdkhVM1JJdnYwbit3VGJQbnRiMjk3NFBiYi9QeGlkeVROCno4NTlNdnBsYWtQUkM2VTF6NmdQYjVKZGZGejYzbHJaYSt2a1o5WXJYbmZPZnM2Q05xa3ZibEs5K2FUc3owK0szbjlHZGVuMytrc1AKSzg4OUxUOVVmTEQ1eXBRZVVCWDVqck53dFdCaVFUYzJ3WmkrS3B5K0tsMjRJcHY3a1QxelRUWXpwZ0VZc282UnJUL216MTJWVEY0VAp6MTZYSXBPY2I2NndGWWU2UWtYOWUzV0NaTmtlb2pnQkMvU2p6RVlCQk5HejZCNnlFa2VHTC9Ga0JaRWtKNURrSlBDVG5pQWxZYVRFCkhISHVIckhtQmRuQVkvS3pvTFd5MTljcXpqeXZPL0JDWWNmbWtxcUFja1ZRQlMrNEhPZ0hnSUFiVXM2Q1ZUQVdvNitlTDFrVzRmTHYKNVNiT0tybjFBMHJWa2ZCYU1rc0Q1ejFRUEhvcUVBOWZUVnNFRVB5akMwRE84MSs1U2hKZFNnUUF3c25KKzNTNVVjWDVRRCtoSmZ5UQpZbnBJRVR1Z2pMT3JtQ2t1WUZRWHM0MGw3THBTNEI2eDJTZ3hHMlVOVmZMR1NrVkRoZHhjQmpPVnlvQ0J5b3FsaFFheFJpTlFxUGdLCnBWQ3VFa3BWWXBHQ0o1QXhCSEs2V01XUWFPZ1NOUk04QUFBQ3dVc0hLUmdzR1lNaHlRY0FvZ0lBaWZJSWZGS0tqQkJaUWdRQThrY0IKWk1vSkJBaXB4Z1dZc0FFbXZETWl5TjlJV3R3UFJBOHdNdndyMlA3bGZQOXlnWCs1YURVQWVSbkk5VXoxRFFPNXAwSE9VUkRHblZ0QwpzRWFZMXdJWktMelYxUW9TSXFGQkNYVVNRUkVkSkRSUENUa2pldWFMSVc4UzlaQ1d6WmRFaTNrVEJ3MndacVdpZWwxRjl1REJ2NHhSCjNmaXRYZmdZOE5mcklvUjE0MEo3Y01CQWtWMlliZTFaMjFzeTl6Um14emZtcERSZ2NQVTRaZzFSVlpWYlhrbXJxYUJicXBodDFienUKT2xGZmcveEFnL3BnbzNhazBYQzR3ZkJ5bzhHbG53YjlTNDBRUU9CSkFLQ1djdG5CS2xXVmtaTlJpY21vWjdlMTkzemY4MWVrYjM2eQpjOHphUFlYMHp5RURWbVJnOXNyUTJKV1JNV1RFNmo3dGhkTEhuVnMvbnJ1ZVVRRDU2c2ZlRHdIa2VmUjltWXNmTHIwWktxb2Z6L0dQCnd3a2dWRCsyZW5qNUgzVDhBL1FEYytvSEJaQ2p6SFVWUkZqaG4rSDZseE5BaU1JYlFPZ2VvS1VBT29ia0hrWElJd2h4Qk1FZFJIQUgKN0lTaEtkS0FIZE0vaCt1YXcwSUFJWWtOU0ZyRFhHb2pFdGYwRDF4UlJZbHE3NkJ3N3dGRytnQnQ5eUhhamtPTTVEN0cwcW1QU3orZwpaZW5qMW8vWHlYWVFzQTRRRHpydmlZUFhqQ0dsV2toWmplU2Myanh5TloxalpDcktXUG9pVm1FQlIyZGdhZlZNcVRLWHFzQW5hN05pCks3SWo2M1BReGFCSTUvSVF1aW9VVXB1T3NnQjFRNWc1dzh0QW5xMkNvZVZaNDlPS2IvQ1QzZU9wSDAvNm9MbTIrRGpwZytwbmMxMEsKeUw4MjFSTkF6bEpDNmxLMjFDZUhOV1Z2YmNpSk1lTkRtd25QMTZWRWwrMHRQTUMvZGtVeE95T2RuNkhOVDFDczE1bTI2NktGTWVuQwpoTmcreFY4WTVUckd4TWlvQkxrdW0vdEJOSGRGdGpDcUhKdk1uM1NvZXQ0aGJxdU5mUjU4RGR2QnY2RkpPOXJ6UEwrTW5sKzltQTdjCnRzYXM2Q1lzNVlEdXU3bnJ5THc5TmpiMkZqKy9CMzUyenk5dTgxdDM3NzBYazNuSURxVTlvM0EyV1R1elh3bGV6cWZxWjVMZzRBY0UKMERDZm9vT3YrcitnbjJrZjk3Z2JUMUJPeFN2aFo1UmU0Tml2TzcwajkxZjMzL1h6QisveDg3dkRvSlhaa0puaER6NStRZHoxcU9Ucwo0NHEzMWlzdnJGT2VCYTFYbmR1Z1ByOVJmZEhkT3ZXRlo1VHZiSksvdGxIMzl2cXl0eDhSbmQ2VWY0WXo4TklQazNKa0x0LzJuV2gwCmpEY3huamMxcXBpYTRjOVBVT2RHZVhQWGxkTlh4VE5YNmRidmVjZ1BCdVFidmVNZnlya3grdWdvWFQvUStvejByTCs0TTBYQnhldmkKczJTcEtJQnU2TWNKSU9BZWlncEVBQUVBT1Eza0FoQmVSb0FBRXFtZmx3NytUbjcrTWRtRk5iTFR2MWU4dmtseDdrbmxxODlxUjE0dwp0QVlVVndhWHFrTEtCTUJBTGdCNU0yaEZDZmt5QmMyWE9Ldm4reDY4OHRSUFJEa2pVMFBLMVZBQWNVUWFGNEFFT25qRENnZ2dqUk5ECkxnQlJBWUNZQ2dvS29Id3hDU09INjE5aHBmVGdNbTVZc1NDc2hCMVN4TjFTem9rcHl1Y1pHRlhGWEFDZytoS1JVejhTb0I5blNuT2wKc3FGY0FhcDJHcWl5V0ZaU0lEWG9SR3ExVUttRUJwS3BKV0lsM3cwZ3FaWWgxYkRBQTVHYUJZZEFDbThBRWNWa0FLQTBTZDdXUXNhTApsZHd0RmZ5QVVxZHBqQnhZSlc5TGhXQkx1V1J6bVhSenFlekZFdmtMeGFVdkZKYy9YMmg4dnFENk9VUGRjL3FHNTNTVzUzVE5Ld0pvCmN5VUc1R2JRRFJKNUFNaERQeTRBYlRIbG9OMlFVQU1PRFdXUVcwSnVBUGtheUJrUkRUS29nd0J5QThqTFFCSHdWUVF2QnEzaUlWLzYKM0N4djM2emV6azdDOWk3NElMd0hIOXFGQllWM3dWOFFJNkhoQ0JHZCtQQk92Sk5CbUlDZTdNMDlXYy8zWkQvWG1ibWxPVDNTbko1UwprOE0wa1FxcjZIVlZuQ1lUcTcyRzIxTXY3bTlVSEd6VURGdDBoeXdGZ0R2SExBV29nVjVxTkhnQzZIQ3RvYzBvS2k5ak4xV1h2ZHQ1CmZuN3dHdEkxWjIyWm1oc2N0UTJOemczOE9IYmdoNG5ERTQ0Ukc5S1B6UFFoWG9NZkVIeHdhTjZ0SDg5RDd5QmZBQUg5d09zQWVRRG8KeHE3bjVRRGt2ZzNxNmdDeTEzN2xDeUQzK2hjNi9yRVZmV3czb0VmQTNyZXI0ZDB3SUlERUYxQUEyWGxuZkFHMFFIOWxJZjlsRy9VUQpramVDVUE0ZzVDR0VNR0RIOVZseHpRNU11eU9yY3c3VFBZUHRkbVMySWFrV2E3b1ppV3VZU3l4L2hTdkZ0ZWNIblNEdFBFcE9ITXlOCkhYYTV4MHMvY1FONXkrb0g1SHRkSC9UU1B1Z0pMMUJjS3pHaGlaaHRKcEZxU05ScWNrRXB2NnhFVUZNb05CdUV0VHBCcVo2ck5yREEKcjFZU0hTMVhUVWcwWk1jWUFSZHlndXZoSlhDMkx0SW51Q1lOQkcrQnZpZ0Q5eEtTbDRGOGY1QzdON1VzbTdkdlZzNzEzbTRtbnBYbwo0NmtmK0VrNVp6L3V3UStxSHhSQTBFQWVBQXF1VFhhV0NqNVdjRlZhaERrcndKSVcxcHE5dnlTVHdzK3FObVo4L2xraHNtQndUSEdRCk1SNmM5NHdMN0ZOTTZ6Z1RtZVE1eHJtT1VRNHl3VVVtblJ1aTUza0wwK3E2VjZrQnVwVE5SbUp3UTJaQVkySkVTM0pZM1I3ZnJ4djYKV2NjMDU0RC84OGJXNHk1OC9ZZHBCREdVVk54NTZ5MFBQWFRIZ3cvZTZYZXZYK3ZPSEVlOEhra3VHTnNsdmhZdkg4L1F6ZXhWZ09iMgpLcEZFblhXZmFucVBIT2dIM3Y3aWZ4bUFnR2FXRFY0T2NibG00MVhqKytSQWVETng4dXNKcWtsc1NWTklFdmdLM1BmUWd3Lzh6TzhQCmI1OGF0U0U1Tlg5NlJQbmVyOVNYbjFRZDM2QzZ2RUYxRVVnSVBOaW9lbnVqK3MwTnFndkFRNC9xTDJ6VXZmbTA5STBYbFcrdmw3MzYKWk9INWpjcUx2Mk1ld3hpUGZERW1kVXhyNXE1ckhkY3BjOWY0WStQOHVTdnltZXYwK2V1SzZXdjg2UW4yMkRYVitLaG1kSXc2WnlYLwo3V29CcHFIM1Y3d0w2eFJ2YkM4dzU4alN5SUtFVENYZkMwQmt0Y3M5S3dHSUlNZGlSYmw3aEFYUGl3OC9KbjNyTWVsbEFLREg1U2ZYClN0NWVMMzV6ayt5TjUxUW50dWg3ZzR1TndXWGlrQXBhY0JuYnVUTjZzWEk2MmxJTTNSeEd2b3RscStmemJyM2ZmMWk1cS9BeVdJNmEKUUlXM3ZNZ1ZxeUdBQk1BOU9ycEluUS8wQXdMMGNRS0k1Z3VnYkRscGw0RUtxQmZrQkZCa0NTKzBtTGVsakxlMWlNYlc1eHRMSUlETQpwZUk2STVyVWJGU0E2aXRnNWpKbFRha2NHS2lxV0Y1UkpQOS8xTjBIZkZQbjJUZCtBMkVUUWdaNTJvU3c5L0tVTjJZUDd6MjBQZVZ0CmJlbG83K21oYVZteURXWmtrc1dlWWE4a1Q5STJiWkxPdEUzYUpDU0FNUmp2Y2Y3M2ZZNHNoRzFJOHo3dCt6Ny85dmZSNTNBc2pPMkEKL1BWMVgvZDE2MVFDcFl3bmxYSWtVcDVJTGhSSU9hTUFoQldCSGdLbzJoOUF2TEo4WmtVMmw3MVJLUTQwYW9OMDVsQk5RNWpHdWw3VAp0RjdqWHFmeXJGUHRYcXZZdDBaMllJM3N0ZFdTMTFlSjMxOGxQcnhTZEhnbGNueUY0UFFLL3JubHZBdkx1WmNDZ3Vxb3ZnVFgwM3p4CjZjYy91SVJHTFkyQllMVW15dmdCRE1JQ2ExTTJFc0ZPRG5kUUlwelVjRGRNaEljR0FuNWl3eWVtNDBQVDRaRXhyWFNRMkZaNHJHTjAKR3pWaUx6V2lyUkFrY205Qk5CYXZlOXJvNEk3dkpuWi9KUHZ5OGZnekNDNmw3YzhmTnh2MjBtUDMwY0ZGOUlIOHlBTjBQRkg3NlJ2MwpVamZzcGNidG8yM1lUNHM5UUFPc2lYcVZGbm1BdW5VUCtPR1B2R0VmT1dZL0NERjJQM0hEQVZJc0NMamVCd3M4SURGN0tYaWkyOGpnClRVQkM0QWRLOE9sRTdzNGx0R2FIdHBMQ2RoZUh0QkNEVzRpaEhsS1lteExzZ1VzYlJmVjBwNm5TWmEzWmJXVzlaaE1jYkJRZjlDZ08KTnF2ZTk2aUJmbzY0Vk8rNkpRZmR5aU5OMWpOTzI1bEd6VkczK0oxV3lRR0w0SjFhL1VmV1ErMXRmMGRmN3h2ZTM5TzdEN2puZHQvcgpEL0RBdmU3WW1wYzNqK24xNlh1N0c4L0FRVzhHc1R3eTd3ZHZlY2J6YU5PUEZ6M3c1SzliZzN0K0JQRnQrOEl6N1BrQnk4ajZGNzd2CkhkdjZEakxnK091Z0hTNSs0VnZmZlExQUE5N05YMTlpdmMrZkQycnc3aCtvbnlIeGgwUElEVlJ3ZFpoM2VZaDdDV1ZkR0dhZVI1blkKRWxqVkdRQ2c0WW9UUStYSGh4bnZENVVBL2J3M1hQenVjT0hidy9td0FqUkllM09ZOGhwS2ZuV1l0QThsN2h2SzJ3MEFOSlRUTXB6ZApQSlRWaENZNTBLMzFmODNSSzQyeUxXK3hONzFYRW4rUUNxeVQrRnBKOXQ2eXhOZndVK2RLdHg0c1NqOVFnTGM1KzlhOGZKdmJZL0ZSCkNIdnlrM2ZueDhNSmhGUjRmdmdleW9ZRGNLSlBSbU5oVVVNUnQ3WlNhV1lhYW5uR1drRjlMYS9CeUduUXM2MDZ0a1hMTXFxclZJb3kKcVp6QkJLL0lDbnFDa1JocHpRcDJaWVc2c2lPZDJiRzJIRUpqSHA0d1p5NUlxQ01IVDVnOUMvYktPTElCbFNJYWN5TmRlU0JSVGNUWQpSbmlTNkFadzRjN2Q0TWtEMzhpajNTQVVjQWRQbkp2a0g5OEV3ZzNZeml4ZllqempaeXgwL0xrekRub3dwWUhQQmNSN21CZDJvR213Ck05MlhJRWVhTCt1ZG1ZRU84TllzRUh3NUxBSS9DUlYrMWxCRnNmYk1HR2RXbkNPUFpLSktGY1VpSGcxOFBULy9uYWkvbjlmN2dObC8Kbjl0L1Y5clhJZXkveXg3dUxoM29LRUp2ODlBNzhzRTdndjVCMVIrLzR4VWRMSXR1eUNRMFpHMXVKb1UzWnNQanpkM2tMZTcwU0hkZQpsSWNJUmVnbWJmU1E4VWVBb2JqbTNKV05XZWJUSG5Tby81UGZmemJucGVlZWUyckN6R2NuQlV3TlVLeU02Y3RRb3BsYVFCK2duUDRFCnFJVGVwSitYc2JXV2YyLytYZDU2c0F2cHlWSzFwNGc3a3NXQVFmY3o1RitScE1xNWdRSFRBeVpQZkRxOUlCL3RmL0RaVnorOEluMW4KQ2YrL0Z5S1hseWl2ekJlZld5aTlzRmg4YWJuODJrckY5U1hDQ3lza1Y1WkpmYmswRXJoQTlsL1ZKM2E1OWwvK214cHQxNkRmeTdydQpsL2EyeS9ydXlCNjA4d2J1OGdkdWx0Mi96ZnJ4Z2Fxam8yYjRBZXVMdjhnMkdqOWRqaHhialp4WnJmNG9YR0VsSVRTS2dFcVRwQmFJClNWZ28ySm9YRE82ZUVwajhZZ205U0ZLQUF3anZBUUlBb2dtTEV3V0s5Y0tETDR1dXZDeTh1a0I0ZnI3b3drTEpwWVdTeTR0RVY1YUEKajE5NmNwWHFqWFY2OTNwVEE5d2tiK0o2R1lSdEU0c3cxMFNiMlpoQ0t2REtVSGd0SHRna05NWXIza1RXVlk2YnNjOThjbUpxV1lBNwpVZkRzam9xd2VtYTRtYlZSVjc1THg2Z1EwNnRsY05JUFYxVUtvMlRnNFNpS3VNcGlmQ0VNTUtoR1dsSU5BQ1FxWklnTG1OekNVbDVSCm1xd3NCbXQvampCVWdJU1pxaUlON0VnRFo0T212RUJYYWRRekd6WFZUaFBYWFl1QWVPb2t2cmhySlUyd0NDUnROTW1zZW5HdEJqRW8KQldvNVh5SGx5OFJjc1V3QUFNUVdWVEhGVlJ4WkZhSmlJWXBxZ2FSVUlLc0dCdUpJeXBnU2VKQnFKVkphemk5bmNNdEwyT3dDUGlWTAp3SWdUdEt3UWZqQmZkbktwNU5CYXdja1ZvdVBqWmlWeWROejg1d0Zrb2NDUlJCYlNDSU9nZ1VEQ1hONFFtaWorR0lweVF3OWhSK2pCClBhVWc0VzFVd2w0SytHWFVianBJOUo1OHlJaVJ4RHdhdkZ3RUVyMlhGdk5vQUhHOHloa3ZtOXFvdUhWQVl2ZFJmWGFKYllQQmI4TDcKKzJFZ1piQkU3aWRGN0NlQng2aTl4T2cyWWt4YkxxUVMvazdhd01lREFXNDNOYXFWRXQ1Q0pIaW9ZVTAwOEVob3pndHg1d0QwaEhnSwpRajE1SVNNQUNtb21SVFRsVVMwMGMyMTVvNlY2ajRYemhsMzRicVBrSGJmaW5XYjFFUThzLzRDY2NOVWVhZFFkYWhJZGFWWWY4OWlQCk9NM3YyYmdYRzVxL2FEN1YvdW9mZS9mZjZXMjkxN01IbmxIYTkxYTdUeitqQU9RLzdNZC9uYXYzWUJkSS8xdmV3Tk8rOFBqUCt4a0IKMEtnakwvd0JoT3NIQkQvMkM5Qm5vUGw3Yk4vN3pZZGIzN0hlWjB3L1grTUFnb04vN0g2VEQwY0FoSlYvdmh3MmZvbnE0ZlRuSWMxdgpVSlYzQXp3QUVPb0hJS0FmdkFFSWJvT3ZQQTNuQVBrQkNPaG5xT2lkb1FLb241OEFVSVpyTUwyeE05T0J4dGYxSkNnOVl2NjJONnMyCkh5elorV1pKL0p1TXVQY1lDYStYSkI4b1RuaTFPSDFmY2VSNzhOVDBSenFkUitiNmJIa05EdldKYjRQSFVHemVUNC9iVDlteWg3eWoKbFp6b29tVTU4NHR0REVGRGxiNk9CZHhqTVF1c0prR0RrV1Uxc20xNkR0QlBuWlpwMHRhb1ZPV0l0S2ljRDE2K0tZbmEzQmdMMUE4SQpMQUxac3A4QUlEdytCdUVTaW5GaXc1VGg2bGgyVEJQY0x6WUtRS01ZTks1K1FMRGZOVTc4b2ZNNDlQaVhmSHhMWGI2S0RsN0hlaHlBCmdINEM0WEpZWnFnakN3UjhnbmoxQzN5TzhOcWVHZUhJaUhKa2I3Zm1GUm5wS2dYRGFDaVhjQmtlVzlxdGY0cUhPc1d3MmJtTE05aFoKMFg5SFBQU0FQOWpKR3U3Zzl0K3FRUHQ0RDNyVWpXMDd3dFhiUWt3WkVVN3lKazl1bkRzUEh1VHBvY1U0MHdDQXdOY0tmSnlBYTNnRgpDRDk0SkxnNU4yMXY5ZTg3L29RT0QrUlJ5QUVUQXA2Wk5uSHl6SUF0djVqM2FRNFB6ZEIyYnhQZ2gxM0FzYzRwbzMzemt4bExsbjl2CnhxSE1tS3JQdjVLdWVORzlGRWxIR255ZjREUHRUaEIzVW5TL1NXWUdQdlBjeEVuVDVyNzRpNDl2bk85Q1VlV0piNTZ2T2JZWXViWkEKZkdtK0NKN1p2bGg4ZVJGeUFVZlBVdVFpZmdIN2dXU1g4ZUFHV2lYOVpHNzVoUno1KzE5OXpScnNyZ0x1R1c3bm9UK1UzcjFiRGpDRQovbGlEL3NEcC9sWXkyTVg0dHF1bXlybG5EZkxCVXVuWlFQbWx0Wm9QWTFWV2twQk01Rk5vc2t3Y1FDUDBlYmp5aFFNSXhBY2dXQUZDCkNta0lsU29vZ2dCQzNzSUJORjl3N2hYay9BTHhSZkFwUUFDSkxpK1huRjhwTzdaSytmWmE5V3NFWFFQQm9DT1lSQVJ6TmI0N0xNcFUKRTJYa1JKbFllQ0xNSURVakMyU1BCZEMvS3hpQUtpTE5EQytBVE14TnV2SkViWEdWRkE1NjVnRDBQQW9nbnZ3aGdOZ3lDS0FxY1JFTwpvQ3B1QVlOWGtpd3JqZFpYQU9GRjZxc2lERlVFb3hkQU1kcHltcTRDQU1pcGZRUkF6ZlZTa0ZFQXNoa2tkVnFSVVNVRUFGSksrSElKCjd5Y0JoSjhrandPb2RBUkEyWHpHUm43VEt1UU1EcUExd3RIdStYOFBJR3dhSXhrMzBBaURpSUJCb1hadndoeGtncE9DSjd5Ukd1R2kKZ0FBUEVacHBZYTFVa0lnV2FtUXpOYm9aUGthMTRBenl3Z2drYWc4c0VlR0p3aEtOTFRQNWJnS0ZBSXY0TWtwRnZ1Qyt3ZW1Eb3djUAp2b3lGcjJUaHdXRVU5U3BXRGRwUGhldForeWhSZThreGU4Z2JXa2tBWVVBODBhMTA4TkZHZUxCUHBJa0NFdXpJQzdKUmdtMUZvWTZpClVCYzl0SWtZMmtRR0hnckRSdXlIdWlrWWdDaEFRdWwyaXJDaDJObFFBd0IwMEk2ODU1UWRjaXNQTld1T0F2bzBhYzQwVzA0NU5DY2MKc21QTmluZmFGQWZkeWxOMjI4ZTJWMjgxL25aZy8zY29ZRXJiL2E3V2pwNzluZjF2UHVoNnN4Mm5qemUrOHM4SWdFYnBCOFJIbjBmMAo4eGJjN2o1S1AxalR6NzJIOUJuUkR6N3ZaMXo5K0EvK2VWaitnZnI1ZWdDZit6d3krdG5YK3p5eS91VXQvd0FBRFdzL2d3QlNmb3EzClB3OGhOK0FHZVA0VnFCLzJSYWlma2ZJUFBnY0k2QWN0Tys1WC9ua0lvT0hIQTZnMzI0V21lOUJFTjVya0dJbzNvMXZrRjR2NFdTM3MKcUhkS3Q3MVZtdmg2MGM2MzhuZThUa3ZhUjl2MWF0SFcxeG4rbmM3ZWtZWjdZWnR6d3Q2aW5XMXd6U3R1SHl3MHdrTVNQT1NVUm5LSgptYzZxSzFiVVY5WFhjNXZxQkI2enNNa2dkT2tGTmgzVGFlUTREYndHRGRPc3JUSG9hbVNxQ2k1U3dPQ1FhQ0pTcWpwM1l4MmtURWhUCmRwZ1RWajRlQjZCUVc3WXZZZlljWHlJZHBBaDdMbFpyeWNEYWg3RzVRVTFFdkdGb25KNmhSd3M1dm9XdHNjVEJnNWVheHNhM2o5MC8KNEJQQkc1eDlqVDYrQkRzZnhyZitCZUlEa0hjdGJBUkF3VTdzd3A0WjFKZ1phYzlLcnlWeU5BVkdaYm5KVktwWE1BL3VMVUs3SE9nRAoyVUI3QVhxL2VxaWpackJEME52QjYrc1FvdDNTd1k2eXdlNktybjd0Z1hkekNmckVEYzBsc1MxRmtiWlU0SjV3TnptOG1iYkJBeXRWCmdEdjRpSUdZRmpMd0VBakJuYnVtaWJ6dnc3ZFF0UHZnTzIvTm5ENWo2dFRKYzU2ZCtjTDBTWWUyMFFab0puU250R2NuMHBlcDZva1gKRDZjbzdtSDl6ajhybzVxai85UExaR05sOHk5bU1FMEpQanNBb001a3lYQ1NmR0NIcUNkUjBrL1N0MjBrUFR0NTZ0U0FnQzJwMis4UApEbjExRTEybk83cUljMm1CNEFySUl1VGFZdkhWQmZ6emkwVVhWeWx2TEJGZkd0RVBIaCtBTHExUlgzdU9keTY3NGZUMy9kWDkzZXk3ClB3ajdnWUYrRktLM3VlM3RaWGQrRlBiYzQ5LzlYanh3bTluVHcyMTg4OVZGbk1QTDFOZldxejljcTdxMFJkMUFFUkR6QkJTS05OY0gKb0JIOWpBWlFzUitBOHBGQ3VoQUNLSm12Q0VMZW5JZGNlbGw0R1FQUWhmbWlDeGlBNEY0MmFDRHg1UlhpaXlzbEY5WXIzdzlVN3czVwoxNGFhUmVHMVVEbFlzekFueXNqRmdrdW9Kc3BVRldXdUFIbWtaK2gvRVBnT3gwdTBtUmxsTEk4MGxjRnBqYldzS0VQMVRrMTV1aG9PCitJSDd2M0FBamVnSGhLOG81aXVnZnVCQ21MU1lLY0VBaEJTWGlnb3FlVVdGdk9JRWVXbWtvUUs2QndNUWpKNUZNTENqdFpVVWJibGUKWCtQVU1COEhJQml6REJqSWJwUTJhTVVtTmFKWENGVlNnVUxLQndCQ0pCeU91Qm9ZaUljQlNDeXZGa3JMY0FCeHBlV3dDQ1F1cjBiSwpBSURLZUJVQVFJVThXZzZmc1lWdlg0c2NXeUE5dVZoNmVEVnlZaXg5L2g4REtIU01nVEFHRVlPdGVTQWhOaUtJRDBNd2pWNE1ZVzFECjhQQzhPQnQ1V3gwcDFrSFo0S1RDQW40VEpjYURlUWk4SHJXUW8xckprYnRoSW5hVENYdkk0VzBVd2w2WTJGWVlyQUJEQVFiNnlSQU8KVUNMMlV5TDJrcVBiTU1xTUJQenk0WjFXRXNpbVZqTEk1aGJxWmc5bGt4djJBY0NQQWZ4WnpiRCtIK0dpZ1FESndVL0JUZzIxZWJ1agpzT0hjaGNHVzZoQWJNNnl4SXF3cG45QkVBaStnWVUyNVlTTUFDbXlocm1zbWJuZVNpMnlGamdhNEIvNXRtL2l3WFhiSXBUamkwWnhvCjFwMTI2ODU0akNkY2ltTnU1ZEhkK2tNdHloT042cythM3IrNysxdDA5ejEwZDhmQW5yczllKy8ydkhxLzc4MEhJTDF2M25zY2dIb1AKUHJ6dUg1bHRDSUwveHY2UlBIN2xDK3JIQnlEZmFWKytlVC80eXBmLzFKOEJ6M2NnK0ltbnZ0b1BQdmJ3Q2ZwQllmc3pMUC9nK2tIeAoyVDlZN3pOZS9obEVvSDZHZWJEN0IyVmRnUFRCeXo4Ky9XQnpnT0FVeEJFQTRldGZVRCtQQnhDYTdock85S0FaSGpTMUNVMndvMXZNClBkdFZYMmJLcXV1cTB0ckt0cnhWdVBFZGF2SUJTc3BlMm9ZM2l6TmFTMzJOUGo3NjdNVE9za2hvcHUvY0RVOERCUURhMUVKTGFLUVMKTGJUaVdyckdXR0V5VmR0cjJjMG0vbTRqdjlVZzhPajVUVVorbzVibE1uQWNlbTY5am1YVU1KWHFLa1RHWUFyenkzaTBJaUVsVjBHSwpOK1ZHMmJKREdtRUlqbHgvL1R4aUlEOEErUkppQlVySUkxakJSUVk4NUFIRWtRYVBFUjBwd1BqMlhrWENFd3pnUUVYOEFyLzJ6OWh5CkRwNnh5dkZaWjFUdzBsUklZeGFJUDNkdzhUd09RRUdZZm53QUNyVjVFd1RlcHpXVFlNdFk3OHlJdFdmbkc4aEtKYU5CWGFWUk0rcDAKNVo5OXpFSDc1RU4zcTlETzRtRllQSkNoWGFWRFhUVzk3ZHlCdTN5MGc5bmJYdGJWTGZ6OEw5Vng5cHlvNWhMd3p6UEtucmJWa3dHKwpGQ0V1RWdCaWxDTjdZd3NGRGxqYVRRMzM1SUZFTkJQQng1YnpscXo5d1hjOWQyNnRKWVJNbmZUVTlOa3pwazJkbUw4OHBJOWk2TjBsCkd0d2hHa2hYZHFmSkJ4S2xnQVVBQ21PSjgrU01wYzkvRGtCaldmT3ZweTlSZWpkZTJKNGliazlFK2xQa1E0bXlCOXY0UGNuU1czazYKeHRySW1RRUJBVk1DOXV6MkRIZWpybC9kWGNBOEJuZkNDeitjejcyeUdCZ0l1YkpRQUl0QUFFQkx4VmVXU2J3QVdpRy90a0orQldmUQpBdW5sSmVKenJpdnVvZDd5Z2UrWVhmZExlKzZ6dWpyRTZFMTVaMGRsNXkzbVVEdm0ycHRNUU52ZmZLVUowaHhmb3Y5NGxlcWoxZkl6Ck81UjFGR0Zlbm9oQ0V1SHJYeVRnbm1JWkhROE9vRklKQ0FSUWlSVHVlQ29VRjJJR2dnQ2k4WXRTQlBJZzBldnpSQmRlRmw1OGhmL0IKUE9GNVlLQ0Z5TVZGSWhnQW9DV2k2OHVRRDVjS1Bsd3B1N2hLZm55dCtyVkF2VFhVcUFvM2lTSk1tSHY4NkJQdGw3R1UrVC9MV1BxTQpoQVgzcTV2SzRhS2JpYmxCVjUya0tpRmlKN1JqZlQvKzlIa1luaHlXZjFoU1JvMjR1RnBVZ2dHb3FKeFhSQmN3ZGluS01QclVST3ByCnd2VllIVWdMQVJTcHJjalRsR3AwMVJpQStLTUFoQmxJQ2dEa3FaVURBMkdyWU5KYXRjaWdSUEFpa0ZRbUZFbTVQSEdORjBBS0pnQVEKSWlsRHBCQkFQTWxEQUZVSUtqQUFNWXU1K1VSZXlRNWViWkR3M1NYU0UwdWt4MWFKanEwVWp4L3dwbkh6SHdkUW1KV09YL2dZaEsrRgpqV3FYeGp1bVFZS2RaTUNnY0N0TWhJMGFWMGVKMTVBeXBIbEpHbUtTanBSa0lDZUFtRWk3ektSZGRlU2Q5ZVJ0bHR3dFdEYlpjdVBzCnVSdnN1VEdPWEhoY0luak5hb0xsL1NnUFRFVHpUeVJzTjNpRVAvSnViaVJ1ZHhCMzJZaUpkaEpJa2cwbTJVcEt4ZE5BVEsrSFNUWGwKcEJweWt2UloyOHhaVWJiY0VQQzl4MEVFMzEzd3p5TFVSaDNwRGFmaDQ1UmcwY3RTRVZRdkNhclhoTmdrWVUyVjRSNWloQ2N0M0VVRQpBQUw2SVRUUmdnR0FXdUVpUXFhVFpxdG43YkVLM3JaS0R0bGtoNXlLb3g3MXlSYmRtV2JkeVViUjhXYmQ0ZDI2dzAzU1M4NkdQemQ5CmNMLzFINUFnZTlwNzJ1NTA3YnZkL2ZxZEIyL2M2WHk5dmVmMSswTUhlLzBCOUVnUDBCajY0QTNPZlcvQVUwNUI4SkxQcUNuUE1GalQKaisrc1UwQWZYRDhqaFIvZmhxOFIvV0NGSDF3L0Q0ODd4VWIrUEtJZmJOODd2dmpsMi9lT0JlcG5FRHY1YTFqM1czenIrNURTdS9nRgo5RE1rZUtnZjJQMkQ2UWV0UHVVYkF3MzA0d01RV3VRRkVQcFRBT29nTmFFcGJxQ2Z2b3dtTkxFSjNXVkh0OVdpQlAwLzQ5bDZXVTMwClc2VnhieFZzZjRNV3Y1K1c0eW1LZm9PQjl6amo5Tm5lNW0xdzNyNDdmNWVidXIyWnZybUZ0cVdKa21paFVJMVVucTVFcmF0d210a3UKTXcvb3A4WEViemJ5M0FadW80a0xYemowSEdBZ3E0WlZwMmZwdFV5SnJJeVBGSEdSWXJhNHBGcFNXQ3lqWnVqek50WEQ4Zy80S3dmMQpBd3cwWG53bEgzLzlnR0FRendscVNGdmZrTExla2hSb1RWNXZTd20wcHdmYklZWkFRcDNwWVkwWklBUlhKZ3cyZ01lWGNGY09IcnhKCmVXeEdQZDh2NEUwNTRNTWVsVkgwOGNXL0doUml6L0RGUngvL1FBRFpzd2xXN01LUnNiTSt0MGFiYjFhVTJ6V3NXb1BFVVYvZThhTVkKN2E1QzcxWVAzeXNaNm1BTmRTSm9aL1hnQXliYXgrdTdVNHJlcVVBZkNOQnUvcTFicGVsN2FlRDFKOFNWSCt2SzJkNlNGZTNLaHF2egpUZGhNYWhjeDNKVUxYaXNDSGZDVXZaZ1dDZ0Rjd2MvUG80UDllNXViQXlZRlBQdk1uQW5USml5WlB1dGFXdlZRbXJ3dkhobElsOTlMCkU3Y25DL3RTSlBndmU1UEZQeXRqbWZLZnkxalcvT3ZwM2lVQzcrRmVPanpCSGc1NEJEZXhyV0VEU1pwUGN6Z0w1anc5ZWVxVTRPVkwKSDNTMjMreEJZd3luRm5LdkxCVjl0RWg0ZGFIZ3loSVJlTHd3bjNkdW9mQThOaC9vTW1RUVZnckNEUVR5c3ZaY3VQamFKMzgxb3Uxcwo5QmEzdjZOaXFKMDljSnVKZG5BSDd0V2c5MHJSdnpON2JySjd1eXI2SHlEZjN5OUw4cHhjcUxteFZQbmZnYXF6dTJTMVpFRXVTVVlsCkk1UkNvQjhKdVZoQ0s1SFNHYko4WCt0UG1UUy9ESjU0VllBRHFFZ0VBVlFnS3FJTDZSQkFRbG13K0xWWHhCZm1DUy9PNTMvd0N2L0MKQXVHbEJjSUxDMFhuRm9rL0FGa01KQ1FFZ1N0NlN5WG5WOHBQcjFXK0Y2aHBDOVZaQ1FiSUlJQVB2REVJamdzeWxRT1VSQm1xb3d4TQpXQjhhTHhpVnhzbllaejQ1RUVDRzZnZ0R0bWhsWUcvUlZHY3BTd29WK1Z4VjZWajlBUGNJNVBnRmd5c3I0VWdBZ0JnQVFGVkljVGxTClVzWXZKaU9NcmFvS1hEL1JPZ2dnK0toaEV2VGNjRzFGbHBxaDFGWTdkU3p3T3VZeEM1dHJrWlphU1d1ZEZFOUxMVXh6dlF3WXlHV1cKK2xiQk5BcUJTc2J6QnhCWFdva0RTQ1F0QndBU1NpQ0FNQU5Wd0dsQWZCeEExU1djQWlxWGtjRFRoZ3BmWHlZQkFEb3gxajBQQVNRKwpNbTcrYndESVp5QnZzSVpvbjRRZTdaS21CRG5nRThJYjhGQTJtTWpKMGp3U040ZkN6YVh3ODZnQ0lrVkFwQ0pFTWtJa2lXQnlaVm5aCjhxeE1lV2FhSWpOSm1aR296TmlsaGdFV0FZbXdFd2wySXFCSmlOTWIvNStWL1JOaHo0MjE1RzZ2elUzUzUyU3JjOG1xUEpxS0NGS3MKekFNcFVSRVpTbUtKSWc5R25sc3N5NkVyY21peXJEeEpacElxTzlhY0EwdFpWakxCUWg3NU5HbjRKNDZsQUlSZ0t3eXVSOVliYldzTQplOWJWTmdZN3BBUTNuZENjQkFHRTlRWkZ1R2hoSHZvNjhLcnFJZTVzb3RUVnNacXR3b05BUHlNQU90R3FPOTJzTysweEgybVdRLzAwCk9yOXV2TnJYZkJ2ZGZiOW45N2NQOXYvWTlkcVBEOTY0aGVWT3p4c2Q4SHpUMTd3SFZ2Z0FOQ3IrYjhYM2R2VzlkdCtYaC9XZVYrR1UKWjU5K0FIMThKNzM3TDN2aDlCazc4TkJYKzRIQldwNUg2Y2ZYK0R4S1A2ajVqejc5RE9Fclg5amt3eUc0K0hYRGUvNFhiUDNCWnY5QQovWndicmo3bDA4OFFwcCtoMHNQRGpNTzRmbUFLSGdJSXBUNFdRR2k2dXl2SDFadmhSSk1hMFZRb0lYU0hiV0JyUFJvcDY0OURkck01ClcvZFhSTDlWQXFjNTc0ZVZIamk5RUFzOHVhS1ZEcksxaFFheXpVM2Q3Q0lEbXU4MDU1STBaSzZ5dUZaVGd4Vjd1RzRUQmlDekFEd0MKRERsTmNHcXEyOGkyYTJycXROVm1IVk9qcmhHSnk0UUlReXlwRkNzcXhmQnM1RUthbXJMRG5CdHV5M295Z0FqNDMzeGJIZ2gyUUtBMwo0Qzlxc0RVbjBBSUJ0S1loY1kwbGZxMGxhUjNHSUV4Q3FTQjR0ODFJQzQ1WEpIaXB4cGN4dnZIR3Q1NDFKbys0QisvZ0FSbExueEVBCmVaOEE4b2gxeHJ1SkdTZzd4QTZTR1dQSnlqT1JSTnJpQm5VVkFKQlJKZG5ieE9ydmxBOTJWS0IzQmYzdFpZTzluUHYzcTc3NVV2bmIKVHlxNkg4alFZYzdnM2FMQkg2dUdPN2hvTDVkMXJEVEtsaFhlVWdRd0YyTlBqbXJNZ2hzeVlJOFVDWTZhYk13QkFBcHB6TjdRUW8ydwpaWUgvc2o5MDN1cTlmejlvN1pwSmt5Zk9uak56eHNRQS92cll2angxVnlMU255WjdrQ29HQUxxWEl1cE1RdnBUcFlCQlk0bno1UFFrClM4Y04zRy8xNzBqWHYwTS9JTDFKMHA0MGVVZXkrSDZHL0hZU0FoZ0VMc0RqY0x4eWdLU2hCUkplbUFBWHd0NDYvRHJhaityUC8vNmwKNnROTEJKZFhpSzh2NGdFM0FQRmNXOEMvdUZCd0NUQUNHTWpMSU1sbFh5bG9ydXB5aHZuZG0zZXIwZHZNN2p1OGU5OEMrcFNoZDVnWApQNnM5ZXNOKzY0RVE3V2VCKzNkdlYvYmZSSWJ1VVV2Zk9MUkFkbTY1OWxlaHVuTTdwWFZrZmg1WlRpMFN3MkZhWXdGVUF2WGpCVkNwCkJBNzlLeFlYQVFNVklrWDVBanBkVUp3bWxJZUtYMTBnT1Q5UGVCNEgwSHpCUlFDZ0JjTHpDMFZuRjRwUHc0QUwwZGxGNHZPTHNUclcKU3VubHRmSlQ2MVZ2QmVtYVEvVFdNSU9DWUJBUmpEeGNRcEFtQm1hVWdUMldMQ053R1UyZkp3TUk0OVI0TVhMd0o4QmQ2d2IyRGxVbApXVkZVS2FmeFZLVThiUEVMUEFxVU1EaUFoSXBTZ2J3VUFraGFDbjdvWWlKUVAxVkNScm1ndUpUUHlCV1ZiVlpYRUl3QVFLd29MVE5NCno0elIxVVNvYTBMMW5EQnRaWnFxV0s2cGN1bzRkdk00QUdxdGt3RUFnVWRQblJRQXlHR1ExT3ZFSnFWUUo0Y0Frc2tSaVpUSGx6QTUKQ09CT3BWQmVJL0VERU53UEw0RkRvdG1paWlwQlpRV3ZFZ0tJWFpUUEtVN2hTaU1FYmN2RkFFQ25sa21QckpJY0h6ZXJKVWZIelg4YwpRQ1B6aUdoNEJRaS9DYUF6Nm1saFZpcWVVQnNGMENjQ2UyYXduUjVWUjR0WGtITjRKRHFiREpMUG9ZQVVjTWtnK1J3U0REK0hKc2doCkM3SnpCVmxaU0ZZYWtwbUNaQ1NKTWdqMUpKQ3dCbS9qRWRCSmtBMEdYM1FiTjFIMXhHMUdZcnFLU0piQm54SXF4TlFxQ2ExR1FnVmgKU21rMU1waHFLYlZDUWk0WGs4cVVsRElwc1VDVW02N01pVE1Udyt6VUVBY3QwdXI5T3ZqckI5QUhKTXhTRldRMnI5YTh1MHh4YnFYMgo2SHFySTZ5cGt1QkpCd0NDM1U1TnRDZ0hOZHhORDJ5aGhyUVFOemFSOVhVc3QwMzRsa04rMks3RUFYUjh0KzU0aS9iVUhzc3B0K1pECnAvdTdwbC8xTjk4YmJMN1QyL3B0Vjl2Tm5qZmFlMTY3Mi8xcWU4K0JkbUNYd1RlaFpyb1AzUFB0QWdQcGZlTmh4dFdQUDRCODlNRjMKdWZlLytyRHc0MS83OGRMSFR6LzlyVDhPdHZ3NHZuNHdBUG4wODdEcjJZN1JaMlRzSWJic0JhZitnT0Q2R2RCOU5xajV6YUQ2MThPcQpUNGV3eGE5aDhmVkI1T29nLy9JZ0Qrb0hMbjVoNVIrdmZpQ0E0TzUzV1A1aEFBQzlqeFkvQkJDS0FRalR6eHVQQlZDR0I4MW9ITWh3CjlHVTZCdE1kdzZuT3dVUmI3eTRydXNHRVJtcFFndlFnZzd1cnBYcnJ2cExFM2ZRZGJXVGducTI3NlRBdHRDM04zdVhSTFc1NG9GV2sKTlN0V241NnN6SzVRNUd2VjFZMDZ2c2NnY3BzRUFFQWVNNys1VmdEU1ZNc0hBTEtaV1kxNnBsWEhyTlZWNjdWTWxiSktKcTFRU0t2MQpTbzVDelZiSksyWFMwaklsTGRtWUYybk5BV29QZHo0SlFMaCtSZ1BJU2c2MjVnVlpNOWRaVXdGOTFsb1QxdG9TMTlsVDhLeDNwT0lKCmRLYmhDV3BNOTArd0t3UFBLQS85Qy9FdTI0SGdlN2p3K0ZkNkhzMzRBQXF6UDd6dmUxT1FJelBDbXJmZW1RMHVkdFJtTTNRVXBhNjAKWHNjQ0FES3BlQWZiMkwxM0JiMjNHV2luSEIyUWQ5eFJmL3dwVHlYUEZrdFNUNXdXM0c3WG9FT3lvZnU4dm5ZT09zRFhuczJQTUc0bApOT2VITmVWR09sS2lYYm1SYmpLZ0QxNVVqblFUQVlEQVk1eWJIR0ZNS1RraUhoZ1llUC9va1NrQkFTL09ualY1eHFUQWFUTS9TcWtjClNKRjBwMHU3VXlYM2R2S0FlM3JTcFBlU2hQMlppdTU0WVUrUzZHZGxMRm4rdmVuNmQrZ0g1RjZpNkg2UytNNE9YbmVxN0VHS3RDZGQKMFprbUF4NGEzQ2tkekZDOHM0MDZQMkRxbEJrelkyT2orN3NHdnJ6N0lFaHpZeUgzNUVySnBhVUljTStGNWRJYmdFR0xSZGZoRVJrWQpnTHdNQXBpUVhGNG12ZkpMOGJmc1BRZTZ1K2c5UDViZDZSVDFkN1BiMnpuSC9saTNUdjMyYXZrN3V0UDJyLzRoSE96a0ROeGlEMzJuClJMdFppc092TFpZY1g2Ny9UYUQyN0U1cEF3bWg1RW56U2tVRnhWSUtEQVlnM0VBTVdRRkkrUWlBeXFSRndFQitBQ3JJNXhlbkk3SXcKNmFzTHBWajNEd0FRNzlKOHdYa1FXQVFDSHorNEtUNDNYM3gydnZnMG5HOGs5aGF4VmtndXJaS2RYYTA0dmtaMUtGalRFcUp4aHVoTQpVRUpHUWJpUmpmVU9Bd0F4eDQydmFYcFV4ajdUKzN6SXFmRUNBUVNmQVA3RUdEMG5RVldWTHkva3lpazRnSEQ5Q0ZWbElMQUlKQU1BCktnTUE0c3NZSEFtRExTNEZBS29STWlvRkplV0NraElCSTB0U0hxZXRJaGhZMFRwV3RJWUZBQlNycllsUXNRQ0FRblNWS2NvaWlhYlMKUGdaQXUrdGxPSUR3d0xVd3M4eUp0d0ZCQVBFMFVwNWNoa2hsZktHWXlSVlZBd0NKWkJCQUVta0YwQStXQ253b29nOUFERzVWS1p0Ugp4QzVPNXdpakJjMHJ4Y2NXUzg4c2tRRUFIUjAzWStuemZ3bEFqejd6b1lIR3htc2dHeVVDcS8wRU9haHJYUG5CdG9JdFdscWFpSndyCnpBZkpRL0pKV01oQ0dnaEpRS1VKWVVHSUpNekxRWExUUlRuSm91d0VjZFl1Y1ZaRVBZQVVEQUgvTUt5QVUxUVF2TTQwTnF1YnFFRU8KeW9ZNlNxS09RbFRSaXVUMGNoazhLSzVLVVZDbEtxeFdGMVZwaXlzMFJXV2FRb1lxdjBoRkw5ZlF5dVFrQUtBMGVXNnNtWVM5YzNxRQpoUTcrT0ppSDU4MzZ6bU5EZ28yZUZRcnd6K04zeTVRMzF0Vy9GdGFFaExjUWZRQ0tkbENqbS9LREFZQ2E0UzRiZFcyTnk0cTg2WkFmCmNxZ09OeXFQdG1pT3RXb0JnOTdady83UWMrQ1c2NCtvK3c3YWNxdTc5YnZPdlRkN1h2K2g1OEM5M24zM0IvZDJvdnQ2MEgxZEEvdnYKOTcvZU9mUjJ6Mk1CNUhlLzN5KzlyOTRENlQvZ2phL1haOXlWcjdFQUd0SFBqL2pLRnc2Z0liY1hRQU91ZitMNndRR0VuL2tGOUROZworN1AvMUI4QUlOVHNCZENRNFhmKytobFdmRElvK3hnLy9oMEhrRi81Qjl2M2pnRm9xTksvL0lOdGdNY0FoSzEvdmUxWC9ua3NnTHJJCm5zRWNGNXJ1UUZOcy9SblcrMW1XZ1NRTHVzWFd2Y1BXSDFmYkhhUHVqQkdkb1hKeUhLVmhiOUszdHhHM3RNSkR1M3lkWVJ1YlNKdGMKeEkzWWdPYlEydFFZVlhLV1BJZXZaalFZZUU0allqVUpXK3BFNEFYQ0ExOHBvSUhBWTVPUjdUU3liTHBxaTdHbXpzalVxS3NWOGdxbApyTXFnNHRaclJCb1ZSNjlncWlWbE5RcDZ1ajR2cGdFdWI4RXl6MWo2WUJsWFB6QTJDckIrb0MxcnZTMXR2UTJnSjJtOUl4bUxsejVQCkFKQlBQeUNCalpualpveDdmZ2FBL0N0R1k1V0RCKzhjOG44cjNoSVViY2xiNjh3T2RHU21HSFBZYXBwR1gxNnJaMW5VYkpPNjdPMzkKNVdndkQrMHRRKy94MnIvbnZQbGFvWUNienhZVmxqSExLdGdGdGJiMFAvMlJpZllwQnJwNUEvMVYrMzVkdmJGMlV6ajRKK2tteGJyaApvU0tBWExHdXZBaDdkb3lISE80aGdvOC8zSmtUYTh2WllNNXcvZVgxQVJUZGtwTHdkRURBODVPZW12cjBwT0psNi90STZwNGtRWHM4CkQzempIMHdRRCs0UURxYks3cVdJZ0lFRzBtUmppZlBrakNYTHZ6ZGpLZk1BbTJmNGM5T2VJb2FuZkNSSmVoTWtYVHVSdm1SWjUwNWgKYjVKMEtGRjJOMGw0bDZTT2UybHB3TFNwY3lZOWZlSGo2MFBEZlRsdjNGd3NPTEVNT2JOYWZuV0o4TUpTOFRXZ2lzV2lENWVJcmdJRApZY3RKTUl0RkYzRUR2U2k4S205em85MXd6YXVqVzlyZXliRWV0TDJFSEY4dU9qdGJldnBsM2ltaWV2L3BYK3M3Kzlob1p3MTZ2OHgrClp1OXEyVkVBb0pXSzQ5dWxWcHEwTUZ1VVdTYWdQZzVBRlNEd3pQTnhBRlFnS01FQXRIK2g5T3dyQ0ZZQmdnQTZod0hvMGdMQnRmbkkKOWZtaXl3dkVseFpJemkrUlhGNGl2b0FGbzVzRUcyOHQremhRY1NSWStSWmtrSzQyekNDRHBTQWpPOXcwMmpIL3h4bnRuakVBaWpCeApZM1djUkdWVnNieElPQjZBaElwU2Z3QnhKUXlXaUlFRHFCb0hFTDhzUTFJZXE2MEtOVENqZFd3TVFLeFlMU3RDeWNRQmxLd29IQUdRCmNCU0FNQU41MDFMckJaQkZKekdya0NjRENCRS9CQkM0RHdCVUxhenlBYWlZVlp6RkZjUUttMWFKY0FBZEhrdWZud0JRU0MxMTNQZ08KRlJzVi93UEdIamxzYk14QjgzakdRdWNSN294SkJEeHduaEpvaDArSXNOSENyZFROZWxLYUtKZkVwWkY1ZEJxUFR1Zm4wL20wZkFHZApobER4a0JFU0VRRUF5c1lxUU5rcHd1eGtRVTZNSVNleURud0RJSUdYKzdDR3ZIQUwzSG9XQ0w4bGtNWk5oQVdlN1JwbXAyNDJrWWx5ClNvV1lEdlJUcWk1aXl3czVpaUtlcW9TdkxoYW9pdmpLUXA2Q3pwWFR3UGVoS2dXOVNFN05rWk1UTktUTlptcVVoUlp1b1lkWWFhRTIKK0JqY1VCQlVWeFJjendocEtBMnpscTR6N1Ztck9iMUc4ZUVhNVpWMXl1dUJta3ZCRFE0NENxZ3BGeHNFUU1kR1psTUlidGhmR2RsQwpvdGtZcm5ycE8zV3lOOTNDSXkzU1V5N3p5UmJMNFJiTnQ3VVg3cnArMDlQNmRlL3VIL3YydFBmdDdlamJkeGRXZ0E1MDRNRUY0eXZrCitOcVpSMmVreFdkVWQzTWZ0dFRWLytwZFBQN3U4YUduMzRjZTdIUjNQTDVKUCtPNlo3RHhud1BPZjRCZ0c3NytEakpvKzl2RFpTK00KUG43NkFmVDVQV3I2L2JEeHk1SEZyMStOOVAxY3grbUQ4aThQOHk1NTljUDZBSjk4T0ZSMUd0Qm5zT0w0VVBueHdiSmpRRDlESllkQQpob3ZlSHlwNkI5di85ZllRZmFRREd1cm5EWlM4SDJTWTFEWkUzRE5NM0FNTU5KamJBaktjN1I3T2JFTFRYVENwZ0VGMk5NbUtKbGpRCm5RWjBvNkZyczNrNHdvZ0dxVTVSK0drMlJzZyt5cGFXM0oxTnBJUkdTcHlIdHFXUnZ0Vk9Ebk5teDlablJOZW1FL1FwTytWWkxGbFIKdlpwbE13bWNKdjV1UGEvVmhPdzJpMXByUlMxbXhHM2dOK2w1TGdPdnljZ0hBSElZZVdZTld5TmpRdnJvQlJZdHg2Sm1ndWgwMVdwMQpoVUpXWEM2bjdqRG1oZHR5b3B4RWJGY1hjVlQ4YitKcndRUnJMcDVRZTE0d3BoKzQ3QVgwWTAvQ2FqOXBZUTFwb2E3TTlZMXc4U3ZLCmtSMXB6UXExWlFjNTg0SmRjT3lRTHlGTjJYaUNBV1ZnZ3pBTXVBWUpjbWFCQk5vekFCRkN3VTE4VkU4VGJQTUhGK3Rja0RqUmpzeE4Kd0JQV2pGQkx5dHJHdERWN012MWg5TWdhMlVoMzgrajQwY2MvQkd0bW9DTTcxcEpib0tQTFZReVR0cVpCejI1VWMydmwvSU1IcW4vNApVWHZucnZyTXFXcExiWm1RV3lvVmNSQVZBN3lxTXZtVjFBb2lIVWxwT1ZINmw3dlMrME5jMlZYMUpsdEtoQ010dG9VYzA1UzNxWlVjCjVzNEkyWk1SWlUwS2I2VnViS0FCL1FTMVpRUTZVNUtiYSs1MGQvNzU5NTgvUFczeU0zTm1QRFAxcVJjbUJ2eHFWK1Zna3F3M1JYWXYKbWRXZExuMlFwT2hPVVhRbThIdFNvQVo2RXpVOVNZaC9lcE5GSXhsWjgwb1M5U1krVEVlOG9pdEYzWk1LYkNGNmtDRHNTa1FlSk1rNgpFK1h0bVlxN3dGV0pjUC81UUNKMHhrQ2lHRHdmM1NWSGQwb0g0dUZHZEZ3ekFDVTlpWTlkZWdOdjdVcUVqejNKVXFBV3VKS0Z2Yyt4CktucHkrcE5rZllsU2ZNeWpqMVlBUmo4a0NUdlNwR2lTK2xCSWJzRDBnSWxQVFNndExVVlI5T1R2dmw3S09ydFE5dkVLd1RWc0k5V1IKMWRMckw0bXZZOWZRUUtQeUF2UHJJdmVlYjlyVjdaMzh2UmNiRXN6dkxXS2VYc285QlY1Umx5ZytucS80NUNYaDFUWEN0NnQyTjEvNgpzdlorajZEMHRXT3JaR2RmMW55OFhuY2tXVzdKRXpFS3BKbmx3cXd5R1lVaElaV0lpYVZTY29XQ1ZxbWtnMGR3czFKUkJGSWhMeXlYCkZaWks4aGxpT2tOY1VDTEt6eGVTNklMQ0xLRW9WckpucWV6Q2Y4bCsvVXZSdFVXOEUvT0VGL0c4Z2x3Q0FRRENzMUIwRG1zTU91OC8KNmhyUGN0bkZsZkt6YXhXSEE5WDdZVytRVVJsdUVrWnFoWkU2UGpaU21RMERMdlE4a09CYVprd3RKMXBidWFHV0hXR29BaGRiOU13dApxcXBJUFJ3OGlLWEdEenF3djJmY1JPakxJK0Y3RnNib2VGczE1Wm5LQXZDRHZWQmFJbEtVaUpVTWliSWNqMWhSaHNoS2hWSUdvaXpICkRGVE9rNVlDQU5VSWk0RitxdmpGVEhZUkdTbmVvaXdsYUdzSVdxQWZUb3lhRTZsaFJ1aVkwU3BtbEpwTlVOZnNWRmJYYUZoV0k5OWoKWWtIOTFJbUFlL1kweUhFQTdhNlhZMUUyMXluY1pnVUFrRTBycVZVSlRRcUJYc2FUeXpsU09WY2k1M09RR3Jhd1VpaGppbVJWWWxrRgpNSkJJV29sSVlDbElJSzdraWlwWmdySnFmbG1KZ0ZIQktTcXJLU2F6K0Z0NDlZR2kxNWRMamkyWG5GMHBPN0ZDZW55NTlQZ3krTXRqCmNQRkxmSHl0NU1SWUV1SDUvd0dBTnVwSnFaSzhQQjRFRUpYL0VFQ3dQMzhNZ0RLRTJhbENZS0RjV0gxMjFBaUFRaXg1QkFzeDFFcDgKQW9EQ0c4Z0FRTUYyU3B5Wm5LbWlnQjhPcW1XRmxkNnBVTVhnWjNkRVU0SkhxQ3dTS1BMWnlnS1dxcUJNbVUrUmsxTlY1RzBtQ0tCZwpPeFg4S1hDOXoxSVkzRUNIWTdJdFJhSDEzTEJhOVRyakcydlY1OVlvYnF4VlhGcW52QnFvdmhwYzF4Ym1Zc0s5WURCd3F6dytFZ21mCkRFbHpsTmZiT1FjdDRtTk8zZUZHeFJ0TmdtUE45YisxSDd6bitxeTc5VS85YmQvMjdyN2QwM3E3dHczU3BIZi9yY2NCeU5mVVBEcVAKTG5YNTZqMCsrdUQ2d1JlOHh0VlAvNTViSU9QcXg3ZmQzYnZzTmFJZkdFdy9RL2EvUHpydkIyNzRHam53Ni9mREdIMkdERjhNR1g0SAo5YVA3OWFBYTFuNThBSUw3M25tWFFMQ0RMODRCQUhuMVUzWFNweCs4L0FQMGd4WWY4bTcrOGdMSTEvNk1sMys4QUJyMkF4QldCSG9NCmdMYVl1bmVhK3plWkJtSk5QYkVxTkVKd1BhczZ0N1o0NlJ2a0xTN1M1a2JpVmlkY0tBbHR5dDFTbXhWaXpZaXNTNDgwcEtXbzhzQVAKV0hZMXA5RW9kSmtFZXd4OEg0Q2FUVUovQU5uMUxKdWVZMUt6dFBJYW81b0hBR1RWY2EwYUZnQ1FYbHV0VlZkcVpDVUEzMGtHWW9RVgo3djhhQloxUkVzSnYraHRvRklBQ3Nkb1BBTkI2VzhwS1IvSXlkL0tLcHVTMXJwUkFWL29xWjlwU1Z4cTRHSldncGd5UXdNYk1JRmVXCmYvQUtFS0U1TDlTZDQ5TVN1QWFQUVkyWjRhNWNRSnpBeHF6MTRKZWUzT0NtbkNCSFpxQWx6YWNmLzNvUGdJNXZqdEdvaktXUE43Yk0KRUh2MjF2cThVbDJCUmxWV3EyTUNBRGswWEt0V1lGUlNuUFZFdTVtc2srUXJrV3FGdEJwUVVtNm80Z2dMd0N0N2diQXdoWnVSS050RgpzU1NVZVhZbHVYT2pMVW5BUFRITnBFaDdkcHlMR05XWUZiVTdONjQ1Tjd5WnNzR1ZIK01ocjNlbmhEVm1TTTgwZGcvMjY1U3lLUk1EClpzNlpQbVZDQUhGNTRNMGNHWnFzdUpPRW9PbEtORVdGcG1uUVZBV2FMa0ZUQldpNkdFMFNvcGtha09FTXRTOUQ2U3FRdm5RMXlHQ0cKWmloVEM0Sm02cnhKMTZJcENqUkpqcWJJNGZ2TVVQV25TZ0dEdXJZTGV1TEZnQjJBTEoxSnlMMGs0ZDBVNUY2YStGWWl1QkRmVDRVVApEaUZFRXNSUVA0QTFZMnBMZU80bmlmRlJ6bkFUZXdMU2laM09BWDd2Mks2akorZnV5THNDai9jVFJTQUFRRjFZSC9TZE5NbGdndnozClNmekFsMThKbURKeDFhb1YzMzMzM2Q4NkJ4UHFQbG9ndUxKUzlPRnkrWWRMSkdkV0l1Zm1pK0dPTUt3Q2RIbFU1a2svWE1vNXNGM2QKRml0c1cxeHg1Tm1LcTNNRk41Ym9ycTRXWDFpaFBMWENjSEtSK3VROHdmRTEvQk1iSmUvdmxPeU5VTzVib2Zsa3NmRjM2K1J2SjRwTQo2WndDcWlpelRFSmxJRFNRVWhHOVRKd1BVaTRwd0M4WUNFeUprRjRpTENnVzVCZnlhQVVjZWo2YlZzd2hGbkR5czduOE9HSGpVdkhKCnVhSWJjL21YWG1HZm5Ncys0OHVMbkxPK3pPUEJ2QUw3aEQ3QXFrVG5GZ2pQZzd3a3Znb3lUM3p4RmNuWlJkS2ppK1Z2TEZVMEwxVTUKZ3RXaVlJMHdXTXNMMGxZSGFhdUN0QlY0MXV0cmdwV1ZvZktLTUUxTmlKRVpWc2VOcU9XRzY1aCtBR0w1VjNyRzBzY0hvQWc5TzFJdgppTlZ4dHFuTGM1V0ZBSGtpZWVuakFBVDBBOEtYbGZrcVFEaUFhamhGUkZIeFpsVTVBRkM0aGczMDgyOEJVSjBhOFFFSUhvdnhMd09JCklhZ3M0NVl3MkVVVUZqT2Vvdy9uNzFrbFByeEVkdG9mUU12K1p3Q2lqUnZzUE5WeE1wWSsvME1BaFdNQUFuZmlES1JFMlpNQVJFUEkKWklSSVJISjhBRW9WNUc3VTVzYVlTZUg0R1IwV0VteFB0cElEcmRoaGFlTUZBQWpvSjhnQkYrQVNkWlI4QlRZb1UxNHNCRDhwWWhGcAp5cVE2R0ltMlZLUXU0V21LUVRpcTRsSUZuYVNneHVzcGtRM1VRSWNYUU1FTkJYQ0RtNDBZWmkwUHFUV0Y2bDlmcHp1NlZnWHBzMDUxCmJwM3ljcUQ2d3hEOWtkQUdTM2hUSWNHVlA2SWZlb1M3TU1KZEJKTG15RGZZbU85WUZNZnMrdmVjc25mY2lvK2IzK3kyZmRIYitqZWcKSCtBUG9KOXhBZVF6MENNTUdwTlJTMTE5K3p2NjhlRDZHWEdQYjhhUC80SVg1cDVIbXAzOUovMzROLzBNdWJ6NkdZVDArUWJMUS8xNApkN3czL0FuRWU5Z0ZOdThINi92NWZGam5yZjBBL1F3cDRjb1gzdmdNOUFON243a1hmZnJCeXo4aksxOFFRS1AxNHgzLzR4MEFEZlF6ClJJWDY4UUVJeFFBRTlBT1Q4eVFBRGUrbzY5bGhSamVaaHVNTUEzRnFORWc2SE03L0lKdVRVbDhZMlVRTmNlZEdPak0zV3RJMjE2WEQKZ2NMMW1XRjFhUnROV1RRdFhhMnFjbWw0YmdNc0RyZVpoVGlBV3N5SVA0QkE3QVp1ZzU1clVqS05LbmFkam04MUNPdzZubFBId2NjQwptVlJWQm1rWlgxNlFyU1BIV21CVC8rTUE1RThmLzR3TG9QV085R2hYWnFBMU1kQ1Z1cTRwTmNpVkhPSktXZWRJQ1BTa2hqcEhKNnd4CkRjVC8yajhFWjFxb1BRVUVYSVEzcG9QSE1FY3FlQXkwWndTNXN0ZDZjdGE0YzljMTVvUTVpTEUyMHVZRzBzaEMyQ1A2ZVFLQUhoZkEKcVhCTGRvcUp5TlVXbTFRVjRNdFZiMkRiOUR4UGc3UmV6VEtJcWd4aW5sRXFOYXVrUmoxYnF5dUNHMzFGQlN4WlVZV09rYVV2MkdpawpodFhTQWkzMDhMckVXRmRPYkNzbDNKa1Q3U0J1ZHBFM05PWnQ5SkFqVy9JaVhhUndULzZHRmlyNHhNR2RVLys0MFQ4OEZCRVNPSGxLCndPUm5wODZZRVBEMk52cEF0Z1lBNkt0RVZ0S2lsZkVMbDZhdVdMbHJ3YkswbGNFSmk5ZWxyZ2hKWGhsRVc3WWVoTDQ4c0dCbGNPR3EKa09JMVlTVnJDU0RzbFZFZ25GWFIzSkZ3VmtieFZrUXBBbU9GNjZLRmdSdTBFVHQzeDJWZDJsSDBYUW9QelZPaDhRbzBYdm9nWG5BbgpnUS9vMDUwdTZVOFc5Ky9nMzArSE8rUjdFNEE1cE1QeDBvRkVXTkVCckJsTEh6eUFVSU1wQ3BDK1JQaTc4TWZ1WGFLN3FaS2ZsZnNaCjhudnBNdkNuMzB1RDZJRzd3TEQwSllsdnA0cTc0aVU5SklNOGRGZkE5QWtCRXdMMkhkamZoNktLbzM5YXdqcS9USEo5aWZ6R0N0bjEKRmNqSkplSWJlQVhJRjE4RmFKWHd3a3VzMDc4UVhKd3J2UGlTNVBJclVCS1hYcEpjWElGOHRGSnlZYVg4OUhMbEI0c1ZWK2ZMUC82bAovT3FMOHJOTGtQZVhHZis0VUg0OVhOaEdsRGRRQkpVRlltcUpCTzVtcWhTWDFzZ3FtUEpLbHFJS2hLT3E0YXFaUWkwWDBmRkVPcUZZCmoyQVJpM1FpUkl1dzlYeVdRVmhtMU9UV2U3WlpqOFJZenNmV25kdGlPaDVqdWpGdU50ZC81Sjh0RFIvalNiQmZUYkJkUzdUZVNMUisKQkI2VGJaZVQ3UjhrMjArVDNSNnl4MDEwVy9QYzVseTNOdGV0em5VclFjaWVCbUpqTGFXeEx0MmlqdFh6b1lkcU9TRm1UcVNPN1EwRQpFRlkwZWpLQWRKVUFRQkU2ZnF5R25hQXVwNmdLcTVYRmlMSU02TWNISUtBZlNDSTVaaUR2RXRoREFPRkxZQldjb2p3Ulk1T3FrcUJsClJtaDVNV29lRHFCd0RRQVFPMHJGSmFoWk94UlYxV3EyeGNCekc1ay9GMERLbndPZ0drRjVPYSttbEY5V3lDdW1zQ3N5YXNSYldNNGcKNU9CU0JZRE9jUnhBZU1BMUFOQWE4Zkd4OVBsZkRTQVFBS0J3MkJOTmpUV1I0NVhFWEI2TnlQY0NxSUFIQVpRdnBOTHhJR1FxQmlCWQpCQkxtWkFoekFJQzJxSEppalVSWTE4RzJtQUVKNFh2dng5SUhENkVlYnNnUGRNS25iVFpUc2pVMElHV0JwRmlrS2dkL1hSQVZRNkl0ClYrZ3FsZm9LaGE1Y3Bpa1ZhWXRGV29aUVhjeVdGeGJMNkdscVNuUWRaYTJEQXMrZWJhRGkrZ214RjRjMktFSU5CMExVNTlacExxNVgKM1FEMFdhYyt1MDUxSVZqNTN5R2FxNkhHOXlPY3d2REdhb0tyQUFBSXEvMFVSSHFLSWp6NVc5MjVKZ3YvdlFiTm0wN1JZWmZtVS9mQgpPNTdQVWVjL2VqemY5cmIrMElmclovZWR2bjEzKy9iZDZkbjNveitBL0EzMGhJeWpIeGd2ZmZ5clByNTlYaU5WSDlqcmc3ZjdBUGY0CjArZGg0UWMvNE1MMXpVQWpQdWZRdSt3Rjg2aCtodXIvQ1BPb2ZpQjl0TEQxQjNZOUsrRzJyMEdwVnovRGdzdEQvRXR3NVd1c2ZpcFAKK0dvL3c0ekR1SDd3MWg5WSszbDAvdUVRK1ZVVVpqOUszUGNRUURtdGp3VlFzZzBBcUF0MkF0V2lHdzNvSmgwYW8rbUtVN2JIS2RCZwo2YVgwaWxSVDBjb1dVcmc5ZlhOOWNwSXVaWk1wSThRQ0c0QVN6SG5WZWthZGx0MmlGZXpXSTVBK2RWajV4NFNNQlJBUVQ1MkdZMWF4CndLTmRMM0FhQkkwNlBvaEZ5d0h2b1Y1WmJRWXZDcktTQWcxdFd4MEphR1lzZDhiZUdSZEFjTnVYSDRDQ3JQR2h6bVNDSnpQRWxSWnMKVHc1eHBJUTRra0tiVXZ6N2ZtRHZjMU1tSGw5TGtPK083Nzd2QXU4bHdwOFRaOCtKc1dSR05xU0hXeUZ1Z2gwNTY1M1phK0F1c0VjSwpPWGlMRHo3VytXY2wwSkc1c1M2SHFxZUFmNXNONmlxcmh0V2daMXVNL0ZwTkRmZ3lOcWdGZHIwWWZHME5tZ3FOcGx3aUw2cVJsSE1WCjVVeHBmcEVvTzBlVnRjc0NoeFd0Yk15SzloQ0Jmc0thY2tOZE9URWU2Z1lYWlVNak9jNUZDWFpseFRhU2cxdW9jTnExSXlmN0FQUGIKL3U5djN2enhseS9NbWZIMGxJQlpFOWZObmZ0ZGluQm9sMlE0U2ZxYmhNcFpNNmRPbXhZd2RYb0ErSDQvZGZxMENaT25CVHcxZWVMVQpDVkFBZUdaTWZDUlRKbUNaT0dIcUpKQ0pJNWt5WVhMQVUxTURwczBBbWZ6VTlNVlRaMmZOVzZVSTJmTFZMdGF0VE9rZ1VUdWNxZXlMClI3cDM4TG9UaFgxcGNEMExpTWZuR0pna1NXL0s0M3VQRXVFQ1dYZUNHUDdHWkdsL21nSTh1VE1lQWIvOFdibWZKTzVJUU5wM0NjQWoKdUg2UUFpY2kza3NVOWU0UTNFbUh4YUhCRk5YMTdaWFB6SjR4Y1dKQVNsb3lPdFI3NXMvdG9md0xTeVRYNW9rdnIxSCtCbnl2V2lXNQpzVlI4elQ4K0NhM2tYVjZHdGRvc1JDNnNGSDZ3Z25kcUdYSm1nZVQ4UXVFSFMwVm5sZ3BQTHhOZVhDRyt2bGg4ZWI3cytCTDlvV1dhClN5OHBQbzAwWGpFZisvVEtuNzc1OVYvLytPVS9mdnZiYjM3LzUyLy84cGZ2dnZycSs3Lys3WWUvZjMzcm0zL2MrZWUzZDcvN3J1UDcKbS9kLytLSHp4MXRkdCsvMDNHM3Y3YmpiZDYrajd3RklYOTlBYjI5M0Q3Z2VIUHh1Q1AxMkVMM1ZpOTd2UmgvMERmclMyVHZnUzFkZgovN2pwN092cDdPdnI3QjI4MzRmZTc0VzUxdy9UMFlQZTdVSGJlNGJiZS92YmUzdnU5dlYyOVBlQmZOdlhld3RGdng4YStPTHViZFBKCmQ2TlUxYUc2bWxnekwxTEg5UmxvQkVBd1krbmpqYjRtWE1jQlpObW9acVVwR1VYS1F2QkRPNkl1bDZoS1FRQjk4T0FBQXNFYmdIalMKMGxFQVluQ0tzMFNsY2VwcWdwYU5Bd2k0eHdlZ2FEVVBBMUJObFlxRkFZajlrd0JxTk1uc09xay9nT1J5bmxURzV3bHJPRWlWV000Uword0VJQk8rR0JnQmlDOHNCZ0NxNHJHSkJSYjZ3aE1vdUlWY3dVeXNNRWJ5OUt4VGVIcUFWMHFQTFpURGdZaFhXNnpPV1B2OUxBVVN3ClFQMkFBQWtCQUlHTHlEcnlEZzBKQnhCbEJFQ0ZmQWdna0FLRWhnT0loT1RrQ2IwQXloRG1iWmRuYnpRUUl6QUFoV0I3N0hFQWpkcDcKN3d1Z0VuZ01jbENDN2JBSWxLU25saWpoV2lrT1pCQ3B1a3lwclZUcnExVzZDb1dtVEtZdGtXaExwR3FHU0ZGVUxhVVQ1WlJOUnRKNgpHem0wdmh5MmU5dXpRMjMwMEFacHFIbFBxUFowc09wNm9QcERBS0QxcWl0QjZnK0NWQmVEVlIrSHFEOEsxVnlNc0ZqRGJRcUNzd3dECkVBVWVBOUpNaldnbTd2QVVLT3VacjFuRTd6bVVIenIzM1hKOTF0LzBQZXI4cHJ2cFprL3pqNzB0bUg3MnRPTUE2dDc3QXp3QlkvK2QKdmdQdG83Ty9ZOXlNdTg0MXVBKzh3NUh1WnY4R1owZ2ZiNjlQZit2RGtnOU9IOStNSDEvVkJ4WitIbzU0eGtvK09IMUFNUG9NV0xCbApMNHcrdzdWL0dLNzlFaTU3ZVUvNyt0MUk3ZWMzc1BVSDBBZDJQZDhZRWwrSHRSOCs3UHVCclQrc0QwYjA0K3Q2UHU2Lzd4MC8rQUxYCkQ0cnBaNlQ4OC9wSTdXZEVQeGlBMEx3OVdBYzBCTkJ3ZHZQakFEUVViMFczMXFGYmpQMWIxRU54bXY1WWRWZU05a0drdGplTTkwRjYKZGJLQnZ0eVRGV05KMzFDZnRxRStnMkROamphbEVZMFVtYjdTcWVYaEFOb0QzRk1ueEFFRTlPTXhDZ0NBUUlCK0d2VmNlRlN5aGxldgpZdHQxdkNhRGR6eTBDMXNJczJtNUZqVzdWbG1sbEpkV3E0dlNqT1JveXpqY0dYdm5jUUFDK29HQnpjNFpTejJKcTkycHE2MHBxODJKCnE4M0phK3VTMXpla3JLMVBXRldmT2lxckc5SkFWdGFsZ1BqdStONjZvalo1alNVZEJIL3JPbHNtQ0x5b1R3NXNTQW0xWitEREZjT3cKcnVjSWNESFM5T09qRHdnODJYNE1jVWJ5Y0txMWZ3Q2tFbXVKMVJxNlhsMXUxZFlBQU1IRDFJejhlbjJWM2N5dlV6RmhUVWhmb1ZlWAo2SFVzaFpKVkEzNzZsMVhXQ0F1ckJOUlNHWkdzeTB5cVQ5enEzQlZwejhaUFk0MXVKa2Mwa3dpTmVWRk41T2hHU3BnN2IyTVRPV2czCkphSXBMODZTTFR4bUhrUjdqeDg5TVdQeWhKbXpwZ1JNRFNnTGlrSFROTU03a09FVTJhY0pGWE5ueko0elpmTGNXVlBuenA3eTdJeW4KWHBnejliblpFNTk3Sm1EdXJNbDRYcGo1Rko3blowd0NlZTZaS1NEUFkzbHU5dVRuWnozMTNNeEp6ODZBVyt1Zm5qMTl6cXpwTDg2ZQo5ZHpNeWRPbUJFeWNIREJ4UmdCNFF2eUNKZTd3NUwvc1pNSlZ0alIxZjZyMFZoSy9KMDBPdE5HZWlMUW5pK0JDV0pvY3NBWXdhTFI3ClJuSXZSUUtQc0VnVzMwbENRUEJ5RHR6RWppMWovZXNaU0lRbllFQjFZVDFBblVsaW9KOTJ1RlRIdTU4S2VkUzNUWFF2V1JFemIvSHMKR2ROZitPWGMyOTkrZFhNQWpkZGNXU1M1OFlybzhoclZyNWFMVDZ3WlV3SHkxWUZla2x4WUpMKzZnSDl4aWVEcWN1SDFwY0lyaThXWAo0TVlyN3RWRm9pdUx4T2VYU0MrdWxOOVlMcnEyUW5CcHZmVDZVdVdGNS9uSCtJZS92SXVpZlNqYTA5Y0x5TlU5Mk4vUmRlLzJ2VHZmCjNmcitIemYvK2ZWMzMvejkyNisvK3VhdmYvNzdYLzd3cHkrKy9NTVh2LzM4czA5Ly9jbUhIOSs0Y3UzcXhjdVhMbHk2ZVBLRGk2ZlAKbmpsNTV1aXhNNGZlUDMzb3ZWT0hqaDU3NytTUmQ0NGNPM3I0NkJGZkRoMDU3TTFqL3ZmdSsrKzgrLzU3Yjc5LzZPMUR4OTQrZE9JdApQRWRPSGp4Kzh1Q0pFMitmUFA3T3FSUHZuVGwxK055NW8rY3ZIcjk0OWZyRmkxZXVYUVlmeGpDS1h2akRiN2VvYXNJMDFkRWFKZ1lnCmI3Q0dJU3lHa2JMUTJPaFpHSUE0VzFWVnVZcVNTcXlmVmFTcHdBSGsrKzcya3dBcTVKV2xTU28ycUprQVFGRWF3UVlWQkZENG93RGEKTHErdVZESWJkRDhOSUUrdGNoU0FWQW91QUpCTUxnQUE0Z205QUpMS0tnR0F3TVZZQUZXeldTV0NLanBTUW1jWEZGU1U1NWFKdDdJZApRWkxYY091TUF0QVQ4Z1FBNVkrYnNIcjZ1QmxMbi84SmdFS3NYZ0FGMmltRWV2SldQVG1iVDh0N0ZFQ0ZBaStBQ2hBS0hTRlJrVndBCm9HeGhUcVlBSkcrWE5HZXpsaGhWajA4amhIOGMrRU9ESDg3cEdSMkNCVTd4QVU0Q0FBSVMybUttVU5YNWJIbXhSRkVHSWxXV3k5V1YKS2sybFdsc0ZBaTZVR29aY3g1Qm9TNlhLRXA2c3NGQkcyYWtsaGRlVENIVVZvWlo4dUFHK2dSZGE2d25SblF6UlhBM1NYQXZTZkFRTQpGS3krR3F5K2hPVnFxUHBhcU9aeXVIay9vY0ZNY05UQUpUQTRHcEdDRFdiTTNkRlV4YXpMMzJ2aGYyelo5MlBEcHc5Y2YzL1EvRS9VCitYMS95KzIrVnBqZTNiZjc5dHpwM1hzYnF3RGR4Z0hrbjM4RlFLUDBBOUlQcklQRnI4MFpML25jeE9Pano4UFpobjcwR1d5RS9jNHcKaitwbndQclhRUXNNb004by9ReVp2eGcyZndIcDg2aCt2Q3RmMGh1NGZ1REVaOEhJbmkvMkJVQ2Z3Wm96WS9VekREZTlRLzM0anozRQo2UU9DMHQvQUFZU1ZmL2JqbTc5Zzh2YjRBSVRwQng2RytnaUFRQUNBRXEzRDhRMFFRSnNOUTV1MGFLd2FqVkFQUjJvZXhHcnZSMG5SCk5meERXZVViNjJncm1vbEJjR1VuTTlLYXVkMllXYWJQcjlVeG0vUUNqMTQ0TG9Cd0ErRUFhdEJMNnRRQ3F4YnFCOXh2TnVCdkZkb04KZkVBb2k1WmoxRERWeW5LUm9vU3VvVzgxam0rZGNXL2lDYkhsK2dNb3lKbUNBMmhWYS9vS3c4NGREanIvaU1sOHVhMzJXcHZ1c2tkNwp4VjEvcGMyWGhxdDdmWG5zbmN0N2JOZjIyYS92ZDl3NDRQcjRkUkJ3UjN2S1dYcFltZHBXRldiSkFUQmFZMHNMY21SRU9MSmk0QkJxCk9DQVJId3lORTRkZ3pTUmdWYUp4RTI3TEdUZkFUSGttaWtSZFpGWlgxdXRxZ0g3Z2JoUUQzMkpnMmMxQ2k0YmZvRVhxdEVLZGdxMVcKc2lYU0dyYWlqQ2t0cTBiS1dJSXlIbEphTGM0dmx1WFExQm5iYTdPM203TzIxV2R2eGc0TUlianpZbHBvNE9zWjIweUxjZVNHdzU3bwp2STExZVcvODZuMFU3VWU0d2trQkFjL01tanhqY3NDK2pUbG9rbm80U1lxbXlqOUxxSmc5YytLc2FaTi84Y0xjWjJmT25Eb3hZT29rCldQU1pGakJ4NnNRcDQyYjZwS2w0Wmt5WThqQUJrNSthTXVtcFNRRXpBZ0xtVEp3d2QrclVGNlkvUFdmbXN6Tm5QVHRqNXVSSkdJYm0Kelo2WnRYak43cWowYjVMNWFLNFpUWlNqOGRMK1hXSlkrOEVzZ2k5RmphV1BOenNSQUplaFpQbEFzcnduVWZJZ1FRU0NkMGIvckhUdgpFUGJFaTJIbEtVa0szc085a1RyUXZTUkJiekxrRlBoVDBCU3RQSGo3dEFEd1ZaaDArc1M3dlNoS3RWeGRJTGkyU0hwdHRmejZFdVRzCldzbjE1ZEliSU1zazEzMUZJSEFOc2tCeGRybnM4bElCM0Y3K2l2VDhLOUlQRmdqT0xXTmRXbzU4c2xqMDRVdkkrZjhTbjMxWmZ1RmwKNmNYNW9ndHdkSkRpd2p6eG9iMi8rbTVvc0xmSjdkaTFJejRwTGk0bUptcjkrclVyVnk1ZnZIamgvUG56NXMxNzZlV1hmL21MWDd3NApkKzd6YzE5ODl2a1hubm4yMldkbXo1NzE5Tk16WjQzODc4V3BNLzVyNmpUd2xYOXV5cFNucDA2Zk9RWDhWNTAxWS9Lc3lWT24rUExVCmxNbmpadExrcDN5Wk5qbGcraFJ2cGsyRG1Rb2VwMCtZT1hueXpDbVRRR1pOZmVycHFWTm5UNXMxWi9xenowNS9ZUTdBN2pOVEZ5MWYKK01YdlB2L2ttNzl0TXZDRFRQd1FEZUNPQUF0c2xQYXZCajBoNFZwZWxJYXpVMVZKa3pOWWlrS2h1bGlvSFEwZ3pFRGpBTWpYQkUzbApseVZKS3FOVlRJS0c2dzhnNEo1b0ZUZGFMU0NvT2R0a1ZaVktkcjJXMjJUNGlSNGdBQ0NYV1E0QVZLOFI0UUJTeTdsS09BMUl3RWVZCi9nQUN3UUdFRHdSNkNDQk9GVU5RbFM4c3plY1VGbFFXa2NzNUNUWDZXRjdqR2pHczkvZ0E5Sk1HK2w4S29GQWJOYklCWHErM3c3YnIKVFlieEFRUlNKSHdJSUt3SWxKc3R5QVVBU2hCbGIxTVRvK3VnZnNBNy9Fa0FoY0dhRXlYU0FzK3ZDTEtSbyt2STJUcDZsYkpZSWkrSAorbEZXS0ZRQVFOVmFiUlVlbmJaTW9XVkk5QXlacGxRc0x5bVgwakxVbEUwbU12eHFXQmpoRFVoWXJUMVVmd2pUejQwZzdkVmc3ZlVRCnpiV1JYQTNWbkEvVm5nM1ZuaVlZRHhMcUxUaUFDRTBrMkFia3lZOXNwb1kzMDZycmlrNWFMRGR0VjRjczMvWTIzZXhvL2hwdC9nNFEKcEcvM3pmNDlQL1Mxd2ZTMDNlcmQyOTY3cjJNc2dMd01naVdpOFhMQTZ4N2dwM0dyUHY2TlByNWVuMUZWbjBjRy9EeWtEK3o0OFI1dApNWEs0S1Y3MXdlZ0Q5VFA0cUg0Z2dMQ1daM3pQMTZENjF3T3FUd1lWL3cweUlMaytpRzM3R3ZLdGZHSEhuV0pkenlkaC9QV0RBY2hmClB5alc5NFBpQU1ySDlJTUJDTmVQUDRDQWZrRFE3SWNBR3NxQStobE9hL1FIVUc5aUxickZoTWJCSGlBMFZvdkdhSVppVkdpRXNqdFMKK1NCY09oREllNTFZdWFtK0FIYm4yRExEN2VsWnhqeEVYOUtvNVFERU5CcUZyU1p4bTFuVVhDdkFBWVRyeHdjZ3A0NVRyNWVDNzlOTwpneERZcU5YQUEya3hDc0h2ZFdLbG9BWTlWNk5qYWxSVmFsbHBwVHcvUmZOWUFJMnRBK0ZOMEk4REVMZ1RiNk9mK1BNSFBXaFh6MkQzCkFEclFpL2Izb0wwRGFNK29ES0s5V1BySFpnRHRHMGI3aCtGMTd4QjJqVCtDOUExMi9kRHo0OVYvZmxwL1pWL2VQaDdCUWx4Wm43N2MKbWhhS0hXaUtKOVFHNmZOL0JxQVlhM2FSa2E1VE1lcFVsV1o5dFUzUGNlbTRrSXg2b1VVUFc2bXNCc1NrRXFoa2JKVVNIcS9HUitDawovMHBaYVlVSXZNUVg4VVFsUEdrSllGQ2hnVUpSWmVkcU11TDF5UnZxVTJMZHhCZ1hPY0thdDhGT2pyQmxSYm56Z3B1eXQ5dnl2N3o5CisrNmUreHVqTmt5ZUhQRDhqTW1MWnovOSthNXFORUh5SUZVOGxDYjcvYzZLbWM5Tm5ERnIrdE96bnAwNE1XQkQzTHd0MjU3ZkVQTmMKWE5TODJOaWxNVEZMb3FNWFIwVXRpb3hjR0I0K24wQjRCU1FvL0NXUTRJaVhRNk5laVloWkdCMjNaTVBtNVhGYlZpVEVMdDYxWVZGTQorQytXTEpuNjlKeUF5Vk1tVEF5WU9USGdoUmVuVFh0aDFvelp6OHlZTm1QeWxFa0IvelY1Y3RTTDgvSldoVjdlVXZTSEZFNW5uaHJOCjBnN0hTK0ZSckx1UW5qVDVhUGVNWkJEYnZRWDBBM3V4TTlWOUdjcmVkRVZmcGdwTlZmNnMzTTlXM3N0U2RHWXFPalBrbldreTJGaU4KZFVQL2tDNGMzaVhxU2hCMnBjcjZVcFVmYkdVOE0yRkN3SlFBanBEVmo2TDgvZjg5bnc4M2lxK1ZmYkJFZEgyMUZBSUkxNCt2L0lNYgphS25vekFyQmxWWDhUMWNoWDh6bmZiUUl1YkdZZDNFMTkvSlN5ZUZGNG1QemtOTXZpeTdNazExOVJYNWxudXpTUFBtRkJmekxyNGlQCkgvcnlGanJZVlZwZUhCRHdGUGh6QVJtblQzdHEydFJKVTZkTUJJOHpaMHg1ZXRhMDJVOVBoNWs1eFpzWlUwSG16SnIrTFBpUDkvU3MKcDJkUHd6SWR3R2ptTTdObnpKa3o1Ym5ubm5ydStXZG5UeDAzenowelk5eUEzd3N6WnhiSTdEa3pzVHdOOHV5YzJYT2VtVG5ubVJuUAp6SjRPZ24wd000SEJ3UFdFMlpObnpYM3VENy83MDdVLy9TMUV3bHRoa0VhWWRDTUFndkd2Qm8xMXowaTRZVG9Jb0FSVlZZbUNJVkFVCklxcGl2aGJURHdZZ3Z5SVFETjRENUE4Z29COFFrcUFpVVZLTkFZZ1B1Qk9uRkFBQUVkUTFvd0JVb1dCQkFPazUvd3FBSEhyWktBREoKNVFLQkVBSklJbU5KWmRWUEFGQU5yNktjWDFuRXE4am5NQXBxaWlsVlZSbFZrdmdxNDJyUjRkV1NJNnVrUjFiSWo0SXNseDFaSVQyeQpYUExZN2ZIL2V3RVVVUStmQmdBRUhqZVpLRm1DOFFGVWpOQ0xoSlI4NFdnQUpTSFoyLzBBQk40aGVEOUJEYVN4SDRrM05xaWYyQVpxCmhJMGFhQ2NUNmtrcEJscVpwbGltcUpBcks0RitsUEJjSVMrQWRMcHFvN1pVcVNzVkcwdGxlaUNra2hwWmZxNkt1c05BQ2JOa2hkZFgKUk5UV0VveHZBdUxnNVo5QTdiVlFQSm9QNGNxWCtpcWdUNmorQ0VpWTRTMUNmUU5zQThLM2c3a0t3cHVLSXoxRml3L3NWRFNJL21RLwoxZXYrdzZEajIwSEgzUWVlbTcxNy90THQvcWE3K1I5OWUvN1oxL1k5RHFDZXRqczllKytPcGM5UEFBaHpEMGp2WG0vSnh4dXN5OGRmClAvNjlQditpZm53QThvMTRIbG4yK2pPZ0Q2NmZ3VHBzNVF2WGorbHpRQjljUHdNaitobVFmOXd2K3dqcXh3ZWdrVTN2YU0zWmgvb1oKR2ZrekFxRDNmYWRlK1BTRFl2cnhBb2p5MmpEMXdDUGxueEVBb1RtUEFWQ2Ewd2Vndm5nVHVzMkViakQxYlRhMWI5ZkRJbENrN1A0bQpjVStVcG9jZzd3cEJib2V4MnNpTUtDdDFoU2R6VzEweTFVZ0dmMDlhdER5UEVYSFVJcTIxa3IyMVloeEFRRGErOVMrUVJqMFhBS2hPCkJ3ZWt1a3lRUjBBLzhKZ3dFNExoQ1hIcGhmVkduc0lBUndRWnBHVWNhVUdXaWpUS040OHprRzhiL0ZnQVlUTitNbGRaVWlxT3FOdlIKem4vODdTOTFVcjFlck5XckRHcWxScXQrSkRxTkZvOUJwL2VQWHFzRGdmYzFXcGxJalBENElyNUFpb2pBTC9mdDNuUDI1S2svLy9YYgpqbnRkNkRENC84Q1B2VDljK1BxNjlxd3oxMTBkV0o4YTFKQVdiRWtQc1dZQTk0VGJzaUxzY0FuTWYwWE1QMlBwZzJlak5hZmNVRkNyCktnTUFNaGlxclVhdVc4ZHJWSE10ZXRYL1I5eDd3RFYxN28vL1lXZXoxTzdXRGxkVjloU3R0dTZGRTltYlFIWWdlKzhCSVdIanJ1M3QKdXQydDNVdXRxM1pidFh0YkI0cnNtWkJ4L3M5ekRrUUU3SzMzZDcrdnY2OTMwME1NSVlUSWVlY3pZVUdWdWR4dW9abDFaVnAxaFVKZApLbFhseThWTXJnU3VGaW5WWkpkS3RqSkYyM2pTWEk0a2p5M1BwSXUzVnFpMzd0QnZYR1hkbUZhL0piNTIwK0xHbk1YV0hha3RtWSswClpNeHYyWksrbDlHSGRKMi84T2Z0RVRPSXBJQ0lRTC9rTys0QzB1QktWN2FuaTkyYmxEODlXaEVSVGdralJaQ0NRdTYrSFhmNkc0SEwKcXhnWTRnME55SVlIdVJNWUd1QUFQUDA4ZHgvWDJ3dEIrbmhJZnlVeXlFZUdCSWhUaERqZ3RvZWVpOHcvempMZmVTbGJ6SWw3WkJHSgpTTVFIQmZvSCsvdFJDSGh3WGlaVDhDR0V3RUJDQUlHQVM1dytRL0Z3MnJHbHhjQkNZQlBaZXZYd1NzblFldW1VL0xWRmVtWTU0MlJ5Ci92SGt2Sk5waGNmVENvK21GUUErZk9UV0FKOTdJaVgvMCtTQzd4NnB1THhXMkxjSnpsZnNYeXY5YTZzSVdTVVpYaWZ0MkNEdFRWZjkKdFVFMksySWFMZ0MzZE4wS3R4ZXhmL0RMQTVKUEgxWjlGcTE5YjdieXpCekZpZnNseDJhS2o5NHJQSEtQNERBR05pSDZRZlhwZTZSSAo3bGU4TzFmOTRVelJldzhwVDl3TmpFZDk2SDdGWnc5S1A1c3QrWFNPK09SRGdzTVBpRDk2UUhIa1B1V1JCeVJuN2xVY2Z1R3JOc1RqCllBcTRPUCtnMnlna1VtUmdCSlVFaUF3bEE4QkJPSVVJZ05kUThSZ1JGTUlZUkFBNW5BaGtKVFFNM0lBNGd4SThneG93allvTEQ4V2gKMWpJVlFHaHVKRHdjQnBiQ0l5Z1I0ZVNJQ0NJZ01vd3dMUlRlWVNRd29yQ0lNUEFubkJ3V1RnaUxDUEV4TFl5Q0IvOUZ6UGoxelBsVAozMTVjb2pWSFY5c1M5YlpGWnRraWkyUk1nRVRBYjVLTk1NTTF5WHQ4aURBQldxOWpscXZMWktvU3ViWk1hQ2dmTDBCamRkRFhCUWdyCmdrWmJ3RXFCL2JDRXBaa2l4bG9sQjNaN1FRR1MzRVNBdVAvWEFpU1VzOGNFcUp3cFpKUUoyRVZWRlFXVlpUa2N4ZzZtYUN0ZDZ4T2cKdWFwL0trQ0ZVeEpyTFpoOEpTcEF4VGRoWWxYUTN4UUdKZFhmdUJ4akhBc2I0U2N1c2hXazFCWEdOc0crS3BnT3MrZHRVQlZteUFvTApCRVZsL09JU1VYR2hCTllBbFFselNzVkY0NEpBY0NKaXBqZ1RrQzdkdmthVHVhd2FEdmlKaFVFZE9KOFEzTS9vb01KSkxHeUJHVGNnClRNbG8xZ3djcjdRV2JERVVDTFZNcFpvQk5FaGhZS2tON0dvOXU5ckEwZGF3elNhR3djelFHaGxxZllWU1h5NDBsSlhxQ3JlcnMxSnMKL0ppRytnVzJOMkI2UzNzMDN2aFJ2T2xRa3Y3alJZYjNGaG5mWG1SNk9kWDhaR3AxYTBxTk5hWFdrR0pUcFRVb0V1M0M1RHIyb25wNgpZbE5wMHA2aTVQMDU4L2R0V2xrdi9xajFEYVR1dHhIYlgxMjdMaUc3TGlKTkY3eDcycHlQdDJPZ2M0Q3VBZEFnVU1mTjhGbk9CRWFlCmJQZUJCWk5HZVh3MDFRVkRUZnRHcFdkOHpnc3dzbnZNZThhS25TZFhPdnU4QnczNUFPOFpiWFIzMS83a1JqZDgrU3Arc0NWZmlPV00KMTNnYTBYL3QxWHpwVlgrR0tEL0ZPdDRSOFhGczVBL2M5b1ZXUFdQTDNySE1GN2J1MUpmNVFtZ0hiK2g0SDZ0NmhxVS9hTjJQSi9jWgpEenIyRU9ESmZoS0ExVDU3TTMyMXo3RDZ4MmMveU5ZV1pITXpCTllBMVNNYjZwQTFkY2hLRy9JWWJBUkRIakVoUzR5dXhYcG5tZzVKCjFDSXg2dlkwOVZDeXFqOVJVRjFlRnQyU3Rid3hzNnFXM21Lb2V0b2dQbUFVUFdFUzcyb1F0N2FJbjZxdTJtZVZZK3l0a2UydWxtTGwKUG9CR2s2VFJJTjVkTFh1OFZyVy9SZzYwYVE4NlZXeW5TUVJvTVFvYmpZSmFRNlZCQjM1SFZJamtwUnZNMjlNYU1tSmJnZnJzV0dUUApUS21IUy9SU1lVMGJiR3hNaElNWXN1RHVpMFk0b1NlNmVSdTI4Z0lWSUVoTXc1Yll4cTJBdVEwcnBRY2JYQWp5d2F1dkIrSndPSDlZCnZSdnNCLzRmQlBEREJRS3dZNHhBWE9DVUJPRUNwdVRPTUdwSzFNTGkzUHo5dS9iOSt2TnZYZ1J4STU0aDErRDc1eityZm45UDFpN20KRXR1MjZOcDFzMnRYTDJqYUhMOHZMN2xoeCtMV1hMaTN0UjdPZTR4dnlFNnN6NGI3QVZ1em8yQXovSTdrZXVoSmNmdXlvMXEySmRWdApaZWdLUlVaYWpZWGJxT2MxS2JsN0xUS2J1cXBHSjZ3MmxOdHJ1TFVXcnNYRXRWWUxOR3EyVnMyVEsxZzhKVXlCY1JVVkhIazVBQnhnCjEvQmxXUndGM0hpVGE4emFiTTFhVlorMXREa3JyVFZyeWE3c1pidnowdXAyckxUbkMxODB0eU1EcjN6d3VsOEFMcFFZZ2d2QnFlY3MKQXZiVHYwR0NyRmNNYlpDZFc4MEVwemZ3SnA1SUpOOGVFZmpEZDJYSXNORGJXd1czVnZWVjNoS2UvbEc4QTFYUWg0YUZHRjkvd2EweApMVjZTRWhaR0FEb1JHT0FYVEtRRWgxQnhoR2xrSEI0WFFneTRnMEJZSG42bkxXYmxtZlZzWjQ0QjJhTHhwcXNjYXlUT2xTSmtyZHk3ClRqNjRSdFN6WHVUWnJsbDI3d0ljRlVjSzlpZVRBOG1oZ1dGQmtmZ1FNc3owVEFuQm40VDNBeEJEL0ltRVFBbzVoRVFNQmdTVC9jRXoKUVFyQXBUencwRkM2eHJGTzBaOHU3ZDBnQkpjZEs2dmM2K1R0NjhSd3d0QkdkY1pkYzhDWHUvOXUvUG51bm5mL1FPYXlYcHNsTzMyWAo2Q3RnUW5Oa3g5YlhuYVEvKzYzMW8vTjdqNTl2UHZ5Nzh2VWZzM2QrdFZoMzdIYnh4M2RLajZINzJEK2VwVG9KVjhkTERqMG8vdWgrCkdSd1lQVXR5ZEk0WWNQeEI4YkdaMG1QM1NrL01sSDBZSVQzKzcyODZ3RXVhVmluMncrRWlLQ0hUdzRpNGdIdURDVGp3Q2cvQWtYRGcKVlIzc2o3N0V3UU1uVElrL2JocDRWWk53UkR3T1I4WVR5S1M3cGswUERRLzFENTgrTFpSS0JoNURKZU9tM2U1SElkNUZ3ZnNUd0w4Ygp2eENBbjMrSWZ3QWVnQnZEejQ4d0pjRitJZUFmR25oQS9vSGhRYmdaOEo4WmVCcEQ1NFpUQ1pSUWF1VDBzSysvK2VMVFh5L05rbit3ClFQVlJsT2J3UXNOelVmcG5vZ3hQUnNPWmlxMXducERKbG1pMnBoaTFLU1pOaWttUllwYWlWVUZ3T0JEY09HWXVUekJVTGxVTDhwUVYKNEMwVFhQV2xZMGwwNVVvdHpHeU1oWDhZbVBvQXBGb1dOZ1JJTURZSm1pMHFZUW1MZHdpNHk5WHNSQk16eGNCZG9wV2s2bFR4Um5XYwpVWjJrVThYcHpQRWEyMEwxbm9XcUExazZpOVhNMlZuTEFiK3lKZ3ZRZ1RyTmZoc0VDQkJzQkxPbzYvVlFnQ3dxb1ZrajBhdEZLcFZJCkp1ZUxwUnlaZ3F0U2M5VlFnRGdLSlNwQUNqZ1VVU3hsQ3FVTXZyaUNLMlN5QlBSeWZqbU5UeStwWXVaem1Ma01kc0hJN2ZzQUFJQUEKU1VSQlZDNmR1NEs3TTBuMHIxbXExMmFxMzVvamYzMis5T1Y1OHRjZVZMODlXLzNVUTVxWFo2bmZtNlA4YUo3OC9YbnlOK1lvWHB5dApldkdXQmVqbW9GT0NKam5RelV4b3N2cGdSTU5jVlVHeUhRcFFTaDJNQXkydWhSR2dkQ1VVb0h4K1lURy9xRVJVZ25XQmxZcHlKd3RRCkZ1cEFRSURXcVZFQnNvOFhvSUxKNm9NQlRBdElUeW82UHhwTG1TMnpGV3cwRlZTQzE0ZUtydFd3VkhxV0JnaVFsbFZqNE9pcjJUVW0KcHRuTTFKdVlXZ05kWTZCTERUUzZyamhiazdQRTFKeFErMEowemVFRS9jY3B1cmNTTE0vRzF6eVpaSDVpa2JVeDFWcVhXbHVUYWpPbQoySlFwZG5GS25TQ2xucmVrV3BEUUxJcHI0QzYyVmFUdHFVamNYYnlvTGlkbFovR3pMYzljYmo2RjJIOGZiampmcy9lU2M4K0Y0ZFkvCk94Ky83TmgvRlhhQmpSTWd6SUZ1eGczUm5TYzZmSi9pZXFJZFkrVEExUnY0eC9iajJua1JUampFdXIzR0tuNG1GRHRqWTM0dys4SFUKWjdUYkMyMzQ4dmlXZkJtaC9ZeE9POVI4NWxGOWluVzh1NlhYN2NkYmRjakRHOXYwem5uUFp6KytmUmRJMmV0dzN6dHFQNmdBalpiKwp1QXVlZHhlT0ZqNzdTbjl1dEo4cEJHaTArZ2NUb1BRbTc4WkdhRCtBMWZaUkFWcGFQVjZBQnBab1J4STBQU25xemtYSy9rVFJaNnZvCnlzcWk5WTJGS2l1N3ljVGZaeGJ0cm9GUm4zL0JYd3JpZmJWQ0lEZVkvUUNBNWZnY2FMSUFvUU9qSmJ2TVlrQ3JTZFJrRXRwTmZJdWUKcTlJd3BFcGF1amtqclNFemFtY21jQ0E0R1FpZGQ1VUVMekgxeVlxcHoxaFl2M1ZCdzJaSTArYTR1bzN4OWVtSmpac1QwTW5MMkl6bQoySmJ0Y3hwWGk5OXM3RU84enovMVZJQS9qaHdHaXlFaVNBRmtxcDhQU3FqL2RhaTRXNEpFREFMUzVPY0hMZW51dTJaczNMQ21wYm54CjY2Ky83aDF3RGlNSThJbUR2eCtWdm0wcitMZHMxZTZLT2FvTmMrczJ6cS9mbE5BQ0xTZXBjZnZpWFhBQlJYVDk1clM2TE9CREthMTUKcVUwNUNZMVpDeHN6NG1xMnJxM041ZWxMVk5WTVd6V3Z5VkM1MnlTdVYvRWF6UEtQM25ueDBxL25PeSsyZGJaZHZmVEhIMTN0YlIxWApMMTY2K01lVkszOWU3dmp6MHJVL0FCZmJmd2RneCtES0srMXRsNisxWGJyVzlsZG4yeDlkYmIvMnRQM2MyL1pqWDl2RjdtdS9kMTYrCk1ORCtWLy9WYTQ1ZWNGclZxZzNCdUNBb1FFUy9odmcxbnMzcXZ2Vmk3enJaOEViNXQydFlFVENYZ1NjUVNENEI4dlJVdW1DQWgzZEwKalBSd25OMXNBRGdBbjQ0Qmp4ME1CSkU2QnJXZm5tQm9GV21ybHQxOS81M3dKRTBGWi9yZ1lIQnVEc0FIQmdZSGhBWUZ6eUtHcnB3NQpaMWZLNXNNcnk2NXNsWXhzVjdxMnF2bzNxdnJXYWgzcnJjZ0c5Ylk3b2dQSndPU0NnMGk0NERDNDA0TktEWVNqSGFjaUxBeFBwUVpEClFna1VLcDVNQ1NGUjhHUXFnUlFlRWtvT291QURrMlkrTUxoSk03eFczcmRSQWdUbzJnWWhzbDQxc0U3U3RrN2tXQ01iM202UXpsbUUKSStEQ2c0Sk9uVHIzV3c4aTNuZUt1ZWVVNHFWenozeDE5Vmlic3c5QndPdkI2WFFPOW5RTUQzUjd2TWdnZ2x4MklDOS9PU2g2L0pzTgpscU94eW85djQ3MTdoK2p3UTdwUEh0SWVmMGo5MFgyeTkrNFJmd0NYVk1nK3ZsdHk2RzdwaC9jcVA1cWplUDkyOGVFWHY3cUFJQ01jCnZpZ2tFQmRPeG9jRUI2WXR2a2VsalZiTEV1V0N4U0p4bkVnYUs1UThMT1FsUzhTSlV5S1Fwb2pGVVVyeElyVThiZDI2aHdJQ0FzQTMKSGg1R3dsT0E5Z1ZGVWtuVHc2a1IwMElJSVJHYk5zOVZTWmVKQkl1RVk0aUVhVUxSR09PdUg0OWNzQVRjckZJVVg4VlBGVlU5cWxTawo3Y2lhUXlDR1lnSVVIa245OHV2UHhndlFmTTJoaFpvUEYycmVqZGErSGFON1BVNzNjcnp1K1hqZHY1UDBlNUlNdTVJTXJVbkd4bVJqClhiTFJtbXl5Skp0TVNXWlZ2RUgvaUVhUnIyUUtWQ1Z3M0xPT0lkTkIrNWxTZ05BeUlBWVdBZUpqdThCRUpVeEJVYmFnY29WS25HalUKSk9uTWk5UzFTWnE2T0UxanZMbzFYdmxFdE9xWldPVnpEeXRlbjY5NFBVdmRhalZLZDlhSS82TUE3YXFCRVNBZ1FGYXRwRm90TXFuRgpRSURVYWpFUUlKR0VMWlZ6cGhRZ2lZeUZDUkJQeFBJSlVIRWxBd2hRSHBNRkJHZ2R5NWJHM3pOUDhkSURLblFPa1B6Z1hNWEJoOVJ2ClBxaDhaNDdxOVllVkw4OVJ2ZnFBNm8wSGxBY1h5RjlNbEQ3OVB4UWdYNXZZaE96WVRSM29abUM3dzRDc0FPOVpiY3BiWjh4YnA4L2QKck1qUGtCVGtDUXFMQkVYRnd1SWljVEVzQUxxNUFHMldacXhYWlQ1cWhnSVUzNGdLVUIyOHo4bGZEZ05iWkpGcWc4ZlJqZkREUmZiQwpsVFZGRlJxYVdGMmhVOE1VbUY3SHRtcFlWajNIVk0yeG1WaFdNOHRrWWhtTnNMRldaWUNOT1VXYS9OWGF4OU1zTHlUVXZKNXNlaUhWCnZEUFJab3l2VTZYV3FsTHFPV093SVExTWpEUWJPN1ZGbEZUTGpxK2pQZEpTQ3Z2SVdsalcrcWFSaG0rUStoK1Irai82ZHA3djIvZVgKWS9kZmczc3VkanpaamdtUXo0SEdhOUNVVFBDZTY5ZmY2RDNPeDJGcEVXUmYydzNxTStZOUU5UUhTM2hoazUwbnhINWNEYjhEeGlZYwozbUEvTHV1UDdocTAySG04L2ZpV2ZHbS9kS3MveFVxZTBVV254OXhvenhjc2VVWWJ2dHhjT08xd2JOWFhqZlpEUTllZCtnUm9yUEFaCm5YazRXdmZqc3g5TWdMREpoMWpwenpqN1FaTmZQZ0hhY29NQWVkZmJieVpBM1k5cSsxTlVBMG5xcTR2Vlhja3lWMVRWNmRVc2xZUmwKcithM1d0RVNueHJ4emdiNWs3WHlaeXl5QTNZRmtCdUFUNEQyVEJBZ3MvUnhxeEpLVWpXY0ZRU0RRTlV3RWJZYnJRUnFNQWxxOUR5ZApscVZVMC9QMDJTdnNXWEV0bVhFdE1OdUZMbnZQU3JKbnhkWmxBR0xzMjZQcnQ4WTBiSWxwMkJ6ZHRBVVFoeTQ2SFdNcklLcDVDeUM2CmRwM2lyZVpPcjZPMXBRbThKUTBGditORGdpUHc0TkRmSHdlTUtDREFMM0E4ZnJmNEI3d2J4b2VRUThFZktqRTRHQWFSZ2dOdzRPMzMKZ3cvTW9kRXFEbjk4YU1EVlA0dzR1cENCTXgyL3ZQclZJZmFMaWpVTkJUR1d6UXNidHozY3NuVis0NmJZeGkzSmpkc1NiUm54YUM0dgoxWjZkMWxLUTFGeXd1RHA3cTdsUW9pL1RHUmwyRTR3QTdhOVYxR2tGN3g1ODF1dnQ2N2pTOXVXbnAzNDRkL2E3TTk5OCtjV3ByNy82CjdQVFhud1BPZkhrVzhNMFhaM3hnMTN4eDl2TXZ6MEMrUHZQNTZXOCsvK2IwNTJkUnZqL3o5VmVmbi96eXExTmZuLzc4M05sdlRodysKdG5uNVJ1QjE0RlJJcEFTL3RxSUEyYUlGQWpTeVZqS3lVWUVKRUlVY2NsMkFoZ1NZQUhsNmJnMmY4ZmpBZkFqcGs0Sy9IZW1sZTRkWgpDS0pBbkpidnY2bDhadi9hYlJzVGI3OHRBQmVBQzZMNEIxT0NDY1RBTUVKQVJJaWZYekFPUE5TRXlEdUZjOUkrWGxZNnVGbUJiRlo2CjE0dVFqYktDR1ZHaElVSFRLYmNEdGNHSCtVVUVoeEVEU0VRODRXYmdnOEg1SGs4aUVNRjNGeEpDd09QaEFTV1NFRTROb1JLQ291KzYKdTJjakhBbmRzMTdVdjFIVXZsNkFyRlcwcitZUGJkUDJMaGU2ZDVpZmo5dEt3Z2NFNG5ETkxUWW5ndlFpVUhHQVVBNE1kUHo1ODlldgpISHhkTEpZdVMzdDA0ZXlvbUhteDY5WnNOTlZVSHoxMTNJdU1EQ0h1ZGhmeTRTOTlvdWRPTDlFZHZsLzQ4UjJpeisvUWZIYTMrdFJNCjFmRUhsUi9QVXNLQnkvY3FQcjVEZm1TdTlOMDdSUisrL3VWNXhEM0k1WEpEL0hIaEZMSi9RSWhXbVlpNFZJaFQ3ZTNYZ0FPM1M0a2cKS21TNDJ1T1FUNG5UcTNLN3hjNEJ0Y2R0YnQyek1TQUlCL3Z5S0tTd1NHSjRlRWc0bVJBTzNpYkE1NEw2N0F0NUhxVGE3UkFBWE9EUwpLUVNNakl6aWNvaW14Tk9yY3c4Wm5VNk53NkYyRFdrUnhQekdtNlV3OTBVbEFRRUNIdlRaRjUrYyt1WGliTVdIQzlXSG9qUWZMMUIvCmp2SnBsUHBVdFBwNHRQcG9yQVp3SkY3N1hyejJuWGp0Vy9HNmd3bTZWeEowTHlYb253ZkVteDZQMCs5N1ZGdFRwT0dKdENVU1hibFUKejFUcW1CTUVDT0FUSUtrS3BzQkd5NENrcGFNQ0pKSXVWOVhFNlo2STFiNFFyMzQrUnZYdmFNWExpWktEMGZJUEg1WWZXU2cvUEVmKwo4WHo1b1N6Vlhxc0JManE4bVFBOWJ0ZE9LVUJHbFFnSWtFWWprU3NFUUlBa01qWVFJSTJhUGFVQUNTVDBTakdiTFdSTUVLQThCbThyClhiV0NWeDhqZVhxVzhnMGdQZWg0NkRkbXE5NjRYL1h4UE1XYlFIcG1LVjYrVi9YbUxOVnJxYkw5RzhYVi8zc0JtdVJBZnhjSG1nelEKam9TR3dwaEdLQ3ZBZnJacDhqS1Z1Um1xM0F4Wi9nNUpYcTZ3QUFhQmhEQUxocFVCWVFKVUpNbWRJRUJiSlJrYmxWbVBtWEpTVVFHSwphNEIzL2pjQ0JMNG9FQ0RzQmtDQVlwb0trK29MbDlnSzg3VWxmSFU1RUNDRG5tUFFzV3ZVekZvdHU5ck1xVE5DQVRLYjJVQ0FUQVltCitPVXIxTkVxTklXYmRhcEhxL1hKTmt1eVZadGlFeVhVc3hQcldXbTEzT1I2QnFTT2hRb1EwQ0FlcEs0cW9aVzV4TVpKdFhGVEd4bngKallWem1rc3FXdXdYNms0aTF0ODlkYi8xdC80eHNQZlB3ZDEvRExmK09iS3J6Yk8vMDdIM0N1UkdCL29iZkRVOUFGLzZET0NMOUl3UAorUUJHZ09pTWNhUDNYSER0L0d1VTF2T2pvTjR6WG4xZ24xZmRiNENwQWovQWZuNkFZMzVndmZOM0U3cTkwQldubjJJbHoraThuK01lCjBWRnMwZWxrKzhFS255ZkVmbURSVCtrcjNpSlk5NFBaRDdyejZ6bFAvdlhZankvODR4dDc2Qk1nQkJVZ3ovWTkzbTNqK3IrdTU3OGEKb2Yyc3MzdFgyYndyYXBGSGF5WUlrSE94dW5zeEVDQmxiN0w2U3BwaU1FYlNseUQ4YXAzd2FZVmdMNHowU1BhWlJVME5zbDMxeW1mTQp5dWVzbWxHNXFiNHVRSmdETlp1a3paTUVhRyt0ZERSUWhBcFFrMGxvTTFZWjlSeXRoc2xURm13MTVTeXlaeWJWUTREOVlBSVUxN0E5CnRuNWJiUDBXU01ObVFGempscmpHVGZQMmJKbTdjOVBEemVrTDZ0Tmo3ZW1KOXMyTDdWdVgxbVdzMFcrdU83aG5FQmxwcnJjRjRIQmgKMUhEd2JuN2V6RkFtSTU3RlRHQ3pFZ0hnQUFNY001a0p0OFRxMWJQdXVCMU5wQUc3SXBFanFSR1JvV0ZVSWppUndyQVFPZEJ2Y1V4TQpuZDc0eDNmZkl4NEVBYWM3cE8vWGdWOTNuM28yNzJsSldsUGhRdXUyK0xxTXBIcTRjeU8yTlRPaGFVZUtmWHR5UTFaU2M4N3krb0tzCjJoS3ptV3MxOFpvc1ZjMUdYcU91cWtZaitQN2JUNzJJSTJQYjlwQ2dZSERTRGd1bEVBa2hzTUlVTFhvTkpRZGhoRkdDQWRjL0pJU0YKRWlIZ0hFZkJhbFpIaWFTR1RvTVJEd3FCUUEyWk5qMlVHT0lQSkRHY0VESTlqUHpGWmg2eVNUMndYank4VHVMWnFEeTNtb2tKRUpBRApJRUEvZms4REF1VHU1djBYQXVUcHIzVDM4UURnYzMwSFFJUGNWNnU4SFpWSUQ4L2R3eHpxS0hmMXM1RVJFU3dZUW1RL2YwL2YwN3gyCjY1cFo5MFNRUTNBNElMSFRpQVF5TlNBb05CQUdpTWc0WUNycjc1eTVKM2JOMlZXTXpuSmoxbjB4SkJ3dU5DZ3NjaHA1N3NOQnMrNEkKbVA4Z2VjNU02cFRNdm9jNjU5N1EyZmVGenAwWk9lZStpTmt6QWRObTNrbWxodU9wcEVBeUlYRHVqQm1kNitGQ2pPNTF3b0YwY2Q5Rwp5WlhsWExnYWRwVmtjTFVVU2RkL3ZKeEdKQVg1aHdRVWw1Y2MrL1NUZjcvMFltVmw1YWExRzZNZmVuaG0rTzE0ZjNJQVhKaUJJeEZ3CmhCRDQyZ0QySFI0NjdkSGx5M2J0YnJwMjVROEVjUXdqeUUrRHlONVAvMlErZFh5TzVQRDlva1AzaW83ZEsvc1VjSS9rNUV6cHNkbnkKNC9lS1BwZ2hQbmJ3OUZYRTYrRHhxb0FBZ1ZjZERoY2k0Y1FnSTJwdmQ2V3puVFBTeCtwdHB3MTAwSVl2QzRjN21WUFMzYzRjN21ZTwpYR1VoWHRuVHoyMEM0aFl4TFpJQ0RJaUNEdzBObWg1QkNxZE9KMVBDQS8xRFhueHR5NUNyZE9BcUI2Ti9qTDUybEN2c0tlbS9WTkp6CnFhTHpjbG5QVlZyMzFXS25nLzM2bTNuZ0RVWmtLQ3lFcG9TU1AvbjA1S2xmTHM5UkhzSUVhTDcyT0dDQjVqaWNwanZLMFJqTjBSanQKS1pTVE1icmpzWERNeXVGWTNVY1F3NkZZL2NHVm11WlNUYVZZVnd5WEdlaVphdTExQVVJZENJSXR3Y0FxZ1RBSGdsa3dXUmxIVkFRRQpLRXVzZlZTNU4xcjczbnpOeWZuYW8zTjFIeTVRSFk2VG5IeFlkV1MyNnRnQzFaRTVpcU1QS3o3SVVyZldHdmw3YW5oL0kwQ0FDUUpVCm94SC9Sd0dDRG9RS2tFakdCQUpVSmVGZ0FsUldWVkZjVlFFRUtKL0Z6bWR4Y3lvcU43SzFpNFY3SHBhLzlvRHlQUURjaWFGOGJhWUsKSHN5VnZqbEgrdTVjK1J0SjhpZTJ5TFhsc25KY3JEWHZKdHlhQUNYVUZ2aEl0Qlg2dUxGUTJyY1p0R2h5bWd3akRSVWdvQ0JKZFZDQQpzbFI1QmRKY1FMWWtOMHVjbHkwYURRS1ZDb3RMZ1FCaHdINzRHd1FJa0NIT1RBY0NaTWhPclVWM3RUYkNNdTFrZTlGazlmRUJ2bUpLCkhmU2UyQ1pvWU1DWndEVmJERVVzVFpsV3d3TG5HNU1XQ3BCTnc3WUNBZEl6clVCOTBBaVFDWjJ1SnRXVmM5WEZtWnF5bGVieVpEc1QKcFR5K3ZqeWhqcmtZQ0pDOTBnZndIaC9ScmVXcE5lV0xHcm1MRzlnUE50TzJObXUrTmI3cnF2OWx5UDVYVDlPZmZidi9kT3orYzZqbAp0OEdXODNBT1VHdmJxQUR0dlRLOGIxU0RKa3ZQZUs2SGRoNEh0Mi96TVY1NnhvTjVENUNlR3dwOVlOUm5DdThaYVVLbkdqYjk1bXE4CjN1Y0Z2QWVxRDFybURNQVNYbGpnQjFNZnhBenRCekdkOVJyUFlQdE5nZjBneXRHMEYxQWZSQUl6WDJqc0IxMXpjZU84SHk4VEFLY2QKanBYK29GWFBOL1o4WWVxRDVJOW12ckNxNTlIQzUzRkRuOUhNRjJTYy9lenhiTjA1V2dBRXk1L0hKZ0RCTWRCMjcxcmJ6UVFJU1ZFQgpBZXBQVVkwa2FEcFRWQmRURlIzeGt2NW95WW1jeXFlMXlsMTFxZ01XQ1Z4OFlWYytaUUdvSDdkQSt4bDFJTXVvQU1GQ2FWU0FkcGtrCisyc1VCNnBobEFqYkYrWVRJQ3dSQnZ2aGRWeTlscVZRbE9ibzg1ZlVaQ1hhTWhQc21RdnF0czJ2M3haZHR6MnFhV3RVNDVhRkRadWoKNnpkSDFXMktya3ZIV05nRVpTaWxic3RqdGRzMzFXVG0xdVRTcklWc2E1bEFYL3I4cTA4aW5wRW1xd1djTmNPSTFEQkN3SXFsOHhDUAovQWJjTWd5UFIzSkxqSGo0UC8xQVA3QjN5NmExODhBOUIrTDg4Y0VFNENYVGlQZ1pST0wwWUJJVkZ4eUM4eWNHaHl4NWJMSEtvdjdtCjdHbTN4NEVnSTA1azhQVEZjdzBmL2F2b0dVMkNKVGUrZXVNQ3k3cll4cTJwZTNJV3RHNmIwNUMrM0paUllzbzFLQmsySGFmUnhOdFYKTGFqVFZlNnMwdzBPZHJaM1g1czdaeFk0Z3dJWG9WS0RLUlEvQ2drWEVveUxqTUNSU0FFQVdQVXlCbmJOOUJBY1lGb0lMcHdBbmdRYwpsWWdEbndLNExSZzNBNCtMd0lQektJNUl3aEZJT0R3cGtCaEtDTU1IUHhBUjhlZFdxWHVEQWdqUXdFWXBzbEYxWmlVZENCQ1pGQXdFCjZJN0lJRXlBWEYwd2xqUFJiLzRCN202T3E0c05MbjJBRDVHaFNsY1hhN2lENit6aU83dUZJejFDWncvUDBjTnk5YkpnVE1qTFJ4REYKano5VjFkaldKaSsrTzRRY0ZPd1hndmNQcGhJSm9SR2tZR29BRG0zR3ZpMk11UFgyMlE5SDNqVXRIRS93eCszWS90RFZ5NnJlcThyego1M2x0RjIvQ2VWNzdSVDY0dlBRWDcrTDV5c3NYK0JmT1Y1Nzlwamg4R2dtV0J4R0RIcGdXZVcwOWJLUUhBalMwVWR5MVFkU3hXZHEzClh0SzFXdVJhTGtFeWFxb1Qxd0tEcEpBanlHUnFSRVFFcklEeEEwOXBVQWcrSURnNE1CeVBRMnVOZ1crU3BvV1NiNHVnVGdzTEFUK0YKSUg5WXVIUFAzWGZ1MkxIOTJYOC9jL1ZxRzRLNHdDdmtpMHRJM2R1L3JySEFlcUM3cEo4QVpvcVB6Sk1ldWtkeE1sUjA2dGt2cjNsYwpianBIRU96dkYwRU54ZmtGeWJqTFBFUEdvZmJLb1N0YzhJd05kUENHT3RtdWE4ckJkdUdVOUxkSlhCMlNnUXM4enhELzFWZXppSVRBCjhMRGJ5V1J5V09nMDhKcVpGaEVNanFtaDRmZ2c2bHR2RlF3TjB2b3ZDL3ZhUnVrZFI5OWxNVWJ2SmRGNEhOY1k0S3QwWHViM3RvdTYKMjVnOWZheFgzeXdrVWlLZ0FNRllFL0hFSjhjLytmblNYTlZoWUQ4QXVFaGdIRkg2dzRBWUhiaisxRUw5eVNnZDRIaVUvbGlNRHZBeApJRnIzVllMMm96WHFuUlVhbmtRSEE2VkFnTUFiSnhVYUJKb2dRQUQ1MkVob2dGaEJnMWt3U1FsYldMaERyRnV1T0JDalByeEE4OVZzCjNhY1BHSS9PMGgyTFZuejJzUGJEMmRvajh6UWZ6VklkbXF0OGI0ZW0xV29VN3FtcHZKa0FIYWpUalJlZ0JvTzhWZ2RIQWYxREFRSUEKQVlKWk1Da2JMc1RnbDVYeGFWQ0F1SFFnUUFWc1huRTVySVpleGJQSGk1NmRwWGhucHVxREI1VnZ6Wk8vOXBEOHpZZmtiODlXdkxWUQo5dElTNmQ2dEVtMkZsQzZVNWY0UEJlZ0dFbTNGR0JNeVl0Y2RhSndraldjUjJsQVdnd3JROHVxOExkcThmSGxlcVNTdlFKS1RBeDBJCkxzUW93a3FoQlhBbnhzMEVLRk9jdVVtUnRVS2ZtMmIxQ1ZBUktrQlRrMlNISk5jVkF4SWFpdVByaTlDWnpvV3JMSVZsdWxLVmhtblEKc1FFV0RZd0FBUUd5RzVnMUpxYkJ6TktibUdZakN6aVFTa2V2VXBjVUtDclc2U3RTYXVoSk5rYVNuUmxiejB5b1kwRUJxZ093VVZobwo4b3VPa2R4VWtWeFBlNlN1NHFGbStoS2I1RVBEaTBqMWR3TzJYL29iTHdMcGNiYis3a0R0cDM5ZjIrRGV0djdXUDRiM3RBRW1PdEROCm1hdzRqcjJYQWI0azEvaVFEd1JWSHdCVzRuTTkyOVY2ZnFUbFR3RG1QVkI5c0pEUHVCWjNUSDFjdHA4QVh0amlmb1A2QUZ6b2dndUkKOFF5aWgxT2VNZnZ4cUQ3M2ppNzVPdTRWMzFEeUROUm5zdjBnUUlBbXpmc1p0UjgwOElNVS90dG5QejcxOGRuUCtNSm5KR08vci9NTAoyTTkxQVlMMmd6YkFqNFovNm9IOWVOYlVBZ0h5TExkT0ZpQlhxcVovc2JwL2tXb2tVZVZJVUxZbkt5NG15NjdFU3kra3NOOHRsK3l0CjBSeXdxNTZ0bGo5WG8zaWlSdEZTTFFVQzVITWdJRUErQndJQzFLUVg3VEtLRDFSREFRS01iY3dZcXhheVNJQUFOUmo0VmozUHJHR3IKTkl3Q1EvRmpsaHpnUUl1dFdRbTEyK1BzMjJHZXlMNDV3Ylk1MmJZbHhiWWx6YloxaVMxamFWM21NbnZtdHVxY3JKcThrdXBDWGsyWgpxcHBaYlliUzBHcXNiTlJWdmZ2aU00akxZVFZwZ0FCUmc0aEJmcmdWeTJjaGd6eWtuK1B0WTN2QW1iV1BqUUdPM1gzc1d3TGV5U0FUClFmZ2pJK0xQdnl3Mm1aWXVXM0l2bGVnWGdNUGhBLzNJd2NSSThyVGJJbTRuZ3pmK2ZyQkNGWnhVMWl4ZjNXU3hYL3IrRjhUdGNTT3UKSHNUNVJmc3Z1MDg4U1h0S21tckppS3JkT204bkRBanRxTXRYNkFwdDJzcldha21McVhLbmhWOW5xSHJ4bWQzZ0JIbnMrTW1nSUJ3UgpPRTBFaVVJSURpZVJwb2RHaGhIQ2lBRkVDcG1JUm9OSW9WUXlBRHNHVjFLQUoyRTFMbFFZR1FLRWsxRUl3ZE9wK0RzakthRjRHUGdCCjUrWUlNblVhTlNJMEtERDI5cnQ2Tml1ZHF5VkFnUG8yeTVEMU53alFuZE9DZi9xaDNDZEFrNnQ4L2g1TWR6REFzYytIaGpxcW5OMEMKVjEvVlNCL0gwY053OWpKSCtsak9YdlpRZitWQUQydTRuek15d0hZTThCQ1BackJmL3VVWG1UV0NGV3VXM1lHbndPY1dIMEs1alRJOQpra0loRXYxRENJRjRQSjVFZ2orSW90d0hFYmNjR2FnWWNUSzhBOXdwOGZUemtHRUJ1UFFPVkxyN0s3MkRmRUQ3K1lLNzc1bE9JUVpRCktmajdaMHk3dWtFMm1LN3NXUzhhM0NDNnNrSGcyS0xxWGxIVnRVV0piRFYrdllZelozb2t1Tmx0WlB6dEZOSU1NakdVQ0R1ZXdJOGcKSkNRb05CUThKS0lmZkN5QmNDUzJQeEdIQ3drSUlCRkpZUkdoUk5palRnZ20rZ1dTL0FoejdwckRMdUsrLy9LaGdjR2VFUVM1NGtMZQordkdLOElYUEhyVzg5NkRzblJtQzl4K1FmUlF1T3ZyQ041MWVCS0ZYeWYxeGZ1RVVjcUIvZ0pDWFBPSlVBRk1jdU1iczY2TDNkYk1ICnVzcUdyM0w3cjkyRU50NUllNVhqQ3M4enpIbjMzVUlxa1VRaDNUNHRNandpZkFiNCtVWkVCRk5EaWFIZzlSRkFmT3RneVVpZm9MK0QKNmFQM1JucXVNVEM2MitrK09pL1J1NjhJT3k0TCt6dmtneDJpd1NIaDg2L25CaEx4RVZRSytDY0FYcEhIVHg0REFqUlBmUVRZRHhidgpnU0VmM1RGZ09SQ2dPeWpSaHFNK1lnMUhycVA5S2xuei9pWjFFMGZObG1rTFlBcE14OVpxNlVDQUFHTmRZRXlmQUNrMGRKOERTWlRsCklubFpsYXlNS3k0dWtBZzNLT3hMVkM4bEtvRURIWDNJZUhpMjRYQzArdWdDN2VHNW1tUHoxUi9QVnAyWXF6aXlRN1hmYWxEc3JwYmQKVElDd0NOQmVtMjYzVlhPckFpUlRjQ1lJVUlXQVJoT1VBd0VxNERFSzJGQ0FTdWpsZVl5cXpXemo0cXA5ODZTdnoxUzlCd1JvcnV6VgplZEkzRjhoZWlWYys4WmpTdWtNbUtKZlFoSklTbWJUcy8wcUFmQTQwUVlDdU85QWs5Y0ZJOHVXazdQbXB0YmxZRUlnbXlTOFI1K2FKCmMzZEk4ckpGaFlYOHdyS3FJbFNBaWlZTFVMWTBHd2hRdGpocml6eG5wUzUzVVEycy9nRk84ODhGS0tXdUdCeGpqL2FSbW9JQ1E0bEMKelFEdnRvRUFtYlhNR3Qyb0FGbk1UTDJacFlQVjBHeUxpYTNXTThTYU1wcThZcU1lQm5XUzdWQjlZaHBZOGZYTXhiVXNMQVdHU2s4NQpwSkdHVXJxMG5wMjhxd0k4Z09nR2p0MjAzNnM2N1duNFk5ait3MUE5OEl6Zm5DMC85emYvTXRCNjJibXJmWERQeGQ2OXZ6dDNRd0h5CmFkQi9kS0FKM3VOamd2YzRkMS9DOEhuUCtCWHU2QkxUM3dIZ0lZMk1oWHhHUWRVSHN4OU1mVnpXSDExamxjNCsrd0hxNDBaQjV6c0QKOVRrOWx2YjYzS1dBbVM5MHd4ZWM5SU1WL1FEN3dlcWRSMWVjWHQveERnTS9NUGwxczloUHdRdEl3YWo5SUw1VlgyT3hIMS80eDFmMQpETzFuTzFyOU0yby91OGVGZjhZRUNOc0NoZ3FRWjJVdEVDRHZzbW80QjJpY0FEa1dhVEVCR2twV0RpUXJlcE1VMTVJVTUxTmtYUXNyCno2MnFlcjFLZnNDbWZySlcrbXkxOUVDdEhKeXFNUUhDSEFnVElNeUJkcHBsbUFBOWJvSDI0eE9nMFlwcGNCc3pEQUkxR2dWMmZXV04Kam10UmM5amFzaDM2Z2h4alViR3BPTTlja0dYSkI1ZTU1bHhBdmptdnhGSkFzNVF3cTh1NE5lV1Z0WFN0a1dFd2NXb3NsZlVXZm90Rgp1TnNrM21jVTc5ZUxXcFNWNzd6d3RNZnJVT3FsQWY2NFNFcDRTQUR1MGNkbUlrTmlwQittYndDZW5rcHZieFdzWmVuaWVyc3Jid21rCnI5VGJXK2J0WTdyNytlQ0xJQzVUWjRmMDNKa2lwV25GSXl0RDhWUWNPT3NSZ21FcExvd0prVUpJSWZnZ1AvK0FnSUM3Nzc1NzgrYk4KVCt6YjMvYjdlY1NGT0JCWEZ6Sjg5Syt2YXQ3ZHUyMFhOODJRa2FmT3Rtb3JiRnArazBuWVlPVGF0SFNiam5mcXlGdUl4NjNYbVFOdwpnZE9wNEdRZmp2Y1BKdmtIQWJjaitmbkRZaENjUCtCNmx3NXU5QnFjWHhEQTczcXpHeVFJRndSdkN5NXgvakNlaEE4a0JlREE0d3dMCkRxUUUrQytkT1dza1hRMEVhSENkdUdlVEZGbXJQTGVLRVVrbCtnVG81eDhyTUFGeTkvRW1CM2orSHVCQWt6OEVEdVRvWmdQMUdlbWwKTzN0bzdoNDY3Si92RVhtNkpNZzFGakpRaFhUUlBaM2xubDdHY0JjTjZCRXlYSWtnYkVkMzVVOG4yYzM2OU1XSmQ4R0dQUnd1UEJDRwp2S2FGaGM2Z2dtY2xlRWZHUEdSUTQrMWd1M3I0STkyOEtRRmZHandHSjNnQmdGZEZiOVZJTHg4Wmt2UmVZY3lhZlMrWjRFOE5KZHczClBmTHllc25BUmdVVW9IWEM3blFKc0I5dnVxcG5yZVRISGRLMWR6NFFRUEdQd0FmZlFhVGNSZ3dQQ3c0bEJWQ0pBU1R3WU1DUDVvN0kKa1BrUGhPOUluMU5yWFBiQ3MrblAvV3VUU3JKa1NkTGRaSDgvZjM4eWhSZytuUndhSGhJRVBwMGNBbHNWY1g2QkMySmkxUnJaRCtkTwpJZDV1SitMNWFSRFovMVZYeGJQZnBxbGV1WWYzMHZNbmZ2SWlJeFY4cWI4LzFGWWdWaHpHdzI2MzFORlRNZFRKSE94aTluZHhoN3BMCmg5dnBBNTJzcWJuR2RvSW5wSVBuZFRJKy9LaVFqQThoaG9TRlJ3U0doNUhEd29MRHcwTkN3Nm1VU0FJaEtQRERkMmpJb0t6L2FtWGYKRlY3dk9McXVjQUhnb0tlTmk5RjltWVBSZFluZGZiV3E4MHBsUnh1aiszSkY3MlhteUxENDVkZno4TVFRb0d1aFlVRGJ5Y2RPSEQvMQo4NVdITldpcVMzYzhWbk1LQTJhN3RDZGpkWjlBOUNldUc0LythTndZOGJxajhkb1RpN1VIZDZoc2ZEVmRxUzBVR3hnU0EwK25ZMkFDCnBCeDFvQnNFQ0hNZ0xBamtjeUNPcERCUFhybFJZVjBwZlRwVi9zWjg3ZnZ6ZFIvRXE5K0wxa0FmQW5JMlYzbHN2dkx3RHRYZWFxTU0KL0g3N0p3TFVZbEZqQXZSUGlxQjlBaVNXbzNYUVl3SlVMcXdvNGZzRWlGUE1ZaFl4dUpsMDVYSnVZNVQ0K1FjVWJ6NmdQQWdFS0ViNgo0bUxaN25TWkpsL0dySkFWYzJURkFtbVpTRnB4eXdJMCtjclJ2N0lXVG5ZZ3dLU1NvREVObXFRK0dQSDFNUGFUYU0rUHE4dFBxTXQ5CnhKcTNYWnRQUXh1KzhpVjVRSUN5aFBtWUFCWHpDd3VFVTZUQU1BSEtGZVZzbGVXczBPYWdBbFFFQkNpcHZ2anZCUWhjWXZhenlGNmMKYWl0S1F2TjNxYmFDSEVNeE1HSWdRSG9kMjZSbFZ1dWg3dGhNckdvTFMxL04xbGxZUmd2Yll1SG9EQ3lwcnB5cHp0NWl6bHBjbTV0VQpYNXJRd0lodVpNYlgweGZiS253aG53a3NOZE9UZHRQdTJaZkhNaWwvc2g1M05GNTBtMzRhYVBsMjJQNmpwL21Yb1YyL2RPLytZNmlsCkRhbTc0cTcvYzNEdmI0NWRsMzBPaEFuUTN6TXh3RFBtT2hPcW02Y00vUGpzeDkxeUFWT2Z2N0VmVElDd1NtZXMySGw4N0Flekg1ZnAKbkZzUDFPZHJDTHJqQXRpUFczYlNOVGJuMENVNDRxbzZqQlg5d0c0djF2dFFmVkQ3Y1RIZWNtTXJUakd3Mk0ra2VUOUFmVWFCQWpTYQorUnBkZGpFVy9nSDI4emNDTkRiN1o2SUFBZnRCYmk1QTdrVzYza2UwQTZtcXZoVFo1VWRrMTlJVVF3bUs3aVI1ZTV6MDJnTGVseG1DCkp5eUsraWJKTHJ2d2dGMzJMNHZZSjBBQW53QUJnQUExNjI0UUlDQk1RSUQyMXlwZzJ6eHFTM0F1b2xGWVo2aXk2bm10TXE1U1VjRlQKbFlKZld4WWR5NkpqR0hUMGFqUS9hek55Nmd5Y2VnT25XYy9kcGEvYW8rZnZOUWoyR2tSN0RDTGdQYnZnb2pGSnMwWFNZQkhYV1VRTgp5cXFEcnp3emhBeHhGR3lnQVpIVUNFSVFidW55ZXhHbkFCbmt1WHBaSXoxTWR4L2IwODhCeDg1dWhyZm5ackNtcGxQbTZSU0FBMDlmCm1idXYwTlZmQnI0VTRoQWdpTHFuWFg3cVZKVlNzMmIyUERMUUlQQTJQZEFmbkdSSWVFSkFLSlZBd0FmNndYTWRic2J0MDlkdFdMdjcKOGFmL090OEdpMmJkSTFkSDJqLzY4NU05QjNjMVdpWFZTcTVOdzkxcEZUYWFPTTNWNGt1L25rTmNybldyMDRIT2dQZm53WDY0UjVmTwplT2Fac3RjTzVqLzc0cXAvdi9Mb3l5OXZtSkozbmt0Lys5L3BiejZmL3NZTDZhKzltUDdxUytrdnY1VCswc3ZwcjcyODh0VVgxNzd5Ci9QWlhYNkN4NlNsa0VpNDBOSUJNd1FNQldqVjdQckpSZ3dsUTF5WUpza2J4TGRvR0R3U0lRQ0RkTlQza2w1L28vNDhDaEdXK3NHdXcKQ0pDbm0rL3FyQVJBdWV5cTlGeGplZHFaU0NmYjI4MGY2ZUFOZDdEZC9aWE9YdlpJRDB5V09Uc3JnTk00ZXRsT0Z4TkJSTDNkMGlNZgpsbkhacVFzV1VuRUJ1TnNDOFRPQ1EzQkIrQzNaczJFRXFML01jYTE0dUljOUpkQzYrampEM1V6dlVKV2psOVBmUVhjTlZJTEx1ZlB1CkIvNUtJZ2ZmRXhsK1lZMndiNzBNQ05EQVdzSFFXbkhQUnFsN2xRVFpvT2ZlSDRzajRjZ1VPSktIUUlEOWdFU0svMFB6SXRkc21pMVIKTG43dWhhMWZmOE82MGxFMTZCQjVQVHpFeFVBUVBvSm96bDhRZlhBa2wxbTY2dDY3ZzhDanhaR0QvTUNuaDFMQ3cwaVJaSDkvUHdKdwpKMkpvNU5JVmExcjM3TDF3L2kvRTdRRS8rc1BYRU40YmY1ejg0VHppN3Erb0ZBVUhCMFpTOFVDYU9PWFJpRnMzY0pYbGJKYzRPb0d2CmlJYzd1TzZyVlVQWGVGTXljSTAvZUxYS2NaWHZjVEErT2xRVVRpYUVVVU5EUThGM2dac2VHUXluQUpDcDVJaGdDakhnNDQ5S1hiM2MKd2ZaUnhwY0I5VjVsOTEvbEF2cXVjQUM5Yld5TW5zdXMzalp4eDJWMmYyZnBVSHRSLzhWU1Q3LzB0WmRLeUNGVVRJRElWTXA0QVFLaQpFNmM1Q1lqVkhnZkVBUi9TSDhkV0M0QmpIMEI2TUJLMUo1TDBIeTNUdkppdE5vdlZGUnB0a2NUQUFnS2sxMFA3bVZLQVlGNE1GU0RNCmdZQUFpUlUwNEVCUzhTYUdQQ2RQenQ4cXJsc3UrWGVDOHAxbzlidEppcmRpdGU5SGFUK0sxbnd3VC9YaGZOWGJPelNOMVdaZXE1WDUKSHdVSWJzT28xdmdFNkdadDhNQitKZ3VRU01aRUJhaWNMaXd2RjlKS0JmVENTaVltUUlVY0RoQ2czQXJKV3JZdFR2VFVRNHFEbUFBbApLSGF0a3hsb0lpWmZWQVJiMitRTWpyeThTbDZJaTdibkFxSnNPVDRXMW1ZRGdBQk5DUkNkS1JsZkEzU3plcUR4akUrVEFaTHNKUmhMCnJIbkFPV0F3QnEzWFNhN0wzV2phUVpOdks1SG5GTXV5Q3lUWnVhS3NIR0YyampBM1Y1Q2ZMeWdvRkdRQkNrVForZUxzUEdnL1dWbVMKekIzU3pHekpsblRwNXNkME94YlpjdU1iOHhiVVowZkJLYzlGMFkwRmNiQzd2aWpOVnJyWVdwSnNoUThENkJGTWV6VVV4elFXUkRYawpSOWNYeHRsTEVtdkxVMnJvOGZhS3RXWWFYVXZYcVZsV0RjZXFZWUczM2JXR3lqb2pDd0EwcUJZMUlaT0pvVE5XYVBRMGtZcFdxaXhjClpTeU1hU3lMYXFYRHFkRDIwdGdtR3ZpV1kzZFZSTldYSk50b2FZM3MyQ1pHWENzanRvVytwRFY3Zm5QSnNqcjFhZDNiaU81Y1IrM1gKdmJhemc2Mi9EVGYvQ25BMC93RVlidjBUNE5oNUFUQzArNktQNFQyWHhuRTlNalFlWDJnSDROaDFjVHpPWFJjeDZRRUh3SGhHV2krZwpqQmI2VEVoNCtRUUllTTlJd3krUXVwOEJjS25GRFpPZDRVb3ZMeXgyL2g2TCtrRHBNWnpGV3IxUSt4bXRkL1lxVG5uaGVxL2pRSDI4CjRtT0k0QWpDUDR3Vi9TRGM5N0djRndDb0Q0VCtCbVkvM3ZMWE1QWDUrM2svYU94bjNLcXY3SDk1czU3MFpENHhWdklNaTM1RzJiNGIKTUZyNHZMVUY0TjNTREVBMk4zczNZYzFmMEg3ZytKOVZhUC9Yc2hySVVpaEFuaVZtOTJLVEs4MElHRjZzRzByVDlpOVM5NldxZWhlcAplbEtWSGNueWEwbXlpNHRrRitMRVhRc0VoNHJsVHpib25yWkxHNno4cHl4SzRERytHcUE5WmdrR3VMTEZyR2pRQ2xwMC9NZXJKUWRxCjRONk1BN1hLL1dNRjBUQUxoczROYWpiRExKaGRYMm5XY1hSS2hsYk9OR21xN0FZZ1JoSWdUOEJ5bWcxaWNOeHFRb3VLVUZvdDhwM1YKaW9ZYUtEMUFvZmFicGZ0TWtsWWp1Qk11TUtkdE5WbVB2N3dMaUFXRFVZZ0xDQ1JPSXdVRzRKWS9OaHR4OEwxOWJIYzNHNDB4Y0FCSQpEOC9iUGZFOC9WL2o3UzFEQm1tSW00VjRSSjFYQklmZUx1SXo0dUptK1FNQkNnN3lBK3BEQ3NGSGhvS1BLTVRBWUR3Y1VFU0ttSEZiClpsN1dXKys4MmRmWDQvRTZFYmpreWZuNVp5Y2UzMk5ITjhEejl6V2EzTVA5bDl2K2lyZ3RQQWlQbzFKSXdUakM3bjBKQ0NKRm5FckUKb1ViY2JNUXR2VVY0aUZPRnVNUUl3djNxeXl3eUxoQ085NlVHNE1nQlJRL0VRZ0dDZzQvRlBXdUZnNXNWMzY4Q0FnVGV2ZU9KUkRJUQpvQjkvS0FXNkFQTlpmUk8vL1Z0aWZCblFyZUxxNHdHY1BUQjBCTndJY1lxUllTSDQ4TkM3SzZNZmlnakVCWVFFa3JJelpvODRxcHk5ClRGZnY5YWF6S2NGcXNjRmRnWHNZNmVVT2RUTGpaOTBkVEFCU1NJbWdFQytzcVhSdGtMU25DL3BXQy92V1dvYzJWQ0RaU21QTWFod0IKdnE3dXcvdjc0MmJjTngyblZhejQ0aFM3L1FyUE15SUNQMzNFeWZVT0FWR3JkSFp4SFowYzRIQUFjT3p1cmZMMkExRm0vdmw3NmY2ZAo2OVk4TmhQSVpYQmdTQ0FlVG1BS293TDh3aWlCUWY0d2QzclBYWGN6eWpsSFB2ek02Um9DSXVSR0Mrb0ZnaXJ3d29rTXU4TVBSeTByCml2RjRvZlNNZEhJR3JqRjdPK2xBY2NDSFE1M2N3UTdPWlBxdmNRZXU4SWV2c3AyRHZFOCtLd2tqazhpa3NMQlFVbWdZRVJoWUJDVWMKSEZERGllQlZldnhvanF0UGdJbk9aSHFoQm8zU2M0WHRvKzh5dTdlZDNuK0oyZHZHdlhxdEZIRklYam1RUzZCUXc4THdaQklCVHlWKwpmdUtUSXo5ZmlsWWVpOUljVGtTRFFEN1F4VXFqUkJsT1JCdU94K21QeE9zUHhldGdIQ2pLOE1rQ3c2ZlIrayszYUhaVnFSaHlUYUZFClI1ZEM5YUdyOVF5bGhxblNzbnlBRHdFS05XTThjaFVjQVNOVFZrZ1Y1V0lwU3lSaFZFbkwyWkp5cHBoZUxtYVhpdm1sSWxHbXpMQloKcWsrWEd6WXA5UmtLSlZPbjBGZkw2MkRUaGdTOGJYdmNwandBSEFqRHBvYllWZnR0cW4yMTZ0MVcxYzVxVFpOSldhZVRXVFV5SUVBNgpsVkNyRWl1VlFvbUVJNU54TkNxdVZzTlJLeUhBZ2VRS3RBeEl3UlRMR1lCS0tZTW5ZVEpGRmVYQ2l1S3E4Z0llTFpkWG5zMmxsWEs0ClpVeG1RUVU3bmFGOGhOZVFJdHo1cU5TK1FhYWhTMHFZa2xLV3RJd3JMK2NwS3ZnS2VwVzhnaStyR0JXZ3lSbzBLU0EweW1UMUdST2cKaWJHZnZ5ZlJPbllBMDJUWFdXUkRNMVoyWUVVbDBFSnNoZXVNQmFXU3ZESlpUckUwdDFBTVJRY1RJSWdnUDFlUW5Tdk16QkZtQWpISwpGa1A3QVE0RUFMZmNJc3Rjb2M1NnpGaXdwcnAwYlUzNWl1clNSV2JnWHNYeHRxTFl1c0w0eHNLNGhvSjRlMDZDTlR1NU5qc0phSms5ClB3bE52Y0VZbGEwa3lWYVJaR1BFMmNwWFcyZzBIVjJsWWRhb1lSczhFQ0Nic2FyZXhCNHZRT2hNSUxyV1VDNVdsOU9VUmVzTVJmRU4KcFZHdDVRbjFaWmdBSlRYU2tsc3FFdTJsS2ZXMGhPYUs2S2F5cE9hS3hZMFZVYnZ5WXBvWXJlWTk3ZVpQbkpiVHJ1cHpBODAvRDlmLwo2bWlDQWpUYzlEc1FJR2ZMZFFHYUtESFgvYVp0U255aEhTZHFQRk9DaFh3d0FicUovVUFCd3FJKzQrMEg0TEw5NkVLTG5WMjFZOU45CjBCWjNGNm8rbVAyZ3c1M1JxSS8yYXhqMVVaMmFzT0FDN2ZZNk5MYmRmZFIrMENuUGI2R1pyemV4ek5mNHdNLzRlVCtZK3JqSDV2MWMKdDU5eHUwNTk5dU1USUt6dXh5ZEF5RllvUU9QdFo2ejdIUldnMWZiL1RvQ3VKa211SnNuUEo0aC9XeVk0S0pBMnRDaWVxcFk4YVlhQgpuQ2tGYUtjSkNsQ3p0bXEvUll3SjBPTldCU1pBV052OGFMT1lXWVR0Um9XbDBDcW1Xc0hVYVNxdEZtbFRqWHlYUmJyTEtHcTBnbU5wCll6VzRwYmpWSk41cEZPODJnUzhCUDNlM0NlYThkdXVxNm5SY3BZbEpONWZrbVF1V21qYlZ2OUlNQktpc0xBZm5GeGdhUVFLMnNXcloKRFFMaytUOFFJSGVuZktTanl0SEZkUGFWZVlhQkJrbWR3K3FPcTlLdnpwUTg5ZFM2bk13SDdyMHRLQmlIdy92aFEwbkVVSElRT2N5ZgpTUEVQQUdkc05EdjJ5SkkwblZiOTlaZW5ZU2UxcStmd3U4K2FWZXhEYjc2SXVKMVBQbmtnQU84ZkZoRkNEQTY1YjNya21UT0ZpRWM4CjBzdjM5UEhkUGVYZ3pIMUxPSHJaM2lFSjFBZ0g0OXBWYnV4RGQ1R0RnOGxBZ0lqKzJYZlA5NlpyaHRaS0JqZkFNcUNoVFlydlZ6QW0KQ0JBeXpQLy9WNERnNkNEZkRDSGdzZ05WQUZpVTdkQnZXUlZEQ0lMOWVka1pzeEN2eEQzQUF6K095ZEx6OXdLVU91dGVIQldPcGI2ZApURDYza2R1MXBuSm92YWh2bzdSN1BRZlphSHN0S2Z2T0FGTDQ3ZUdSRkJ4NFhUMDBPK3liTDZzRys4MGVqMkpvc0dLd2p6Yll4Ump1CjRqZzZZWElOMkE4bVFPQVNmRGpTelFOV05IQkY2ZXBUZVJ6eXdYN3ArUXZpdDkraGMxbVB4Q3lJeFB0RkJ1Q0NDUGlBYVROSTA2WlQKZ3ZCd2RpZWVpb3VLU3pTWWEzLzYrUTh2QWdSSUJOd29NakxFeng4SEJNanRFZmtFcUsrTGdRblFaUFVadU1ZR2pCZWdUNzhvQzZlUQoveThFcVBjeUZLQXI3U1dlQWNIVExWdjhnMFBndkNVS2lSeEIvZnJUejRFQVJTbU96dGNjaWRNZSswOENkQlRZejVnQW5WaGcrQ1JlCmYySzd1a1VJVkVaVEtOVXpaRER3UTRlTXN4K2ZBRTF3SUo4QW9UQWt5bktoa3NaWGx2RVVOSTZjenBaem1ISWVTOEV0bDNOcENnaGIKemxLb09mWEd5ajJXcWxzVklJdFdxbGVMZkFJa2xiS0I5MmpVOEhKcUFaTFJlUkk2VXdUWDFCZFhsZVh6U25PNHBkbWNra0ltdTRoUgpEc2hrOFRkVTZkYUx6VHRrcWlKNUZXWS9iQmtORXlCZ1B4aTRXSHRlakMxM01wUFZaMHlBOHFja29iYjRsZ0FDTk9wQXFQZkUyWXRqCjZ5REFmb0NkZ0lQNDJ0SVlXMm1jdld5Vm9TUlBXa0tUNXBWSjgwb2x3SUZ5Y2tVNVdjTGNURUZPaGlCN216QVRKV09IYUVlbU9ETkwKa3BXRFVpTE0yeTdMV2FQSVdhOHVMREt3dUZZQnZZYWJZeWhlYlNsYlZsMENYR2RoWSs3OHB0eUY5ZkE3V2xSZGtGeERTN0dXTGJLVwpBbEtzSlltMVpRbTJjcmphM1ZhK3dsSldwQ3VYYXhnV0RUWUhpSWNKRUxDZjhRSmtOTkoxeGdxSmxzWlFGVzh5RkNiVmwwYTEwS0FBCjFaWEZOWlhGdDFTa05aUXZzcGNtTnRHaVdrcWltNHRUV21pUE5wVGV2N09rektwcDEzM2dxVG5iWHZNTll2Mnh2L2tYVDgzUHc0Mi8KUUFkQ0JXak1nZjZDN0x5QU1jR0VITHN1VDhrRTF4bTFxREdnOGFEcTQycTVNTkw4RitSRzljR0cra0RHNWJ4UTcwSExmUUMxUHdDdwpoSmN2MVFVWU1aN0YxQWRkN1BVMVhPeWwraHd3SWo4SmNFbFB1Q1RIM2FqNnVQblgwMTV1N250d3lPRm9vL3VibVBwY3ozejVZajlqCjRSL2ZsbFBmdkI5VWZXNndueHZuL1Z6ditSb3JmTVppUDJqZk95cEFvN0dmc2ZDUGR6MGEvc0hHLzJBQ3RMUjZnZ0NOTERJQUFScGMKcEJrdlFKMHBDaWhBaWZ5T1ZNWHZpMlFEYzZ2T2JxaHF0aXFldEN1Zk5JaXdoTmYxQ3VoeEF0U29nUUswMXlURWdrQlFnR29VNk9WMQpBY0thNFJzTS9GcERwVkhEVWltWktqWGJZaFkyMVNwMlYwdDNHb1N0MWFKZDFYRER4aDZ6YUo5WmRNQW9PcUFYQW5ZYitDMjZ5bG90CmVQOUhZeG1LTTZ0emw5c3lrK3EyTDdDc014NXNjbnFRb3Z6dE9EUzhRUUFDdEhRV01neE9reXlmQUhuKzF3TGs2aEVDSTBFR2VaNkIKQ21kL3NXdXcxRHZNOEF3eEVZY1FRZFNJVS9mZFdWWkQvZEsxcTJmTWdCc1VJTVFnUWdSbEd2QWhJaEcyTXZuNTRRajQ0S1ZMSHJuMAoxeS90RjcrM2FQZy9mZk1GNHZFVUZ4YmgvSERoVk9oUFc5YytqQ0FxOXhCM3VKUHA3cUdQWEdOaU52RFBHZTdrZS9wNWNDQmhmd1d3CmhLSWQ4Y0hvR3RSQVFzRDYyeDUwYk5FTXJSSU5yWmNNcjVPTWJGSit0NXlPQ1JDSlJMbHpXdkFQMzVjZ0RnRVFJRmZ2YUJycnYyQ3kKMDl3U0k1M2doemo2MWJHU2FnK2FYM003Rkd1V1BvQ0dUL3p6c3VZaWlOVFZ6M1Ywc1NaTGp3L3dKSXcrSjEwc1RJREFRZHE4KzNBaAp1SEFTYk4zNlpEMnpiN1BFdlVIZS9TaC9lQlBqOTNYbWxkTWV4aEZ3WVdRUzFkK2ZNZ1Azd1FjbEhtZVYxOFVlNnN2dDY4b2U3S1lOCmRZSm5XT2pvbEdDQkg4eCtmQ1lFQUw3aTZtSU5kWmIxWHl0eDluRzhUc1hJb0xiN3FtTGZreHN5TXU0THA0QlhRUWpzOWdzTEowYUUKNE1QOEFrbUJ3SVR1dk84T3FWeVNsNWVIMXJ6andZdW50RERhSjBDREhheWJDUkJtUDZnQXNRZXZDb0FBalF4VmZ2NVZlV1FvbFVLQgpzNnorVndMVWM1blRkYlVDYUZCUFd5VVFJRmRmMWI2YXRUZy9meUJBb1ZReVpVYjR1YTlPSC83cDRtUUJHbTgvZ0doNENRVW9UbjhFCkFBUUkrQkM0TWszN2JyYkdKbFNYSzdSRlVqMVRybWNCKzFIcXJ3dVFUMzBtTUVHRDRLNE1EVTJxTGhHcGl3RkNWWWxBUlFQSWxQbGkKUmI1RVdTQlZGU3JrQlJabGVhdUJ0OC9JaDZzTWEyWC9YSUNxZFRLRFJxeFRTOFlMa0ZyRnVya0F3VTBkVEZGWmhiQzB0S3Fvc0xJbwpuMWVZeHkzSzUzQ0syZVUwVGxFSmoxWWc0aFJMSzFreXBsaGFBdFFIQUdlK285d2dRRk1TVjVzN0paT1ZDR095NHZ3OVNTaFkrQ2R1Cm5BREYxUmRGTmNDRGVGdFJqTDBJSEN5ekZHWXFDb0VBMGFBQTVaV0ljL05GdVZtaWJHQS9Xd1ZaRzRVWmdNMmlIVnRGR2R0UkI4cVIKd0Z4WUlUOHZRNXk1UWI1am95YXZ3TUlRMml2Vk5wYldYRVEzVmVTWlN6WmFDaDZ4NW9HdkhtdW54OVpXeFZzbGdLUmFjYXFOdjhqSwpTYkxTRTZ5MDJGcGFqQTJ5ckxvMHgwQVRhdWttbUFWajJYUzhXbU9WM1F3RnFCWWRod2pBc21EQWdSUTZHbGRkdWwxZmtGWlhFdE5jCmx0aFFCa3dJQ0ZCTU15M05Ua3VwTDRscEtZcHR5bzl2S1l6ZlZaclFWUFNJalg5WS9TOUUvNlhUZk01cC9uYlkva09YN1R1djlUY2cKUUNpL2pYTWdWSUJRSm5qTTN6RFNlbjRDd0tWOGpGNkpTbyt6MlJmc2dUZ2JvZmVNMVA4R2dLTjlVTy94cWM5SUxTejA4ZFg2dUtwSApDMzFjcG5NZUl3cWE4eG9OL0tEbFBtN2xaMjdsS1V4OVJzVEhYTUtQZlJVL2JuVE1EN0NmY2Z0TlI5WEhoYXFQdS94MXozWDFlUW1DCnp2c1piei9ZdkIvTWZueDd2b0Q2WUp2ZU1mVzV3WDVROWJsdVAxdDJ3dkFQcGo2by9kd1EvZ0hxczZJV01zbCtNQUVhU3ROT0ZxQ08KWlBtRjVLcHJLYksyRkVYN0F1SFYrTXIzeTZVTjlZb25UY0x4ZFQrWS9ldzJpUUV0QmhrUW9DWk41UjZqNEhHekdEb1FiSVpYUEdsVgpBZ2VDNFNKMGJEUW1RT2hhREs1RkM5NHFNWUVER2JROHVFYmVLTnFyclhwY1d3bllwNnZjYTZqYVphcHFNZkFhZE94YURhd1FrdWpMCnlveUZteXhaajliQ2hSS0pEZHZpRzdjOVpGOXZlSC9YQ0lMazUyenhRd1VvQklkNzdORlJBUnJwQWVkTGNCN0ZRa0U4VDlkL2Z5S2YKZ0tPN3hObERBMThDbkZEZFhWWHVMZ0hTTFVLQis3RGNmV3pYUUNYaU5UZ2MxazgvWnpTMUxsNjViTVk5MC8zQll5UDQ0Y2doZnRQRApxVlFLZ1VBQTV6Ly9zNmMvSCt5OTNGcG43TDNhTnR3N0dMVmdZVUNBSDVYb1IvTEQ3YXBQUnhDaHM1c0JnMWk5WlVpM2VISy8xWCtnClcrbnVLWGZEY3o4TGNiR2FyV3Z4Y0xzQ0lRUWZrQlo1Vjg4MnRXT1ZlR2l0MkxGRzdONmcrSFlGUFlKQ0JBSkVKbFB2aUF6Njd0c2kKeENuMC9qOEkwR1NodVdVNjJRRHdnd1B5Q2c2QUFvSkxwTGZTTVNoOExQVjJmQkFzLzg3ZThhQnp1SEt3Z3dHMFk3TDNUQkFnY0RCZQpnQktpWmdLTG1oNGFHa3dKL3Z5eGN1OFdkZTlxSWJKS05aUmhLWjRialNQNDQ4T0NwcE9tQWJlMnQ2eEdFQW40cG9ZNkdQMVhhZEFwCmUvbU9MajVRekNGd09aWDlERjFqRFYxbEFHVUJOeDd1WkF4ZW93MTMwWnc5RlFBRTBmZjJTOCtjb3pjMHJIcjBrWHZJZUZqQUhod0UKZDNoUlFzbitnUUVrRW9GQURBd0t4RkZJMUJBL0NpWkFROWM0bUFEMWR6T0JBSUVQcDdRZm53QU5YV0VCQWZyeWREbDR2ZjF2QmFpMwpqZHQxbGRIZnh1bTlVdFhlUWZNTWlGcjBqL241QjRlSHc2Mm9sQm1SMzUwNSs5SDNGeFlxank3UWZoeXJHVTJCVGJBZktFQ0cwWG9nClh3VjBIRm9idEZMM1hLRmFKOWFVS2ZTbE1nTkxxV09wdFhTbGpxbldzU2NMRUx3R3F3MGFxNFlHWUJPRHBGcTZURjJCT2hCY0tJWWgKVjVWSWxhVmllU0d3SDdtcVNLa3NNV29ZZFNaaHMwV0dDZEIxKzBFRjZBazdiSWFkVW9Dd0NOQUVBZnJiQ0ZBWlQxcktrcFF5Uk1YbApnc0l5QWF3Skxxb3FLT0h6S2dRVkxHRWhVMXpBQURlUTA0VFNZb1U0bTZlb3dOUm5BcmNzUURkbllsbjBXSEYwMFpTTUx3QWFud0tMCnJ5c0YwcE5nTDB5cHpZK3J5NDF1eUZsc3pkbWl5eTJSNVpkSkljQ0JDc1Y1dWFLY0RFSG1GdUdPOWNJZFFJQTJDVFBBOFRZaDNBSUcKQkNnZjlzeG5aNHEyYlpadFdhM0xXbGxUc3IyMlRHUXBialFVR0MxTWxibWkwbGhjWkNqZGJHSXRzOGppTFpZRjVycm8ydXFZV21PcwpUUlZmSzRxcjVjVFdWcUFDVkJwbHA2WFZsR3cxbEhLMTVUb05zMVk5S2tDMUpnN0Fhb1FkWVlCcU04ZGlZcHVOTExXK1FxZ3V6ZE1WCkxiVVZ4VFdWSkRTV0pUZVVnSU9vUmxwcVhWbDhjK21DNXJ4a2UxNXlhL0dDUFNWUkRZV042c1loOWVGaDQrayt3MW5FL0VPUDdkc0IKNjNmUWUrcC9IbXI0R1I0MC91WVlkYUR6QUt3ZWFEeU9uZWRSSnFyUGVBRWFMejBZMEtoUW9QMk1HUS9LYUlIelNNTm9zR2R5cXNzWAo4b0hlVTMwTzRGdms3a1ZuRzQ3djgwTFZCeDN1TEVlSEhJcVB1MFhIM01LUGZadE54eFpjK096bkxTejJnMDc2ZVIyb0Q2VHNGWUNuCjlHV2dQcjRkRitpd0h6VHc0OXZ6bFhkOXh6c1crQmxiOHo1cVAyT3pua2VuSFY0ZmVJaTJmV0hxNDBtSDZ1UFowT0JCd3ovZXRYWFkKN0IvdmNpc0FzNThKNForL0VhQS8wMFJYVXFTZFNiSmZVNlZYb3dTL0xSTThMcGZ1c1NrbTJ3OFFsNTBHWVpOV0RBU29SVjI1Ujg4SApBblRBQXZ2Rk1BRjZvZ1lHZ1RBSDJvVTJ3d01IQWdKVW8rY1pOV3lOaktHUjBpMEtWcjJhMjZ6bXRLclo5V3BtalpxdTAxV0lEVFMyCnNhVFVVSkN2eTkxcXpWOVhrN09rTmpPK2J0dkN4bTB4VFJub2l2WHRjK3MyV2o3WTQwYVEzTXgwSUVDaFZJSy9IKzZSbGJNUng2Z0EKb1hVaFVJQ3c4L0hrOCtKL2g3T1hDVStpM1ZYZUhqSFNLL0YyQ2QyZFhNODFsaGVjWWp0WnNOMnNYK0FackhUMDBVY0dhWWlYTWVJVwpuam5OTXFvZlc1SVNFVUhFa1FLb2taVGJpSVRBaUxESUx6Ny81T0w1SC8rMWZ5Zmk4Wno1OHB0d0NoVW9TQVFwNks3d29KL09DVHpECk5FODNFK2xsdTN1TFBWM3dCSHhyZENuYzNhVWVOQklHSHNtSkk4WFVRRndrSEFFYzlIRDR0UE9iSlNQclpNQitIS3RGbnZXS2M2c1kKY0k4bUtRUUkwSXd3LzNObkM0QUFlZUJZNTRuZi9uOEJOZ242VnNHOHh3MnJwTG5ZTVpBaHBJYzMxTTlQalFrTkRvQUNsSjh6QjgwUwpjajE5L01uM01CN3NrV0FDNU9yamdZT29CZmRRaUg3VFNPUUFZc0NYajVRamErVTlheVdlak9ybWhYa2hKQnh1QnU3dXNBaWdyZVdzCng1eE8zVWgzb2J0RE1IeTUwdGt1Y25lS2g2OVZBZTNBMnJLY1hkenhXYkRyZEltR3UvbEQzWnloTGdZQXZiTFMwU0VFVCtsd0YyZWsKdjhycmt2YjJpazZlTEZXSWx5WkYzUllVZ01NSEJvVVQ3dzcyQjg1Q3VQTXVDcGtNVjZaaEtiQmJFcUNoZGo3UUwrY2c1NnR2S21aRQpoS0lDUkxpWkFHRmx6cE81cVFCZDRYVzJNK0FOVUFIeTlvdnNza1dCQWZqd0NETDhNejNpK3pQZnZmZnRuMUhLRTNDNmp3YldRVThnCnpuQVNnTnFQRHhnSGdya3cvYUV0bWwxMGpVeXVLVllheXVRR0xsQ2NmeWhBbUFOaEI2Z0FzZVFhRkJWZG9hSXIxWFMxdWx3TlpFakoKa2lpaEc4blZOSUJlejdSYWhQVndac2VvQUQxUkI2TSsvMUdBc0NMbzhTbXcwUm9nRlFzdGhXYktGUXlaa2lGVjBNV0tDZ0FRSUFCWApVc0tTRkRQRlJReEpFVU5jVWlFdXBrczViQm1kSXl2bUtvclp5aEtPQW5xU1FGd01CTWpuUUJ3WnpRY08yK0hsd3plUU1ONmVNeVdUCnZNZkh4SDN5bzF2bEoxVUxqZFlNWWNhREZnTUJrbEZTYW9xU2EyQjJiRkYxd2VMcW5NVGFuT2lHM05UYS9QWGdkN2U4b0VoYVVDb3AKS0JNWGxJaHpDMFRabWNJZEdURDhrN2xKa0lrSkVGQ2lMRkYydGpnclQ1eWRyY2pKRVczZEx0Mit3bGdTVzh0THJLbktNVmJxalR4cgpkWld0R2lnTFMyZGdWZXI1T1FiVmNuMU5ncllob2JvNnJzWVFiVlZFMllUUk5rNnNuUjVuTDB1d2xVWFhsYWRZU3phYVNoaDZta2JOCnNLcVl0Vm91SmtEQWZtcE1FTXlCTUFIU21vQW1seFpyaTVaYml4SWFnUUNWSkRXVnhqVVh4VFNXTFdvc2o5MWRHdFdVbHdhZTRaYXkKMkpieWJUVzh5K0tERHVNWGc3cXpEdU1QZzdYZkQxclBldXRnNnpzUUlOU0JmdlU1MEhEVG42Z0R3V2lRajNGTzg5ZVVZTkVkTE1BegpIaWhWVGI5alVSOU1mYkJnejJpSnoxaVZqOU4rUTZvTFV4L2dQUkR6dDJpWk05emk3bHRxZ2FrUHRCLzFGNk1EZmhTanF5M2NVbGp2CkRITmVhTnJMdDljZFlYOEF3SHJkSjlpUHQvdzFUSDFjcFM4RCs0SGxQbU1WUDZqNjNHQS9Qdldaa1BiQ2VyNThPUytmL2ZnR0htSTkKWDk1TkxUNzdBYmlCK3FEMjQxa0R3eitZQUdIamZ5YmJqek5WZnpNQnVweW11cElpYTB1Vy9McFkra2Vpc0MyYWQycTdZSjlGUGRsKwpXdlV3ODFXbjVEZXErSzJhcXQyNnF2MG1FWENnL1dicEV6Vktud0Q1RW1FN3plSVdJeFFnUUxXR3E1UFRGZUpTaWJoRXJDd0JiL2k0CnV1SUtYVUdCTm5lYlBtdWRLWE5aOVk1RjFveEVXOGE4cHN3RmpabFIySkpSdUZNaUk3NHhJN1p4Ky96YURlYTNXejFlSkdmSFJ2QTIKblV3SjhROFlGYUNSdnVzQ2hJYUMvcWNDMUZmbTZtTTR1MWtPbU9QZ3VycFk3aDQ2MHM5d2RGZTZCM2l1L3JLaDdteG5kdzR5VUlIMApWcnF1OFVlR0N0ME9QdUxWOXZRcTlmb1VVaENzckEwTEpWTEpvZWZPZm4zaHdpOXZISHdaOFNKTjlzWUFXUGRLSUFUaW91WVFIVU9LCjRhNVNZRC9BWUZ4OUZjT2RzQ0xubG5CM0NaRSt1cnNMbXBscmtOWGV6cDk3ZjBpSW54K1ZHSEliaGZUNWFvWXJYVG0wVmp5OFN1aGQKSnorN2h1a1RvRWdLN3B2VHVmOHJBWnJzSXY4UThDMjR1dGkrUkJoMkNhN3N2TXFPbVVQRUIrR0NBb0lMYytkN1hNTEJUdnBRQjJQeQpQWXdIZXlSQVdUQUJjblN6NCtmZDQwZkJoWVhndzhpa0k2a0Z5Q1pOYjVieHlkVE1PL3lKQkxJZjZUYllkZi9Zb2huZFhYTHdLY2lBCjBOVmQ0YmpHZ0wxc1BhaHM5Y0tCeStBT1I3cHZLQVB5UllONmU0cDZ1OHY3T2xuOW5jQ1dSTUJhQmpwNFVIMnVNRDJkNVk1cmhZUFgKYU01dW9Ma2F6NGlzcDR2MjdOTlpPemJQbkhrYkhzNE5DZ3FCaTJsSkFYNyt1UEtTT0k5WERJekgyUUg4NXY4ajdqN2dvNnJTLy9FUApwUGNFUmZlLys5MmZycDJTM3VoTnBGbG82Vk9TeWZUZWV5L3BDYjBKQXZhMnE2d2lpQUlLQ09vcTd0cDEzYWE3S3BDZW1VeWZ5ZjJmCmM4L2tac2dFWEYyLzMzM3Q1NVhYVFV3dUtTejNuZWM4NXp6OGVBREY2Z2ZFMWNlYkJDRDhGTVJyVm9EaTZmTkRBSkwxWCtHT3dMM3gKc2l0OXpQQ0l3aUVwU1ppZUFnQ1VrWkdSZWZNTlgzMzI1K01mL3gwQ3lIRWVidjZhU2o5NHpwVTR6aGM1WWNCMW1mMU1oZjFVcGYxawpnNlZOYkpFWUxVMUdPeHNBeUd3VldIRUFYV3NKak5EUHBCaXNmSU5WYUxDSWpYaE1abmdDR2JDVTFjUTNHVG5BUXdZTDIyQm0yRzJzCkxXMmlYZTFpZk9OcUZFRElRRUEvMXdmUTFFM1Exd0NRVE05Q0JnSytFZWxpb3VmaVhUNHNFRGpxMk1BWGcrZ0VhTUZMcW9zQ1NLaGoKQ2JSTWtCOE5vT0pycEtTN2ZzcVVkcEduVE5INDV2bUtqc2FLTnRyOEZ0cUNGdG9pSnd5NFdPcWdMTFBUS3R1YWlybzVGUjJDVlRaSgpyWjVDMWxHQmdRQ0FXQ3B5azdLZW9xcXJVOVZ1VXRadlZzSzFNS0NmY1FEQjhnL0ZRQ2FyYTZzMXRKVldkVkhibHRrdGU1ZmFkOWZiCmQrbGFOTFlPWlVlSHBLc05IbU9vY3NnWlZrT3R5YnE2UmJ1a1JWSGVMaXpxNGhac1pSZHQ1WlQyY01xNzJPQzZ2THQ1YlZzejA4RUUKUDNJQW9HNkx1Tk1oUmZScGR3cEFrSUhRcS9ZV3J0SENaRnZvcTl0cDVkdWI0SUQzSGZUeW5mU3k3YXlGMjVtbGUrbkZ1MmdMdHRIbgo3R2F0N3BZK2FlM0dOQmNHN1IrTVdUNFB0L3g1b1BzVGI5ZEhZMXMrOTI3OTBydmx6eUMrclg5RkJvSmUyZjQxTUpBUFNnaG1rb1N1CmxjRE92OFhHdndPMlY4TnMrMHRnKzE5UmlOYm13TlpvdlNlV1BzR3VMMEdpWFQ2bzBRZjFPRWZibkQ4S096NkVnZk84NEJiM01RdE0KMlBnT01kVXJwSUZUdlVMajlBR0pTTjlBRzkyaGZnU3ZZUUswMit0b2lFZDAvTURkWGlDQVBvUit3azNSWm1mOGxPZG5ZNDQ2ak9vSApwdTZxSVYvUjB3NG41bnhCL1NENlFQMXMya1hzZUFjQW1sVDdpYXpiRWx2K2lhem9BQUNLTC84QS9SQUFBdnBCQUFKQkFCb29zL2JOCk0zNDNYL0h0UE9VLzVtdStMWlQvWTVIc0dGYy9wWDYybXlXZFdqRUJvRU5PRlRCUUxJQU80ODFBNkV3Z0JLQ3RUdkVXaHdTZzNHN2kKS3d6TVpnTjFzN1grQVdmdENtZk44cGFheFMzVjgxcXJTanFxaWpxcjhyZlc1RytybmJXamZ1N1d1dUl0OVJVOWRmTjc0TmhVSUNIZwpvYm1kRHpoZTNoSENzTHE2aHhDQVVxYmpTMkE0Z1BBamhrVUlRSEN0NnVjRGtHK29LZXhtUjBaNStDcVlLREFpQkE5QzhEZ01lM2orCkVaWi9pQjF4aStCYTJKQWtCTlF5cUlvTUdqeDlFcitQam1HaVE0OHR5RXlHTy9aVDAwamdhWEh4ZzNlLytlZFhYM3o1TVFCUXphYk4KNElsN1l5NDgrcVYyOHgyUk1UbDRyRUw5REFwRGJyRm5XQnovVUw5K3dKZU1tc0hoOThHbENFYmtOWnZ2QW45RWRsWmFTbnJDa1hrMQo0WTFtNy8wYS94bzFkci9oajJ0Z0JTZ2pQUmtBS0MrRDlNSEZ1cDhGUVBHZjFiK2ZTUjhleEZ1aEkyN3BsVy9GYzI1TlQwdUM4K1FwCmRmY0FBSUdmTmVwMnVsYjhnd0owRVF1Z2ludCtSVW9ud1pNa3N6Sk9MMnowVjl0ZldrbWZuWE5UUWdicEZ4a3pNNU5Jdi9nZjB1ZWYKcUxFQTE5UEg5ZllxZzI2V1o0QU5CRE1LWGgxZ0JrZTR2Z0VlUE5WNlhEOElRTVIxd0NYMkRQTGMvWnhSNExNaGdYZElOTm92Y3ZjSwpYTjgyUWpjUHlQMERFbUNna1Y0YTdDZ2E0bU5oUXpobysveFQ2YmJ1Qnl0TGY1bWFtSFR6VGYrUFJFcmlNc3NRZ1B4OTZDeEUyQVBrCjZSVk9xWjlZQVBsSGhmOGJBQnE2SXJ0eW1ZY0ExTnZQQVFBeXNtY25Ua3ZOemNzQWYxRGUvL3ppNzMvOXh5c2YvbjJPNFZ3OGdHTDAKYzZFVUF1Z2NCQkI4OVR3QVVLWDkxSHo3YXl5TFVXSGhtV3cwdlFNQVNJb0FaSEJFeXo5VE1NakttVElHQ3hNU0I0NEc1K3ZNY051OAozc3JXVzVrMkUxTnZaS3JOSFBDbktFMWNjSC93TDlMZU51a2tBTUg4RUlCK1ZBVUliZVBDVFFNWkJBSklCR05nd01DM2MrVTZIb2hNCng1Y2FCSUErS0FoQWdENThEUU9FaE9vMzhRWXE3YW1mTXZIMEdRZFEzZFRwbkRvRlhiU0NEbXB4TzdXc2pUclBTVjFncHl5MlVaWlkKUVJvVzJ4cFdXS2ozbXB2bU83aUZIZEx5RnYyOUprdVZnVktub3pUQ0E0R29BRUROeWdhYUNocW9SdGtBVXEyQUxVRTF5cnB4QUpFcApPbXFEa3J4WndWNnRiYTB3UHozTC9PcHN3OUVTNHdzc3UwbldyalYzU1ZvN1dlMGQ5TFpXanNVdTBwcWw5VTdlZzA3bWt0YW1raTVxCi90YW1ncTNOeFYyczBvNG9nTzVybzlQdERPRGNEaU1QQUtqRENRR0U5SU1BUk1RQmJtaGg4UzFOYTl0d0FPMmtJd0NWYjJNdTZta3UKMzlsWXRydHAzbTcySGJzNXREWmRyK0Zwci9FZGovNTl6UHBWMlA3RmNNZkhvMXMvOG5YK0VldjRqQUFRRENvQ2JmOGFCcS9jRVBXYgpId3l4ZlIwZXF6Z3VIaEFBSUJTaTVITWQvUkM5UGhQNndYZDR3ZGovRk5QcC9FSEUvRUhZZEJFRUxYamhIVDlRUDBIRm0wSDVHMEg1CnFaRHNqYkRrTkF5YTdTVjRiWXgvSE9NZEIvUUpjbDhLY1dEQ2JFaWYyTnBQR0YvNUdxLzlSSWViRXZvaERucWUwRThVUUZIOWdBRDYKb0V6VWZxSXR6MFQ1WnhlcS9jUUNLTEltT3Z3TGxYL1E4VDlUQWdqb1ozUStMUDhRQUJyRWkwRERjNjFEbGFaTEMrVGZWa3F1ek5kOQpWNjcrYTZYczA5Vnl0UGtMOWYwZ0FBSDliRFdLMnRYQ2JVYlpIcXY4Z0UyT0FIU3dWZnRvcCtsUlhEOElRQ0FBUUh2eDA0QjJ0RXEzCjJpWGc3NlRkSWhSYjJSdHQ1SG5PelhQYTF4ZTBiaTVxcnk3cHJDM3JxaXZ0ckMzRkx5bzY2NVowVWhaMWtDczc2c0NyNFArZXhWdmcKK0xDeUxYWDVQUS9aWHQ0UndEQXlkUk1wSVRrbkV5NWNyRnAwT3dFZ2VBRE1PSURpbjgwL09mNStlWGhFRlJ4U2VQb0Y0RG5xZC9IaAphdGNvSDU3T01xS0l1TlQrQVJuOGZYMVlBdUFDYTFGOVFzeXJIaDJnaDBLYVo1K2dwNUFTczFOdXpzNGxwYVdsZmZqUisvN0FTRERrCkdSb1l2T3UyMjdOU0UzUFRTYW1KQ2UxdDZ6Rk1qTGtOb1FFK0FGQmdSTzV4UnhkeGZrUkcyUDQrYmdSZUM5MERxaEFtc3R2V0prK2YKbHBPZFRrb21IWnk3SnJqQjVIdEFHMXluQlFCNmJ6V0hBRkJPR3VuaSs3V1lYd0VJOVY4RUVNQUsyclFGWHZvRzRiYzZDQ0RybHZaKwpLNy9uMXhtcENTbEowOVBvMUFJTTAvbUhlZEFpY1hjZ2dnRGtoeTNKRXdBcW1mT3JuTXlFckJuWnBEVFNCL2VKdmw0clg1dnphMUw2CnRCbTVpVmtKMlRsSjJjODlUd3VIMVhDcjE2QWdOS1FDZ25IM1Nid0RhbSsvRlA3dEd1RjZldm4rZnVXVVBVRHdMYjJpUUI4KzkyTVEKV2djZjFNWHhEYkVEZy9yQWtIcm9lNDY3bCtjZmxvMzI0eWYzOUN2Y2w0VUJUNU5yZERPRzJRODgwcENhVEVwTnl5SWxwdkJZNVdPWQpCZ0VJZkFnQWtMdFhCZ0FVVHg4UUFLeVJYaTRCb0l0L1lzNmNrUVZka252TlhXRHg5TGsrZ0FZdlN4R0FoaS9KK3dkNVkyNk5ubmtQCitGbUF2emZaMmRrMzNYckx2Nzc1RmdCb2x1NU12djJ0RXR1MXlqOFh5cHhuUzUxdkZUdmZCaWwxWGloM25KM25PTFhRZm9KcjBhZ3QKVElzVkFJaUxBR1N6OFFDQW9ndGVWd01JZGoxYjJFZzhhTE1ZQVNDZGhheXpVTFZHdXNiRTBCaFpLak5EWmFhckxVMGFRNVBFd09DYgorR3l6bEd1VXFTenFqaGI5cmxaNGR1dVBBbENiVlJ2ZkJBMTdnSzRKSUg2TWdkZ0VnT1JHT2dTUWxxM1E4RlJxcmtyTlZtbFpLajFiCnFvR1Q3U2NCaUt0cEpzVlA0NHBtQy9sSHBieG42b0QvRkY5R0t1bXVMK3FzTGVpdUsraHVLRzJ0VzJTcVhxMnVla0JSczE1Uis2Qm0KNHdZWlpiMll0bDVXdDBySlc2RGVWcWg5NFI3OUs4dDBQUnUwSXFheWxpOG5NNVIwc3JhaFhsdEhVZEpxbFhVMWlscVEyaGo5Z05CMApkUlJWYmJXeWVZMjJ0ZFR3d3AyRzgzZnEzNXVyUDcvQWZLVFd1c2ZrVUcxdFkvUjBNSndkUEh1cnFOVXBBaTVXVzFsTVcvTUdKMjFKCkd3VXdhTzdXcG50MjBHL2ZTUWJmallkYUc3bVdab09KMVdMaHRObzVMUzI4ZGpzZlpsdy9iZU94dFFndERyN1l6S2kyMFpadWFTeloKQTd1ZVM3ZlJDM1l4bDJ6bkZPeHVLbnlZbkwrN2J0NHV3WG5OWTVqb1hZL3BIWS9sRDE3SEh6MnRINCsyZnpMYS9xbS80M04veDVmKwpMWDlHd1JrRWw4Tmc4SzFoVSticVBwNkpvUDhLUHpCT1BMSG9JY1JEbkdTSWp5K05IdVVNRW1xOWFtYzdXdTBpVGpVY3M4Qk81NGpwCnZZZytlckRobUFhUDZxMHg1VlVUM2VFV2R4UTQwZjBWT05lQ2R4UWZhd29Ydk5BeFB4UDl6c3dYOEdOK2ZrdlVmc0tOc05rWmhOanQKRmR2eGd6ZjlSTmU4WWdzL3NQWkRUUGpDZDN2Qk1lOG9hT3Y3K09MWCtOU0xMZEdkWDZ0Nll2VVRXZG9XV2VJTUwzYUFFQWRBZy9qbQpXeENBaUNVd29COEVvQ3Z6OWZnU21CYmtlenpmVldpK0xWZWZaa2gyZHhoMmQ1djJPRlI3elBKRE9tbTdpV2N4TWJkcHBMdE5pbjAyCkVIaDBJUURRNFhiOTRUWkFIeVBJUWRnS0RmTkloK0hoTnQyK1Z1MDJwM0s3VGQ1dGtiVGE0R3hVdnBhMjByUnBkazhWK1A5WGNVZHQKVVhzTkNMZ29hYTh0QmVqcHJDL3Zvc0Iwd3dvUW5wcktMZlVnYzUwYk80L3RqWXhoTkFxZGxFREt6RXhQbmtaYXNlSld6Q2NMdThEVApqaHNZNG9Ibk4xRUh1bDRHK0poYkdoZ1NnRi9XL2FOaW4xdmt3YnVJd0Z2aU0vbGpmeWl3T0FRa01jVER4cVFIRDI2ZUJtc3dxZGxwClNWbnBDUi85NmVOUUVCdkRzR092dnBLVVFzcktTc2hLemZsbER1bWZYMHVBcU1hRzFhSEI1dkJRYzNCUTZjZFBDUHh4R2VRR2h6WCsKWVU1Z2dJRU5xOE1lM3NXTHRPd1UwZzJreE1UYzVMV3o3OEVlTkdIcjlKNzcxS01QR2o1Wkk3a2hJelVyTXpVck96VXpJZm44R1NvVwpGa1ZjY21DTHliZjlvUXg2NGNuTFdMODRkSms3MWkvRStrVGhTK0F6Z1k0Qm1JT25ObC9tUm5yNVkwTmlBSkhSNFdodDVsb0JONFFuCkR1RGZkdkF6eGJ6U3I3K1czbnB6ZG5wYVlpSXBtVWtEQUpJQmE4TEdyTGlQUlNIS1AvQWFEK3FETGlpOEpTMkRsSjZjZEdOU091UCsKKzB0dnVTazNDZndJY2pKeU14TklKSVBxWG16TUZoaHQ4UFp6ZlgwcThFY0FoUDFnQUxCaUlyeFdBSjBuWmJTUFB3cTBPaWdiQkYragpYM2g0Ni9Ma0JOS04yZG1rNldrcVdVa3dvSGYzY29DQnZFTndDV3prQ3ROM1dSR3ZINVNSZnI3bmlzUjNtUmNlRlgzd0orWk5jQjk4ClpsWjJjZzR3VUhZYUFGQnVYbHBXYmxwR1N2S0Y4M1hnUnpCeVJUaGxYTDBpZERGOFdSQ2JRZGdITFJ5OHdydDhoZTc2WGpqV0s1RTEKVmlZa0plYms1S1NrSnN3dG1EVThjdVhBZTVkdlViOVdZVDlUWUw0QTI0Q3M1K0JwaC9ielY4VUpwMkVVMlUrVjJ0NHNzcjgveC9IQgpmT3Z4OVpZOUNoTlRaV0hyYkR5VFhXQUdzY0pKcU9BZkNvdE5nSUxlWXJMd1VPd0dsY1hDTWRvWU9odGZDNStKVkpXRnFqQUtCQllHCnc4SnRNRXMzbWcwUG1oMFBtam8yR0xvMzZMclc2QjVlb1QrNFFuOTR2dTZwU3NPempaWXRQUzN5aHp2azREZTBBNTM2NkM0d3RQOEwKRHpBUUdnaS9yOU95dDhNTUFJVG1vY0lLa0VsanQraE5SbzFHSXdFR01oc2xGcE1ZblFSOTFYR0llQ3UwQnUrR1ZocGdGSG91d0JEaApJWFRBRDN5akRsNG90UnlGaHEzVU1XUWFubGpINHhvYW1ZWkdsb2JIVmJLRnFvYi9Hb0JLT3V1S3V1c0JnTXBhNnhhYmF3Q0FnSDQyCkt1cldhNm8zeUdnYkpOVDFzcG8xU3NaaWRXZVI5dmxadXVNTGRJODhvRFUwcXByWWNocGQyZFNnQWRhcHBjaXA5WW82SWczS2VyS3EKZ1lJUHphQnFHaWlxNmxwbDB4cXRzOXp3NGozR0MvY1l6K2ViVHBRNm5uekEzaTJ4UzlxY2pLMnRySzQyT01qQzNzSnRhUkdZblh4cApDN3U1aFZuVlNyKy9qWDVmUjlPS0RucEZOM1ZsQjdYVzBTUzBNQUNBSEJhMnc4NTJPQUNEZUcwT1BnZ3lFQUVnd0NrQUlLbVpXV3VqCkx1OXBMTmxGQndBcTI5RTBienVqYkJlemNtZFQ4Uzd5WGZ1bzZsYkQxNm9YeGlUdkVBRHl0bjdvYmZ2RTIvYXByLzB6WUNCZno1Y2cKOFFZaUhETXBVZTVzKzl1a3hOSUh2dHZXcjRnZzk2Q2dTZzlNeHhkd1pqdk0rTjZ1dHM5Q2JSL0g2Z2N0ZUNINmhNeXczb00yZWFGagpuY1A0UHErSThod0lXdk9LU044WTMrZjFPbXAyeG8vNW1kQVB4b01uSEJJQWl0SW51dkkxVWZzQkFFTDZHUWZRVmJ1OXhsdWU4WTZmCjJ1aFJoK1BMWG5EQzEwUy9Nd0lRUHVrOVZqL0V0aThJb05YUjJrOEVYL3hDK2drdmFTVUFGQndIRUtHZkh3V2c5eDhTUHFIVEF3RHQKZDZnT0dpUzdEY0pXQTY5TnlkcWhrKzh4S3ljQjZORjJxSjhwQWJTOVJiWExydHhpazdYWnhUYXJRR3lncnpQWEZuUlZJZnBFQWRSVwpBd0EwYmlBeVpGQTNTRzFzQUlBNlh0a0RBRVJ2WkFJQVpXVmxSQUhrbHdNQUFmMzhtd0FLdThTK0FmaWV5RGZnVmJSM0RQM1huK3dlCklyRUFPbkJnSXdKUVRucHlibWJheGZjK0FQd0pSY0lxdFl3MG5aU1JtcEE4TGJYNmdkdGRMdTJZWDRpTmFNSkRyTWdJQndBb01GN04KK3ZlRHVRWCtRUVVRVEdSVUVPcVRZWDcrUUwrMm9tUm1Ua0pLUWxaUy9zd2I0TUNIMVhBYmZQZ0J3NS91NDkyWW1RWjNnV1dscEU5TApQSHU2QVFzSnd5UHdqTUg0Ty85UVJLRi9zWUI3TUovUzU1UDUzUEQwSGE5YlBEek1IeDJCVytRaWJpa1FFaHBkRG84c2lpTkxiSUp4CkFQcmlDODZ2WnFRaEFMRWFDekZNaWc5VnZXWUZhRW9BZ1FkL2Fka2RDUUFadVRrM1oyVGRRQ0w5S2oxaFJucEtabFlPME0rbURiZjIKOXpwR2g3bmdMME5nVUE3WHZFYm84ZHlKejM4RW9GNU9zRjh5TXNqRGZNTEh0cXhJU1NUTnlNNGlrWkwwNm9wd1dPL3A1OEZscjBGWQpBWEwxc3Y2TEFCcTRKQmorWGpCNFJkRGJ4M0JmRXZuK3hlZlhGU1VtSitYbTVnSUFGWmNXdUVjSDkxejQxMjI2VXhCQXRuZWlaejNICjBDZDZBTFRqWElIOURBSlFvZTI5T2JiM0ZsaGYybWplcmpTejFGYk90UUNFWG8wMWtORU1Yb0pydnM3TVZab1pBbk16MHlocDFEc2UKMUQreFZ2Zk1jdTJMaTNYSEZ1aGZyVEFjTHpjY0FRL1dDc1BMeGNaanBjYWpjd3pINTVwZXFiZnM2R3lSNys2UUFBQTkwbVVnMnA5LwpNb0RRRmpBVXRCRU1CUUVJR1FoWUo5WkF5RDBFZ09DMWhpM1R3bTN6UWgySHAyRnpOVXcyUGtTTHBtTDhsd0ZVMUUwdWI2dGZhcXBaCnE2NEdBTnFrck4ra0pHK1NOVzZRMXErWGIxcW5wQzFUMjBzMVQ4L1d2MWFpZStsZXpkWWFsYVJKMGRTa29KS0JmbFIxTkJsK0VPSjQKS01vR0VLb0s3cE9uYW1nQVFQVXF5djBhNjN6RGtUbm04M09zcnhZNW5pcnMyTFdreFZKcjR5bXN6VzBPN3BaV3ZCbW9qZGtPSjFydwpUYTA4ZFF0WDRtVHg3RXkyclpsaGJhNTJOcEVkZEhBdE16ZnJ6U3lMaFdXMU1tMDJWb3VOQ3dJWUJBQ0U2Tk9PN3dVREFMSTVCT0N2CkhkbEt1N2VUVnI2enNYZ25CTkRTTGJTNWV4c1g3V291M0VHcDNNVjlSN0VySW52ZHJYamJhM3pIQndCay84RFQ4aWRQNjhmQVFBQkEKZ2ZiUGZWMWYrTHUvQkptU1FmRUpiUGxyYlB3OWYwR0ovbGNpNCtJQkFUZEg2QWwwZmdIY2d4SnEveHdHYi9FSlJ0ZTVQZ282UDR5bAp6MVhuK3NCSlh1OEc5ZStFZGRFdDdtSFZ1WkFTRHJWQUIveUVKYWRENHRkRG90Y2l3dGZDZ3F2MGc1cWRNYzd2UWE0NjRqbjJsR2VjClBySDZDVk9lQkxsK3kvTWsvWUJNNkFkdStJTDBJUUlCaEM5N0VmcUpyT21KM05kRjZDZThmRncvaTZNQUNzVUFLRlkvSUtnREd1bW4KZi80MUFmU1BlY0xUZFBXZVZ0M0RUc1VocmFETHlHdlY4YlpMQlh0TTZuMVc5Y04yWUNEWUJuVEFxVHpVcG9zSEVNaitkajBBME01VwplTWpoVnJ1ODNTRjEySVFxRTZ2YVFpNXJyUWJvUVNtS3VZWU02cWhCeTJGNGFvak1iZDNVZW5SWEdNTzRiTUVrQUVYY29uOGZRUEFVCm1XRTRsUlBxWjFBUTZlZUhlcmxZZFBVSHZ2RS8wVTl3SEVEaFlUNkd5ZmJ0ZTJqNnRDaUFzdEpTMzMzN0hRekR2TjdSc3ZMOHBFUlMKWGxaMklvbDBZTmNEb2JBeU1NcUtES21DL1p3eGx4QUM2TWRYZ01aY1hQOGduQ2FCK1JUK1hzbVloenVHV1Rtc3VVa2tVbnBtMnN5TQp0SStYY3lOcnRhN1ZNbXlOK29NVkRBU2dqTXprVk5MMFV5ZXFzYURncHdFSXU4ei85dFZsM3g5ZDR2Nm94dmN0RXg3Q05Db0QraGx4CkMxMHU0UWorQ1BjTzRhdUg0THY5UTcxTndSZ0FnUjhvQU5ERjl4dG5aaWFscFVJQWNlZ0FRQkwva05nM3hJMy9XSlJyQWFpczVQYU0KVkZKV1d2TE1ySXliVWxOdVRFdkp5MHBQVHB1ZWYwZlNYNzdVaE1OOHp3QVRidG9hbG80TzBQeHVSangzNHZPZkFNalR4L1gxaTBjRwpCZGd3Ny9HMlphbEo0TzlESmdDUTFiUWdFdEdCbThObHJ3RXU3S3J1WS85WUFHWG5wUHpzQU9yclk0MWVGby84bFVWZlB5c3BPVFVuCkx4c0FhTUdpU3EvUDFmWGFWM2NhendJQUZkcmZuVlQ0Z2RNd3JPZGdUY2grTmgvUzUzU0o5UTNncEFMYmhXV1c1MnRON1dvelcyUGgKNk8zOFdBQk5vazhzZ0RTMlJvTlpZREtJdFVZVzM5aE1OaW9lMEc5ZnFYdWkwSGltU0grMlFIK2hRUC8yWE1QYnMwd1hicmVjK1kzbApOTGk0MC9UT1hhWnp2ekcvZGFmbDlHYmJ2clpXNWM1TzBZRk9QUUlRV3Z3aTlQTVRBRFNsZ1RUalJhQllBeEhvaWIwRzlNRVBzT2J3CjlVMDhMWU92RkFoa0RLYXl2bHJOV0t2Vy9kY0FCSDROaFF6cUlsZTJRZ0N0VTFkdlZOUlZxUnFxNVRRQW9JMnkrbzJLVFE4cTYxZXEKTlJXYXcvbmFrM04wYjgzWFB2bWd5bEt2WUZPQmNwUzFGRVY5bzVRS0dFU0VpcDhUVGRNMGdGRFZkSnE2aHFLdVg2ODFMakk4VTJnOQpVZWg4cnJSOWEyR0hwYXhOc2JTRlVldG9sam5nWU1qT05tNUhHNzNkeVdseGN0RmhoaFk3eDJpRm0vcDBKcWJVekpSYldDb0xVMmRoCkdTeE1rNVVGQWcxa1lkdXRIQWRna0FOT2cyOGIzd3ZtYUJNNm5VTHd6blJ6NDZvMmF1VjJXdWt1MkFPMGFCc2xmdys1WkUvVG5PMTAKZWFzcEtIZ09rNzQ1b24zWFp6anZOYi9yczczdmMvN0oyL3F4ciswVGZ4c0VFQ3dDZFgwUkRWNE5JaVEwWlpCdjR0OCs4UTVYb3lmWQo5UVZJb1BQeklKNUFCNzZ4Qys3dGdrdGRpRDVCNThlUVB1TmRQa1NqRHp6TkdhLzNoQXh2aDdRd1FjMWI0L1RCVC9mQkQvZ0pTaytqCndnL1FUMWh3UElRUHRZakF3VjdSRXc3aFZxL3h3Zy9HQXU3NUhVaUVBWS81SVRaOHdXVXZmTU5YdFBhRDczVVBrOGYzdWwvVjhqeXgKOGhWejJBK2Fid29uZkJFYnZvaURudUZaei9pUlA2anBCeDc1ZzUvNk0xSDd3UUZFNkNlOHFBVUE2RHI2aVMzL0FQMU1BdENsZVRyQwpRUDJGaWkvV3FRNXBOVHNjMGwwNnRsWGYzS0VSN05XcTl0djArKzNhL1E1NFV2TmVLOW9NcjUwRW9FTmRKZ1NnaDl0MHUxcDFlNXphCmJRNEZBRkNyVFd3MmNSdk50Q1cyNmxMQW5kWnFJa1hqS1c3ZlhOeGVqWmJEWWt0QmMxbzJPbjYvSFFCSUpsRUNBT1ZrWjZaTkk2MWMKSGdWUWNCZzh1ZEdFQlBnUXZRNkQ4RE9kUmY1Uk1YZ0pEMDdFSDdwaGp4VDg5bzgvZEtNQXVzNGRmaUF1ZkIvVGlBQjhwcnQyclFNQQpnbnVTQVlBeXN2LzR3ZnNBUUgvNTZ4YzVlWWx3Z0VibURUbHBwSTh1TWtOQi91aFFFM1JQUDM5c0JCWWhZQWRNL0oydm0vQVFBenk4CmZlQXpkMG5DZzdLZ2l4RUpLUThldkpjRVBvR005S1NVeENjck5tT2JUTU9yQk5oYXplZXJPRVFGQ0FEb3RXT2JzSkFRRG5uNENRRHEKRXc2OXZOUjdxQ3owNUlMK0o4dUhqeTBmKzV5Q0RZaGczSXJRaUhoMGdBY0NKMzhOd2ROOTRza1NtK0FrQVBsa2I1MnJ5MHROU0U5TApTaUlsOHhqRkdDYkdBZlFEOTBIeGpmY1NnZTlKUmVsdEdhbHdUOXlOT1JrM3o4aTVNVHMzUFoyVWtVTTZmWlF5NWpjR1hHeDQ5bUMvCnhEZEVpM2c1cmw1NGROQVA1ajhCVUtDZjV4MEFBQkpoM3pFT0d4ZWtKVThEZjZWSjA1SmFIWXRDSVJYNEF1RzRyZ0VlOE0xb1A4dDMKV1JaUG4zZ0FYZndqWTJZdTNKeitNd0tvSHo4REdsYUFlcG1lSzdLQkx4bDFxMjVMU3M0QUFFcE1ubmJmNnBWZXY4ZjAydy91Tko4RApzaWx5dkZQaU9JOUNiSG92c3AwREtiV2RMYkNmQXdZcXRwM0JoNlNlV1cxNWxHNDJ3ZzNxRm56Zis5VUF3dmR3VFFFZ2hhTlJaK1liCkFDQjBqWTA2NFZydGpubUdsd3ROcHd1c3Z5ODJQMTltZkhLZThiRks0eE5scG1lTHpFZm1tRjh1Tkx3NjIvQjZ2dkhWdTAydnp6RzkKV212ZDA5NmkzTjBobXdTZzJQd0VBSmtNRXdBaURnU0NDMkU0Z0VCVXVpaUFpQXNFSUtRZmlaWWwwTEk1T2pvSVQwWG55eHFwY3NZYQpwYWxDdmY5L0hVRFFRTjBOazFMYWRSV0FsaGtoZ0RZcDZ3R0E2bVMwS2htNVNsNjNXYjU1bzd4NnJWS3dRTE9uUVB2YW5mcjNTN1JIClY2bDdxcFZDaXJLaFVWSFhKRytnSzhoMFZjT1VJV3ZvalpwYXFycHVvMWF4MUxpdnpQNTBjZHV1c2s1VGVadTBwSU5YM01GWTFONjgKb1pVdGJBSGlZWFcxMEZ1Y2JEeGNwNE5qdDdOdE5wYlpCcmpEc0pzNFZqUEhaSUVrUWtFR3drdEJiTHM5Q2lCaU03eXpYUVRlWXJGdwpPSmJHQjFvb0M3ZkNJaEFBVU9udWhyS2Q1THYzTmMzZkpucFR2Z3NUSDNkTFQvbTBmL0RxMy9JYUwzaXQ3L2tjRjVHQkFxMmZCTnMrCjg4Rm1vTTlRZkYyZlI5UHpSYnhzWW4wenFjQkRCSlY1WWlzOXlEM0VudmFyTjNiQmt3ekREa2dmaEo2UTdTSjBEMTcxd2VrejN1Q00KbDN4aTZZTlhmVTZCRUd0ZTQvdmJyenJaR2QvcUZWM3d3cXMra0Q3b2hFUGltSi94RFYrQVBzOUU2VU4rRXRFbjJ1K005SFAxYmkrcwo1bUdRc2Vyb2VLL1l2ZTZ4MjkzUm1JdUpydWQxVzlDZXIzajlvUExQUk9NenJoOFFOUHVDYVAwaHlqL1I5dWNGVXdNSUdRZ0NxTVJ3CnFWSjFwRm0relNwdE4zSE0ydVl0YXVFZWgvRVJoL0dBUXdkSGx0cmxBRUQ0Wm5qTmxBQTZnSytDN1VFQXNxc0FnTm90WXFkSndEZlIKN3pmVlZyVFVsTFpVb3dBQUZiZFVGYUswYml4cXF5cHVxeXRwSjVkMndINmdpbTV5UlUvRHJOYU41aGQ2QUlBTU9qTnBlaFJBOXkyRApQVUFFZ0lpbjhuWDRFaHFBQUhLUENrZGRzQTRFM3VKMUNZZmNVVHo5WEFBYWN3bXhNZW5XcmZmRkF1amlCN0FDZFBqUkE5T21rN0lCClB4S1NGMVRrK2QyS3NRREhOOHlNdU5UZ21RMGROaVRCZTRyajduemRZRzRlUFBzWWZEa0QvTWl3Tk9SaWhRUGlUejlyeXJzeExUY2oKbFpTU3dMbTFKRVMydWUvalkydVZuOTBMQVpTZGxaYVZuUW9BZFB6bDlWaEVEQUQwRTNxQXhvWkZJOGRYQlBZVVlYdkx3ZytYK2crVwpqVHhSMGZ0c3BmL3NnOWluTk94N1BqWWlneEFaRVhuN2VhSCs2L1VBNGVjN3c0TUVZd0gweHFuYW5LU0V6SXlVUkZJU24xbUVZY0EwCnNDczUvc1BqRXd1Z2hmUHVUSjVHQXQrS0cvUFNVNUtucDZZa3BhV1JiQzNyTU13NjhqMDNQS3oyOTBvd3Q4aDFoUktFRTBNMThkeUoKejM4SUlNK0FlSFJJZ3YyWmVsQldscEU4UFRzN2MvcTA1QzNkeS8wQjJUaUFCQWhBM2t2U2VQcGNCMEE1dWFrL0k0RGNWNlFBUUpjdgpNNzI5eWl1ZjBqY3MvblZpWW1aT0hod012S21tMmhmd2l3NitkYnZoWEtIcFpJSGo3ZGhSR0xHblFwZGJ6eGJZM2dJR3dzOC9QRjloCk83bkJ1bGRrVWFDemZLTDZnY2RBRXdBQ0Z3SWlhTm5MYU9ZcGJIdzRBRlZINDJ2cG16V09SZHBYNXByZnU4dng5aExEczh0MSs5ZG8KT2g1VTZ6ZW9OUnZVbGdmVjNldFVlKy9UYkZtdTJibFNzMk9KN3NBaS9XTU1VeWY0WmV6aGR1M1BCU0FMRGlCa0lNU2dxSUgwZkJCawpJTVFnUUovWUlBQ2hBNk5CdVBvbXRvN04wall6TmJVMEpYV0QzTHhBL3RqZHFxUC9OUUJWZE5hRGw2VUFRTTY2RmNhYUIxVFZtNVgxCnRTcHlnNFJTSXlkdmtqZFV5K3FxcExVUEtwaUxOVjFGMnFPM20vNVFxRHV4WEwxbmswcEdWVkFZY2lwVFFXT295QXdOUEI0Nk5zMXEKTWdoRlMyOVdOelNxNnpkcmVDdE10b3FXenBJT2ExbW5wS3lkWGRMQnp1OW1nc3hyWjJ4b2JSWTZtNjFPaHEyVkMySnZHUzhDT2RrbQpKMHZ2WURvc2JKdUZEYXhEQUlnd2tObkd0anJBKzBNQUlmMTB0WWtCZ05xZEFxZUZKemJUTjlncFMzcW9sVHViZ0lFSzlwQXJ0MVB6CmR6TzU3U1kvNjdtdzVQUWwyVWtBQ0svMm5NOXdIbDhGZTkvcitDTXdrTC9sNDJETEo3QVUxUDZwRHc4d2tMY1RCaGdvbGpXeG1kSTkKOE8yNGUyRGFQMGVKTG5MaDdnbTI0ZWlaV08xQzYxd1RJeXlDVnVpZWtCbDN6M2lYejdoNzRQYXUyUDN0d0QydzAxbDZha3g2S2l3KwpFUktOSCtzY2M3b1AydWVGZHJtSG83MCsrTW5PTVZXZldQcE1ISEtJNzNXUDFEK0tFcnZzRlozckhpMzg3QU5CNDcyUWZnajZUTG5iCkN3MjdRQnUrWU5memF0ajFQRkg3R2UvK2dZdGZpMXZIRnJYRTZvYzQreWRhL2xrSUFUU0VBd2pwcDNmQkJJRGd5M0VBZ1h4YllSb28KVkwzM2dPd1JwZEp1RWJab09idDAwbDN0VVFBZGNLb0JnRkFSQ0dEb1VLdCtFb0JBQUlEMnQrdjN0dWoyMkRVQVFCME9SWmRGMG0wVQpnWCsvNm8yVVNtY05DTUVnQUtBQzUyYVFmT2ZHZkVkVnZyMnV3RUVwZEZKTDJtaGxuZFNLYnVyZExSdTB6M1dFTU14aGEwVUFTaWVSClZpNjlCZk5Jd2k3aHZ3OGdiQWlPelhLNUJkNVJORGREUE9hVnVUMFRwYVByZk95L0ZaY0FOdi9pQU9yc1hFYjBBR1dtWjd4MzhTd0EKVUZNVExUR0psSmVlbDBJaTZiVGxHS2FBTytxSEJTR1hESC93UTRyaEc5bmk3bnpkWUM2QnA0L2pjOE92RHR3aFBNd05lNFdEZy96Ygo3NWlSa1V4S3lFNHZ2K2wvK21wMXZudjVnVFh5ejVaeEVZQ3ljOUlBZ0k0ZWVRQWJnd090ZmdLQWdOaGNiNjcxUFZvUk9GVHVlYlRjCi8yaEYrSkZ5N1BDODRRUEZnOC9PZDU5L0NCdUFtN0M4UStDcHp4MGIrY0h0NndJQ1FPQmJnZm5scjc5YWs1MllsSjJWa1VoS0VITEcKQVJUM3NmSHg0MGFaQU5EQzIxT21rM0xUMDdNeVUyYmVsSmN3blZTMTZiWklhSzkzZ0lsNU5FUGZjb040OGNuWEovUDFLUUtEMG5qdQp4T2MvQVpEdkN0TTFJUEtPS01ZK3FObkhuSk9SbkpDWm5UR2RsTEJ2NzJxZlgrd2Q1TUNaN1lQQzRUNkJaNER0dlN5T3B3L0tNTndHCkwvVmY0UU1BdmY5Qjg0MDVjSGY2encrZ3kwSUlvQ3ZxZjE2azNGZHlZMUpTRGp3L2FocUp5ZVVFZ21IbXJsTy8wWjB0TUw0KzEzWXUKMzN3R3BjQnlGcVJ3ZkRnR0FsRCtlRmxvZ2UxWWpYV0wyc3hHbFI0Z0hxdGRpQUFFRFFSTFFWY0Y2Y2RnNHFwTWNyV0JKZFZSYUZySgphdDJoVXNPRk9iWS96bXA5YTZYbXhUV3FRK3ZsTGJVeU1VWFczQ1NqMDZXOFJvbXdUaUd1VVVnb2NrbU5RcmRSM1M0ekdIZmJaZUFYCnM1OXJDUXdBQ0JrSUFRZ2tGa0RRUURvSUlHZ2dIUmVFOEJBQklIanFqNWJKMGRQWUdoWmR6V3JRMEI5UUt4Y3A5cytWdjNxYjZ1Ui8KRFVDVkhYZ1JxTE9CQUZDMW9yNU9TYVpJNnV2a3Rac1Y1R29wdFZaU3YwSFJ1RlRqTE5FZHVkMXlwdER3MmpMMUl4dFZDcHF5a2EyZwpzMVhOTEcwRFMwdGg2NmhFNE1nd0RSbUVvbTBFREtLckdxcTFUU3VzZ29wMmVVbVhwTFNkTTdlcnNhaVRDUXhVMk1VdTZHUXM3S0J2CmJtbmlPcG8xclJ4ZEs5Zll3clU2OGJudVRyYlJ3ZFRaR2VBbGlNSE8wRnVaK0ZrSXpLaUJiR3l6bllNQWhOYS9nSDY2V3lHQU9oeUMKTmd2c0lLdTJVWmQyVVNwaER4Q3NBeFh0YUZ6ZEkvaTlkanZHT3Vybm54cFFuUEtwVG5vMFoyRVJ5UHkyMS9xZTEvNEJNSkRmOFZIQQpDZGZDVUdJWmhGZUR4dGZGcms2ZzgvTkpRZTlQdUNmWTlobVJVT3Rud2RhUFFBSXRId2FkTUFISG4wQ2dlMndmNFNVZnVOUVZNbDhNCm12NEFBN3Q4Sm1aNEVmUUp4eXg0d1pMUCtFU0xNZEdKc09BNEt2eUUrZU9yWGR6ZkEvZmdKenUvQ0JPakgxajFvVDhMRW1sNkJnVE4KdFpoWTg1cWtuOXJEa2JxREViamI2eXI5NEd0ZVUrc25Ga0RZUXhCQThmcUJoWjlWY05vWDJ2WVZYdDZPZ3ZRVFh0UUM5Qk5aNkF3cwp0TVhxWjNRaERLR2YyUElQME0rVUFFSUcrdWQ4NDVVUzFiOFdLRjZteXR2VTRoNmQrR0d6QW80cEhRZlFmdkNMRkY0RWV0aXVQTmlpCkl3Q0U5RU1BNk9FV0l3U1FVOTNWb3VxeHlMY2F3VDhaUEthcGFSNE9JTUpBQUVCRk9JRG0yamZPdG02K3gxUnpqN0ZobG9reTEwb3IKYXFHVXRFRUFxWjlwQXdEcWFPc0dBTXJMeWt3REFGcnkvMUQ1SnpERUk1YkF3T1B6T29qQndETnBrQWYwZzNsazJMOVlZMTgxWXIxQQpEd2dmOEhFTzh1OHNwVjB6TGtGd1FBQUFOQmFSdExZdUluYUJnZC92UC83MEhiZkxsNTlmQ095V2s1U1ZrVUI2NVhnMUZvQlBhOThnClZBTGNOVDNNQ3J2aFp2akp0LzJoakEwSTRBUUd0OEEzeW9Nbk4vYnpnaTZSWjVTN2FONHQwNmFUTW5OemJwaVIrNmY3Mk5ocW1mc2gKOVYvdWt4TVZvR1FTNmNodjEyQVJXSG42Q1FBQ0h6SjQ2bDdQbzZYK3g4dEhuaXIzUEZFZU9GUWFQRmlLSFp6WCswalJsUk1yc0g1eAp3Q1gydXNXZWZsNTRZREpUSnBFRkFRaWZkU3BFQURwK3RDWnpHZ1JRQW1tNmlGc01BQlFZbHYxWUFJWGQwdm1MYmtsTklQMWl4azNwCmFZbTVNN0pTa2tpdkh4VmhZMHIvSUJlOEcwQncwTTF4OWJKQ1E2cUlTKzNyKzEvdkFRSUFjZytLUGNOeTc1djNiNnU2TlhYNjlQU2MKaklScGlVOCtzZEVmRUFIMGVLNUl2SU9Tb1Y0K1BJN29paVNlUHRjQkVFRFB6d1dnZ1VzQzEyVUplTm5ieXdVQSt2ek1obmwzcEtXbQozcGh6WXhiNHY2RmFid2hqV1BQMms3Zm96K2FiWHA5dE9UUGI5Q2FST2VZemN5MW5RZkt0NThvdFovS3Q1eEdBU3V4bkYxbGZvcGpiClRHWWFvUjhRV1BpNUdrQVdHM2lqRUZ3Zy9laU5ISzFPcHRJeStCcFdqYVoxaWZGSWtmVUN2S2Z0alVyVFM0djB6NjFRSDdoZjJWa3QKMTFPazRrWUppeTVwb2toWk5DbVRJNll3SkN5cVhLSFZpM1k1ZUxzN3RUOVhFelFDVUx5QkREbytTTHlCNGdFRTlBUEMxdExZcXFaRwpCZjhodVhtK2F2L2Q2cGR1VXgrL1Ezbmt2d2FnaW5iWWhWRGEwVERQVWJkQ0QrZDVJUUJSSmRYMWlwck5Da3F0cExsTzFMQkpUbDZ1CnRaVG9uNy9UK2xxaDRkaFM5Y0ZOYWpWZFNXY3JtamxxQmt0Zno5VlNlVG9hRWZBcVIwTUJvZWlvREEydFdVbXAxamJjYTZOVWR0QkwKT3BuRnJhdzd0emNWZGpWWHRuTktPOWh6dXhpRjNZM0wyNXVxSEhTUm5TRzNzN1IyanNrQldXTUJGM2FtMGNaUXRqQ1VnRWYyWnAyVgpyamN6Q0FOZEUwQWRBZ0NnVGd0UGJXSFcyc2pMT3luemNRQXQyZFo4OXg0NnZVMyt2ZkJ3aEg4aXlEN2xWNTRaVVI3M3FzK2dWVENQCjVROGVHelNRei80aE1KQy9aUW9ENFF5QzdVRlRKYnBlTnJGd2h0Ni83VFAvSlBxMGZBcmlkLzRKQktESGIvOGpTTkQyeDREMUE1RHgKcXMrNGZnenZCdlR2Z0FENkJEVnY0YjArRS9vSks5OEE5TUhiZlU2aVRtZFU5UUVBUWgwL1NEK281SU1XdkFqOTRLTXR4cXMrSURoOQprSDRtQURTaG55Y1FnTWJxSG8zVkR3SlFySDZJR1JleEsxOFI0SjZKOHM5T291a25tclZid3F1djBrOWtSVWRvV1J0SWNHbHJlRW4wCnlCK2duekErOG9JSTBnL0tsQUFDK2tFQVFnSDB1VHhmVHdEbzIwcmRhS0h5M0RwcHAxQzRVNjg0NU5ROGFsVWNzQnNRZ0E0NGxRU0EKSG5IQ3N4QW5BZWdSdkEzb1FKdDVqMTBIQU5UVHB0bGlWZXd3U3B3bWdkRE1CQUJDQm9vRlVMNWowMnpyeG50TW0rL1VWZCt1cnJ0RApRNzdIU0o1cnBSUTRHdTV5cmxjKzFRSUExTjIxRFFFSVZvQ1cvTC9RaUFCMVFNY0NLUDQ1VFFRYkZIb0d1RDYzQ0lpaDc2MjFmMysrCmJPaU4xZjRQYTlCRE4rS1dnSVR3UFdMQi94aEFEc2Q4QWtDcGFRbWZmUGJPWjUvK09RMU8wU1psVGsrLys1Yk1mMTFTWXg1dWNFZ1IKSEZiQjlUZzNKekRTSEhaemZiMndJUEdqRXVrVEFRdDZYQnpYVUhOd2hCbm81Mk9qU2l3c1lUZXVTSVpiN2pOSTZRbXZGRy9BMW1uNgpOMmcrWHlhZGlXYUJaYVVBQVAzMm1aVllXQVRQT1A0SlBVQWVpZmVOMWRqakM3QW5GNGNmcXhoOXZHejB5ZkxoSjhzaUJ5dDdEeGIzCm5WcUZEVXRkUTN5M0c0NlN1SDRQMEJRQUNpaU8vbjV6T2lrQi9MUUJnQ1Q4VWd6akFRRDVCcSs1bTR3NGptZ1NnQll1dVNVdGtUUWoKWTBaT2RucEdWbXBLSXVuQ2FUNFdxdk1OY1YxOWJNOFFaM1NRR1hUeHZBUE0wY3ZOWThPVHJUTmwvaE1BaGZxWXJpR3hlMEEyZFBUZQp0alV6NGZDNG5Jemt4SlFYZmxjZkRJdThneHpBR3QrUWRQQUtEd0RJMzN2TkpiRC9iUUFOWFJHTlhCSURBQTBBWVY5V1h6eSt1dUNYCnBQUzBteEdBN0sxdEFFQ01IYWR1MGI4RkFEVEwvT1lzNHh1eElSaFVabjZ6d1B6V1hCdWNtRkZzTzdQWStnTFZZck9aNm14V0FjaVUKQUVMNklRQUU5S016c1BWYW9WTEY0Q3FsR3pUNzVwdGZ6WGVjS3JTZktEZStmbGZyYTNOc3I1Y1lUeTdXSEYramVINkRkRytOcEtWZQpwSzJYOHFsaUprOVl6eEhUbW1ROHZZNjF3OUc4clZ2eGMyMkR0OFlZaUFDUVVTOEFJUXdFQUlRTUJBQUVYaVZXeE5BUlFVTDh4R2VXCmhzNVdraHNsNHRXaS9iUGxwMzZwZWYzWHV0L2RxWDZNVk41RC9aR1o3SnNmekFSOThMNUwzRDExWmUwMTVSMjE1VzIxaSswMWE3VTEKRytXMXRiSzZPam5jM040b285T2tUVFZ5Y3JXc29WWlc5WUNTdDBTOWQ2N2g5RnpER3d0MFQxYXBWVXdGaGFOZzhkVkNxWlllUFFEYgowQ3d3MFBuNkpnQTlwb2Jjckc3Z0tScWFOQTBVSGJsZVEzMUkzN2pBU1MvcVpKZDJjb3E2bXZFMGdSUjMwNHU3bTFCV3RWRTJ0dERvCmppYVp2Vmx2YXpiWTZWcG5rOUxaQ0tKeU5HcnRqVG9yVFc5cE5GaWJUUFptazVQaGRIQkEyaHpjZGlldm80WGZoUTlHQmRuaUVMWGIKK2ZZV3ZyNkZ3N1kwcm5jMkxOeEt6dDlETHR6YlVMU1RjMGF3QzJPODNDOCtodkZlQzRsUHVaU25SOVZuVUJISXA0L3VDUE5iTGdLTworQnd3Z1pZUEE2MGZCZHMrQlFFTWdzRkJNMFhRZjhXRDNoK2Zydm9KZ0JTUmdCTUdWcGdjSDRYc0g4SHVacnpZZythVm9nU05iOE5jClZlK0JnWHZhRldkQmlPMWQwVjRmdk5FbmRyVUxuZTRUNGI4RUV1YkJxZzllK0lHbis0QUVXRWZDekNOanpiL0Rta0NlRHpVKzdhVS8KTWNwNEVtdDhLa0o3TE5UOFZLZ0pGbnN3OGhNUjZoTWUyb1I3RUgwSTkyRFZqOERnOU1HcUppYWJqbTNlSGRtMEs3d1IzOStPZ3U5eQpoL1VlL0pnZm1KamRYa0E4YU13N1FaL3c4blpBSDJ3SkRGcjV3bHQvV29LTG5DQ0JoVGFRMkFwUWJQdHpiQWMwVVFHQ0JzSVRMZi9NCmgrbXJWSDZ4UlBQUFN0TndpZllwaG15TFhibW5WZjJvUVhHZ1JidlhDVGQyN1czUjdIR285bG9VQnl6S1ExWTFYQVhEVHdONnROTVUKdXh4Mm9NMjRyMVcveDZuZDZWQnZ0U2s3emRJV284aXU0MVAxdEh0dERZVnR0VVd0MVpCQjlxcFM0L295emYxemxEV3pGZFd6NUZYMwp5RGFEekpGWEZTaHFpaFcxNWVMN3hkdTBJU3kwWi90dW9JcmN2SXlNSkZMeExYbmVQOU14djhRenlnME5pckZCY2NERjlMdVpnVUh4CitLTFk1SGo2ZWRpSUVIT3h2U1BOM284ZTlEMHlHM3VrWXVqQXZQREJZdCt4bFo0ekR3MSsxUmh5eWNMRGZKZVA1Zk0yeGQvaCt2RVAKODBKRFBEZ3VBOU1aOUF1bWsxSnpjN0t5MGtoNTJXbGZmUFpsOXpZYktXRjZWazVpS2ltNW1mb3I4RDd4ZC9oUGdoOVhEVVhvSCtTRwpYVUxNTDMvMnhQMTVKRkpHUmtKYUJxbG1kbVhrQVMyMlJ2dkphbjVPUm1wdVZuSk9abElTaWZUd3d4c2ptQlIyTDhFdW5NbjNSQ0c2Cm80aWd0NFNDeHAydGxlU0ZNNTlXei83bWNESDJ1eFhZQy9OOUIvUEhIcHM5ZXVoMjErdkxNYmR1eUNVRERvajA4NE53cU1oa3NrUzkKTWdJcmMrTWQwSHpna2xId1BSeFRQWHF3SVdrNktXZEdXc0swWkFHM0dCdURneW44UTJ6MHAwK1pJTDZZaFc2RkxJWDVGQXVYM1paQgptcFozUTFKZVFrTGlqV2s1MmFRL2IxK05YZUlOK3lXQW0xZ3YxSXdQK2xnY3ZBeis2TW5XaVVjUGNRMjNyUGZ6d0ZjM09zQWRISUluClFZZjdlRmd2UHpUQUh4Mk9GZEpWNmUrSFk4V3dyNXI3SHk5ZldINUxaaktjQ3BlUU1PM3M2MnZHUEVib3BEN3U2Qlc0Rjh4MWhRdFgKeE9JVWhUSjBxZGszSVBNTU1JTWUxcWNmOFcrK2dRUzhrM0pEV25adUVuQlBhbVpPYXNyTVpGSjZSaUxwN1RkNHdSR3A2d3AveXNTVAphQnhHNHQ1TDdLSExDdkFKajMzUFBmUFVvbC9lTkRNM1BYTm1MZ0JRMHI3SG53aGg0YnE5NTI3WG5yakQ4bTRCUk04WklyTk5aNG5NCk1wMHVNTDZkYno1emwvWE5jdU1idGFZZGNpdkhhR1lUNS8zZ21SQ1B6U3BFc1ZvRUpyUFFZQVNTNEdwMUhJMktLMU93R3pTVytlWm4KWjl2UEZ0bk9sTmhPd2FVMzIra0M2eW1RUWd0TWtSbW0ySFJ5dVhidi9Zbzk2K1d0RzJSV3F0UnNNb2gzdEROM2RjcUlDaENjZ3hHagpuME5iSUlEMmQxc2U3cklDQU8xcU5XMXo2SHVzV21JWXF0bXMxbXFsQUVBbWc4Um1rbGx4QXhFTU1odUVLT0FUQmpFWitVWUREd1I4CjhobzlSNlZuQXdrQkJpbTBUS20rV2F4bjhuVk10b2JKVUROb2ltYWFoRlBGMXk3bjc1c2pPWDZMNnR4djFLL2VvM3J1WndOUWZKbG4KVXNxN29nQUMraW1IcVFXcGJLMWRiSzFHQUlMNlVUUUFBQUg5MEdTMFdnVUZBZWdoSldlcGVuZSs0VFVJSVAzVG16VWFwb0lXQ3lEdwpkUUlBSVFOeGRIQnVQREFRQWFBR05RRWdabkVYQWhEVXp5UUFGV3h0bU45RFh0MU9yV3Voc1cwMHNZVXFNWU1mS0Zsa0o4dHNGS1dWCm9yWFFET1pHazVWT0FJalFUMmRyVkQ4Z1BXMlNkcWVneGNFMzI5aGlVMU9kbFh4dkQ2VjBOK1dlM2VTcURzbW4vUDFqN0tNRDRtTmgKM3FzKzBRbTM0dlNvOGswSUlPMjVLSUJNNy9xdDd3V3NIOENXSVBzSGlFRSs1NTk4em85UUVHdmlnMnBGQkhxUWRTQjNBS0ZhUGtUMQpIaGk4M2dNQy9vaWc5WU9BNVdMSWZCRzErSVR4K1BYbkE3cnpmaTBzOWdUVTUvQ3g3V2RCSnVrbktNVVh2Q1FuaWFvUFd2QkNtOXRoCnN6UHY5eUZ1bEQ1RXlRY0VhejRTYVh3ZUFvanhBbXowYVhvZW96OFhJVDhab0Q2SlVaL0dxTTlobEtjRDlZZUREWThDQTJHMWp4UDYKR2FzL2hBQ0VqelU5RUtzZkFrRFlwaWlBQ1AxRWQ3ay9oS09IQ0w3Ymk1anpGYXNmQktDeFplM1krSW5QQ0VCSVB3aEFVellBSWYxTQp1UVEySllBdXoxZitiYUhtMndyVDVYTE5xYzJ5YnJNQ3VPZVFTYm5mcnQ1blY0RUEvZXdHS3JJcTl0cVVCeHlhZ3kwNjFBazBDVUQ3Cld3MElRTHVjR2dDZ2JxdTgxU1IyR29RTUEzMmx0YUd3cFFaa3ZyMTZ2bm5UUXUzNjVZcUhsb2xxUUpZS3E1Y0lxa0NXQ2F0WGlHdFgKaXV2bWlSL2d0c3ZDV09qcHg1OEFBTXJKVGM5Skk4MzVWZmJBaHcyWVYrcjE4TUpERW14QTVCOWhBQUNGWVIveDVFYzRpdCtuQmM4Vgo5NkRRRjFUNXY2SU5ITWdQN0NrWWZXSWVkcWpjOVhqeDhQNVp2VS9OOVoxY2puMVloNDNJUXNQeStEdGNQM0FiUElESUVBZkQxQnAxCnhUUlNTazUyWm1ZcUtTYzk4Yk5QUHE4amJ3Sy9ONmRuSktXU1NFZWVyOEhDbXZnNy9MUVFaVEIwRFFBRXg4SjdKSi85blhmSFRSbnAKYVlsWkdhU3ltYi91WFNmRzF1ay9YTUhOelV3akFMUjM3L3FmRENBTUV6b01KUW1rcEl5VXhJSmJTTkkxTjU5cHkvY2ZYeE41ckd6cwptUXJ2aWVWWUg4L3Y0bys1aFA0clhEOHNyVTJtVHl5QXhoSERBd0R5alBDd01mWDJuZ2NUcDVIQU0zMGFLVkVFSzBCSzJDRSt3bzEzCnovVUJ0UHkrMlJra1VsYk90QnVUazVMek11NzRkZnJmdDgrL2Nub2x1TnZZRUp4cjZ4bUVwZ24wOGdLQUpxNXI3Z0pEOUpua0lUaWcKL2p1V0QxeTdSTU1EWFBjUVBOVjZwSmNOejNIdTUwOFpsd3VlSk82OXVQblArMHJ1dkRVelBUa2xMeTA1TlNYaDNiUHJJNk1HSUJ0dgpQdzhIa05qZEM0dEErTm1KVXlRNHloKzV6QnY4cmpuaVZYNzhudWJtckdrSnBOeVVsTHpNeE9rMzM1RCs2MTlsRmhYK2VzM0tPYnptCmduOThyZ3NNeStMcGd6S3A4Qk1UWWY4Vjd1QWxlVjhmTDN5SmUremhlVGZrWk9kbFpOMlFrNW1ZbXZiTWtaZEdmSjROMjk2NHkzRHkKZHZPRlF0T2Ixd0xRUGVNQXV0dnlScVhoUkoxcHE5TEtOVms0Uk8wbkZrQWdCSURNRmhFQklGZzdVVEhFU242dHByWFM5T0ljK3dVRQpJTFRCUHBvWUFJR1U2NDh1VWIrMFhQWGtjdFVqbXhSNzFBYkw5bGJwN3ZhSkpiQi9IMEJPMDA4SEVLQ2JXc2NHQUFMNlVXazVFRUE2CnBsRFBBQUJpcVpuTlNtYWpqRVVUY1d0NXFwWDg3WVdTSTdjcFQ5K21ldlV1MVF2L1J3QWk5QU4zM3VJQXFtZ0hBS29EdjVzdXNkU3UKVTFkWHlldnFaZlVOQ21xRGtnQlFRNDJjWENlcldxOWdMVmR1TFRRY3l6ZWNYcUIvZHFOR3oxTFN1UkJBZkltT0R2UUR4NTRaR1NCQwpZek1zQXVHZFFGd1ZtYTRsQXdCUjFOVDFldG9pQndJUWEwcjlnTnl4aXpKck82VzBwMkZ4UjhQYVZzcG1CN25PVHFIWXlUUkhYYk90CmptOXRrRmxvT2l2ZGFHT1lIU3lMazAwY2dRaUNKc05IMHlHRnh3STUrRTRyUjJOb2JqUlQxblJTNXUyZ3pOcEYyNm8xRDNHZWl2Q08KRFF1UGVRVEhQYUpYUFFoQXFqTSt6VG1mN2kydjdvTGZBQTBVc0x3SFc0SmdMc0lnQ2FHbHNXc0VSOUs0Y21LaE03N0loZEFENHJkYwpCUEdaM2dzWVFkNUZpMXpSZW8vMnZFOXpOcUE1NjFlZkNhak8rSlZ2am8rd2lDNTFFWnZiNFlLWCtQV2c2TFdnRVBiNndPQUxYdU56ClRGK091b2Y5WW9nRngxbUFCSnQvQ3pMSythMlg4VndJb0lmNkRGYi9ERVlHNG5rZWEzZ1dZNzBZSVQ4VHJubDhyT0dKY09QVFk3UW4KTVdDZ0RmdUoyaytzZmlManU5eXYwcy80SVlmQVBaRU5PMENJNmU3aEI2TUxYZ1I5MEVIUGs1YTlVTk1QbkhleHJCM1JKNjc4NDVqVQpBQlMvLytzNkFJcXVmK0VBK25haCtsL3p0ZDlWR3IrZXAvNXltV1NQUXJiVG9kNXZnY2Yvd0dVdkN3eTQyRzJWN0xSTGQ3WElIM0ZxCnJ3V2doMXRnS3pRQTBIYUh1c2VtYUxkSWdZRkVSdFphQzduSVVWM3NySmx2clZtcTI3eEt2bkdUWlBNbVFmVkdmbFZzd0Z0QWxvb2YKWXRrRUFFQ3ZIVHVlbEpDWW5aV1dsMDY2SlMvNW03TWJjQUJ4d2tOdzY3Vi9pT2wzc2E4RElNOG8wei9NQ2ZvbGJwOWsrTk42OStQegpzWU9WZ2NlTFE0OFUrUjRyd3g2ZFAzYXdZbmhYL3REajh5TGZzQ011WmZ3ZHJoOENRR05oaFV4YVJBRG9waGxwbjN6MDZlTEZTNVBoCldJZmtYK1FtZlBPMTBPZStKamgrYkJDQWtJRVFnTUJGMkNVY0MrblgzdnVicE1UcHVaa1plUWtKNzl4SHhlN1hmWG92bndCUUlvbTAKWThjNkJDRDhVSURKZHg2Ly85UUFDbUhDanA1bFNXbVpDWmtaeWFrazhQeTlQUzlweVQyL2VveDUrL3RiVi9XZGFjQThTbmQvMDVpTApINEZOVG5Bei9OU0pBNUFQQUFqVHROcnZoUlBOOHRJQmdDU2lNZ3lUNHl0bHhIdE9rU2tCdEd6bG5MVHBBRURUYjg1TW41NlNYbm5YCmphN0Q1YjFQRkhyL1dJME5TNzF1TVZCTGFFVHN4Y3M1OGU2NVRwQ0JRdjJpUUs4QUc1WUZSNlFlbDJSMFZPb1pGT0tUVTZWVHhqOGsKeHZwbGcyZlh2ZFZUbXBzRDF5aHZ6RXk3NGNic1R5N1doVWUxbzMxY3dDa0VJTGhrMXMrS3B3OUsvMldHdXcrZWpSUnlDLy95Q1Z2RwptV1hWcjl1enIvYms4WVkvZnNqNjhtK3N2aEdWeTJ2d2VOVitEN2YvMG9QeDlMaytnQWEvNXcvMmNRZStsMTI1d29sYzVqM1JWcGFXCmtwcVhsUWxYRW5PeVQ1MS8rNThEUTh0YVg1MWxmdk1PNC9tQ2F3Tm9sdm1OQW5qUzc3blo1bE9MalVjYVRXMWFLeGNPSzhVQk5HNmcKeVFBQytnRXhtZ1I2UTNRSlNhR204OVNTRGRydGxhWVQrYlozaW16blNteXY1OXRQRWdBcXNzSVVXMDRqQU0yeVhpZzB2RjFzT2xtaQpmMldsOW5teHVXZHJ1MnB2bStiSEFxamQ4bThCaURBUTJoV1Bsc01NT3JnS0J1bWo0NnExZktVVzduNEhBQkpvbVZ3Tms2bGkwUlVzCnVralF4QmMwY0dWcitLM2xrc2Z1VXI1eW0vcjRuWnFqL3hjQWl0Y1BwRTlIZlhsYmJhV2plcW1oK2dFVlhQOXFrRlBJRUVEMWpkSW0KaXB3S2gzekpLUUJBR3hYTks1WHRwZm9YQzR5bktnMi8yNkF4c3hUTlBDVWJBRWlzYndaZkoyNmdLSUJnRVVoUEF3YkNBVVNoYWFrMApOVzJqanJiSTJRaHJQOTJNS2ZUVFF3TXAzTnBZdUkxYXZCV21iQXU1c29leXVKdXl0SWU2cXJOK1hYdDlsYk9oMFVZUjJtbGFCd1BvCngrbmtJdnJBMXA5eCtuUTdZVG82SlBCUVJEdS94Y0xSbVpqTlZ0cnFEbkxaOW9ZbDIvaC80SGRqak4vNWVNZmNnbU1qNGxjZ2dHU24KZ0lHOHlqZUFnYnhxV0FjQ0J2THAzd1l1QVF5Q3dWZkVvRnB3eWdTQWRjWTFNeWxBU05FTDJ3Y2d5RG93dHZkaExPLzV6WDhBQVhjRwpBY3p5Njk2T1Juc0JOZmNFWWIzbkxFQVBTZ0IzVDBCMkdvZ25JRG1GQm5naDk0Unc5NkNFK01kUXV3K2FZenFHNzI5SGhSOUFIelRNCks0UVA4MExCR3AvRjZNOWpWTGpKQzJ2K1hianBPUi8xYVFBanJQNzVDT1ZaUCswWjJCQk5lU3BVZlRCSVBoUm9laXkyNVJucGg1aHUKZ2RNbk90bzllcjR6bm9sbHIvSGhwbUdjUG5DeUtaN29YbmMwNU92cWxTL1k4b3h5dFg1dytzREVOZ0JOcXYyZzh3K3ZXditLQXhBSQpBdEEzaTdUZzVhVjVocjh2MEZ3cGw3OU1sYlphNWR0TWtsMFc4VzZ6ZUs5SnZNOElBeTZRZ2FKRm9QYm9UQXdDUUkrMG0xQVI2cUtjCmtnQUFnQUJKUkVGVWFIZUxkb2RUczhXdTdMTEkyc3dTalpHNzBVd3R0VmVYT09vV21ldFdxS29lRkcrbUNXcXJ4TlVnMWFKb3dQVW0KUE92RVZSeXpNSXdGTDV3L2w1S2NtSkdlbkpjK2ZXWXE2Yk5YMW9MSG0yK1VGUm9VQUFBRmhqazRnRVJvTVNnK21Mc3gyTnZvNjZPSApQUnpzYjlUaHg4dXhRL25ody8rRFBiWjg2R0JsOEdCNStPbEt6eE9sL1U5WGVMNWhlajNxK0R0Y1B3QkFrUkU0TVQ0U2tnc0Zjd2dBCjVXVk5QLzd5MFZ0dnVUc2xkWHJ5dEtSVlMzN3A5ZlBnbHJHNE82REVFd1FsL2oydi8vNVlSR0t6ckVnZ2tXN01tams5aWJTemNnVjIKditiTGV3VjVXZWtFZ0hwNjdpTUFGSDlubENuMUErTEIxRjNkcTVKSjAyZW1wZjB5YzFwdVVscFNNbWxhVmxvcWlmVHJYSkpCbnUvMwptcnd1dm4rSUhSN2t3R2xaY1Y1QjhROUhzUUoranJBeGVZanJkL0VCZ0p5Vys4Qm5tSldiTm8wMEhRSm9EQkxLTjhDSnZ3T1JLUUcwCjlON1p5ZE5KT1huSk4yZGxKaVJrVk42V0YvN3R2TUQrZ3Y2bks4TmZNMGE5RXRjZ2IyeElIQmdXQVFrQkJxRkRGT05EdUllNFJnQnkKQjlWWHZtbnUvYlJoOUsvTi9YOXIrdGRYNU41LzBJZi9TaC84cW5ISytEOXR3RDZpdTE5Zi9iU21PRG1SbEptZGtaT1NkUE12Y3YvMgpPVDNvVXJsN09iNEJucWNYR0Vqa0hSQzYrNjVaQVJydUZYc0hsQ09YV2E3ZWVzelBIKzJYWXBnNUdPRkdYT2JRcUh4a3VIbHdtRDR3CndIRVB5ZnEvNVhqNlJmSDArVUVBRGZYeityNFRYY0VYQ25jcXl4SVRrM056TW9EWWJwZzU0NU8vL1AzemJ3Zkt6Y2ZtV3M3ZWJiNHcKOTNvQWVyUEFkQzRmNXZVVnhzZFlab1BSeXJIWWVBU0FjQU5OeEdvUklQMmc4by9Xd0VlMUU1bTZzVm1qWGFzN1hHRjZzOEQ2QndDZwpZdnZyUmJZVHhiWTNVQkNBaU56dGZIT3U3ZndzK3h2MzJFNHVOTDNFZFd6cDdwTHNheGYvTkFEWlRScXJDUUpJcHhhWjlWY0JhSktCCkVJQ0laaUFDUUVvdFQ2YmxvczFmZkEyTHJXUTF5MWxOVWphZEw2SHpoRlN1ZUQzWHVGaTBNMS8rM0oycVYyNVhuL2pmQjFBY2ZjcmEKWWV0UFJYdGRaV3Z0UEZ2TmNoMGNnbEVuYlNETEtCUWxqYXdnNHdBaVF3REphQTJ5NnMwSzJpcWxyVkwzWEpIeDlYTERrUWUxTnBhQwpLVkN3QlJxZXlOQXMwVEtBZ1FDQVFNQ3I4TFJISFExV2dOVFVabng2ZktPYVVxV2xMSGJRQ2pzYkM2RjQ2SlAwVTdLbEVXUitaMk5sClQxUHBWbHJoZGxyQkRoaHdBVkswazFLNmpieTRxMzVkRzVuU1FoVTdtaTBPTHI3c2hlOTdCKzVwaGIzUFBTMWlCQ0EwRnI3TndXK3gKY2JVMmRwTzljV1ZIUThuMmVrR2JZYmpwQUVaN2NaUnpkSlIvYkVoNnpDdDgxU2M1Q1F6a2xaLzJLZDd3S2M4Z0J2bTBGNEJMZkliegpnQ2tRSzBBdGx2Y0NlTmtHWVdqSytLM3ZvZUR2SE9VTzJzT0YwSU42bVpGNHhnTVh1ZkIxTHJpVkhTV29QQjFRbkFyS1R3VmtKNk90CnplUG9RU0hRRStTL0RCTGl2UUtDNXBoR3h1ZVl3bVpuMXU5UVlLY3pBOUFIZGpvRDdtQ1VKOEtVeHdQVUovMzBwd09OVHdVYkhzY2EKbm9MOVFIVlBZYlRuQXZWUGhHb2Z4YW9QWXpVSFE1VERRdzM3a1g0UWZjTGo5TUdibmRFUnoxY1ZmaVpPZGg0ZmJSRTcxejI2eTUxdwp6L2hCenlqRXRDL1U5WXdTcXgvdlFqdWVpZmJuS2ZVenNNQkk2QWR3QjEzSEF1alNBcGgvTG9JU0F1L3pyNFc2SytYS3oxZktyRHFKClNjK3hHOWxPSTZmRHlOdGk0TzgwQ3ZlWkphZ2F0Tit1aGtVZ0hFQ29DSVFBZExqRGpBeUVpa0JiYlJCQUhTYUpUYzl2TURYT3Q5VlgKT0JzV1djbkxOYlVQU21xb2dvWU5zcXBOMHFwcVNWV051S3BXREYrQzYwMlN6UnVFMVh5RHdCc2EvZURpZXhucHFabXBTVG5weWRsSgpwRDg4Y3kvbVYzdEhHZUZCSGdBUWZGU1BjTU1EUXFDUUtZTU5pVEMzUHREUEQ3dlpXQy8vbTZlWGVIKzMzUDI3dVlFbjd4NTY2cDdJCm9hTElvL1BHSGxzd2NMQmc5TysxL2pBdi9nN1hEd0xRbUlzL0ZsYndlYk9tazFJQmdMTFNTSGZkTXJPcnJUVXJQUTg4UEZLbVRUUHIKeWpFTVBFRlo4WGRBQ1EvRFNsSjg0dCtUZUgvaW80aTN3SWtjZnRickoybkpKTktNOUp0SkdhU0cyKzhLcmpkOHNad0RBQVQwQXd3RQplTkhldm93QVVQeWRvM2ZEQjRZUUFVd0JnVlBWd3BMOTJ3R0FTSG01R1htNUpGakd5Q0xsWnBKU2MzOU5tcFpTVlh0ck1HZ051WVZ3CnJvV2JGeG1VSVpwTUVSeEFjQ2JKQUQ4NHlBWHZEd0VVVWRtTUVFQVoyU2tKMHhJbG9wSklXQmpCNTdoTi92RHhYQXRBSzlma3cxNmkKbktRYjBqUFMwN0x2dVRubCswUHp4aDR1SHQ1YjJQL21HazgvTHpnaWhvdDBRMEt2QzY3VHhkUG4rZ0R5Zk05ei9hSDYrMGRLWFh0SwpmUWZtOWUwckdUNDBiL0NSaXNFRDVWUG04dU1sZzQ4dWREKzN5TER4TndDTDJlQzdsNWJ5bXp0di92YnY3TUNJRXA3Ky9HOENDTzZUCmx3SFp1Szh3Um52WjdzdEM4TFVNWDJud1g1RjdMdkU5QTF5UTBRSGUwR1htd1BkMDd5QXJuajdYQjlEdzl3SUFvSUZ2UlgwRFhLeGYKWUdzcVRVaUVvK0RUTWxKdnVmVlgzdzBNdi9QVmxUbTYxK1phM3BwamZlc2UwNFIrNGdCMEZ1Nk5ONTR2TWI1MnYybVgwQ3kxV3JrVwptOEJ1RXhJaGxyMkkyZzhzLzFqRWVwTVFBVWloNFlvMGpYVmF4d3JqaTZXbTgwWFdDMmk4Um9udGRRSkFrdzNrZUJXOG5Hcy9mYmY5CjVIekxVYlpqZTNlblltL01LSXlmQUNDOUpnb2doMGxtTTB2aUFRU0NOc05QQWhCZSt3SDY0VXEwSEtHR3pWVXhtYmgrR3NVY09sL0cKNEFxYnVJSWFybktWb0xWQ2VtaVc4c1gvT3dCTjBrODB6dG9GNXVxVm1wb05zcHA2U1FOVlNpSExhUlE1RlFJSWpuYUhBS0pJYTZ2bApsTFZLL1VMOUUwWEdFMldHbHg3UXRER0FmcTRHa0ZqZmpBQWsxTlBSWGpBQUlMb2VBb2l1b2xScktFc2RsTUpPV241UFkreXlGNkVmCmtOSnVTc2tXV1A0cEF1alpUZ01YOE5VZXlxeGRsRG03S0lVN0tQTjd5UGUzVXhndFRRWW5wOHNoN0dxUmdIUzNTa0Y2V2liUzZZUmwKb1hhbndPSGc2ZXdjcHIzcC90YUdKVnZJejJoNlFyVEhNT29STi9Pb20vL3lpUGhsSUFtUDZEV3Y1S1JQR2pXUVZ3R1h3NkNCTk9kZwpWNUR1TFZTazhlbFIzdlhxM2tHeWlVKzBZbVRDcllQWGVKQjRBcnBvVHcvQkhSQy82aXhLQU0xcHg3ZXk0NlBhNCtpRG93ZWZZaEZkCjZvTDY0YjJNaHJkUEJHNXV4L2UzNDQwKytEaUw2TEhPYUtzWG9BOUtrUEcwai9iWUdQMXBqUG5NS08zZ2Q3VTdQOTdZZG1hVjdxT2EKbm1IbVkxamprM0M2UmMwaHJQWVFSbmw4ck9vQVRwK3I5Qk9wMmdzU3UreEZ0UHZBNENjY1RveTJHQWNRb3MvRWdJdDdPOGZ3WExYcwpOYTZmMEVMbjFjdGVoSDdzeExhdjJLM3ZzZm9oeWorSU83RVlpZ1hRZDR0TXNCTm9vZjc3Ullidks3VURsY29lbm9CcGJHWVlLV3d6ClRXUnFVcGtaTmd0M20wMjgzeW83WkpZOWJGTk5DYUJIT3kzQVFLZ1ZlbmNMUEJFUkFhaFRLMlNZbXBmYXlKVU95a0liWlpHeFlhV3kKQVk0Wmx0VnNrdGJVaW1vYWhEVlVQa3k5b0Jxa2hsUE5salA3aHE5ODhlVW5OOTZRbDVXV21wdVJtcFUwL2VUZStaaGY2eDJsaHdjNQpBRUFSQktEQmF3TENOOElLdUtSdzhGTkErUFVuRE1vU2ttN0RiY2UyYnV4L3BtVDQ1WVhZTS9Pdy9ZWFl3eVhCM1hQQ245ZUdQSENvCnhZOEtXZ0lEQU1MR1ZGek8zUUJBMlZrWk9SbWtYOTZRVVZHY241eVVrSk9SRHJqdzZyR0hNRXdRR21ESDMrRW5oM0FQY1EwQjVHVjkKOHpYL043K2FscEdZT1QySE5Idm1qQ3ViVEYrdDRDSUE1V1duQUY0NG5Zc0lBTVhmTnBwckFTZ29mbXovT3RKMFVzcU5wTVJzVW1aRwp5azJaR1ROVDgyYWt3ek9tYVRXL3dQeXFzVUVHWExSeWMveTlvbml5eEdLRkFCQmN4UnZtWVNHRldyb0VmSWFaMldrSjA2YkxKQ1hoCmtDRHNnb2NKeGQrQnVNK1VBRnI5d056RWhHazM1Q1RtcHNCZFlET3pTQzlaRm1DL1hUbjJTT1UzaHdzOW56VmdYalZnc1JlWFVQdzYKMTNVU3JRQjVaZGlBZE9DVmUvdDJGNHc5TWo5eWNMNy84UHpSUTVXZWE4UjlvTkMzYjBIbzJXV2JTbS9LU0VwSnpVckpTa2o4OVc5bQpmUDgxR3g4YXovTDBzYng5QWh3MGNCcEdQSDFRUElQQ29VdmNrY3M4ZDY4QWFNbjF2ZEQ5SFI5OEliNWVydnQ3Tm5qTHlIY2k5Mlg1CjhIY1NUNThVdkdjOGZhNFBvSkZMd29GZTF1QjM0b0VodnY4N3BuQmRZV0pTV3M2TXRLUzAxTExTQXJjLy9OSjdYOStsZTNPTytkeGMKeTlrN2pkZXNBTjF0Zml2Zi9HYUI4ZTBLNDRsTjVnNlZoZU8wd2dhZ1dBRFpiYUpKQUFMNk1aaEZjTEtFbnFmVThnQ0FlR3JtUnYyVworZWJYU2l6d09Pa0N4NmtpK3h0bDFqZEt4b01BUkt5SWxWcFBWQmpQRmxuT3pyYWNXV1I4bldQYjE5ME8veTM2c1FEcU1HdGJqRk1ECmFFb0Q2UTB3UmoyTVFTZlU2Z1Q0NGhkUEFneUg2NGVuWm9GLzBCaFNObDNFYXhRTGFBSlpNMS9FNEFxb0hPbDZ2bVdKZUUraDdMZDMKcWY1UEFGUXhEcUJZL1pTMTFwWGJheGFZcWxhcXFqZEw2c2hpQUNCcWc0d0tHQVJQRjFEVVZxdnJhMlJOQUVCMTh2cjdGWW9sK3NQRgp4dU9seHFQMzZ6b1lDcTVRemdRQUVocmhFaGlJek1DUUdwbGlJeW9DTmVJR29nRUEwYlZ3SjN5dGxnd0IxRVhKNzZGT3FSOWduWUt0CkRjVmJ5U1ZiWUdLUEF5aloybFMwbzdGd1oyUHBWc3J5VGdxNXBWRmpaM2JZK0lSK3RyVEtpR3hya1cxeGlHQWZkQ3M4RDlwczVVck0KZElxVlV0M2UrQS9XUGgvOVdWL1RFUy9yRlFnZy9wR0k0TGhIY01JclB1R1RuUFRMVG9NQUJubmtFd3dhejF0ZXpYbFVGZ3JvL3dCWApyNllLUEUzUmNCN3VKdE5GTXdrOUFadzdJSDdsbWFBQzl2Y0FjbzJ2YzBIeElQUUVwQ2RBUWhKNGpDRUlNY0tDdUVENmdlY1pjbytBCkFQcUFCRmhIaUFVdmZJZ3BMUGxFZzdzbjFBZ25Xb1NvejJCVmoyS2NGMGVaajcreVRNYS9hY0ZjVW00MmFUcjRKL2dPVWpibjFpVkgKVjBoSG1nNWdqS2REc0xubkVGWjFPRlkva2FxSENmMFF3MDFqbTUzSDFtOGoxcnhpZDdtalp1ZEpKeHpHdGp5alphOEovU3lNdGp5RApFUHJ4TExDTmdzVHRleWYwRXdzZ2dqc1RhMkhqYnh3SGtBVzQ1MThMMWY5Y0RCZkNCc28wTDFUeFZ6dW85em9iVmpuSjYremt6VFlxCjE4YTAySVE3cmZLRFJnVUFFRndGYTR1MkFZRVFGYUJETWF0Z3NBM0lJdTgwUzNkb3hBSVQ1ejRiZFo2RFVtbWpsSU1MTTJXWm9YR3QKc3Y0QmVmMW1TWDJkb0k3Q2d5SHo2dXI1ZFZSdUhZMWQvOC9MZjc5MCtaKzMvcy8vbDVXU2twdWVucGFROEh6TFhNeWo5YnZwa1dFMgoxaThKdzI0UzduVWU1SDVYazkvRjlibWFJMzcyOEJWYitleDA4UHQzWGpKcDNXMnBxdHJiVDdaV2ZQZDRKZmJDQXQvaDR2Q1hYSCsvCk5mNE8xdzhBRUdCSEJEYndxdGlzT3hHQThyS201NlltcFNlUmJweVJuSm1TY2ZldDJaZXUwTU51UHVhNkp0UitiUEN0WjlBOTRDTDIKT3V4bUE4WlZiN2dya1RRdExaZVVrWkgyOW5MaDE2djRBRURaR1lremNsTEIzMjJiYlQ3UkJCMS81MmppQUFTbE1zQVBCWVhQUGtsTwpKQ1hsNWQyUW16MzlodXlNN0N4U0tnQmZGaW1GUktwK01Cc0xLTEVoM3VpQXdEWFVoQTNMWUdsbnFpQ3N3TnYydzg4L2lHOEVpL2drCmpmV3o0QW5PTTdLbWtVZ3FSVVVrRFBlMzQ1bE1uK3NEYU5VRHN4T25wZDZjazVpVEN2NUhTa2tuTVZiZU9mcmJsZGlqQy92MnpCMSsKZFNWMmlSOXhTK0hFMW43WTFCd1BIWUk3OGZvQjd6OHd4QVV5ODN4Uzk5MHpGU09QbEl3ZG11Yy9VT1k1VkQ1NnNQVC9KKzQrNE5zcQo3LzN4SDB1eXJPMlZBSVZTVmtnZ0ljTXJlNUdFTUFMWjhaWXMyOXBic3EyOVBlUHNrRDFKZ0lTd3loNGhneENnN1czL3QrUGUyOTdlCjNyWlF5UEtRNWFGaERaL2Y5em5IVm9SbGgxRnUvM2w5WG5vZHkvYUp2SFRlZXA3djgzM0dUT2o1Z3RqeFpUZU9GMDY5bThYbFpMT3kKV2JrWnpQdnV6N255ZDNHNFZ4dm9sdlRmcUExMXFRQkF4SEozV1NwOXlQUjN5TkY4bVU5TnJLNlhEWFNJZXE5Vmg3c2tBejM4Z0U5SQpGZy8xMzFDRGZnWTZEYjRycWxUNmZDdUF1cTdYK3E4aEFIWCtUMmxKd1JSS09pc3JsNVdXa2I1K3pWT0RRL2loZDMvM2dPVVRJQTVhCjRlWDQ1SllBUW5YUTgrMGZsTGhjVmxkVml4TUFwQjRGb0lTQkhFNFY2Q2NCb0FhTEF2UmpNRXBsUnZuVHRvT0Zyay9RZmhyZXN6TWEKejg3d2ZseEViTVJCaGh6NFNhcUpQcHZ2dURUVGRRSCs5OFhXOXhUdXZkdGJUUWVhdjNjTkVBbWdKb2ZKWTBjQXNoclZic3ROQUNVTQpsQW9nMEU4eWdGUW1LZHIyeXlTUjFvbkZlbkdORmdDa3JGYXJLelVhdUJYSlZUVVNiYkhVOXBoeVo0SHUxTVAxNy81b0FDTGFPbytSCmhINVFidXFudUtDNXBOQ3phWjU5dzBvQ1FKWHE4a3B0SlFFZ2ZnSkFKWVpxQWtBbFQ5Y1psbGlQQUlEeUhlODlaZGt5RENDQW5yMUcKRC9xeGlnMTJrWTRJc1JaTUNBWktBRWhjendjQUxmWGVBa0Jvc0tkZ1owWFJEdmhDeXRHWHM2TXlmMmZsekYyQzZYdXFGclZWemQxZQpYYmhiV0xDTHYzaHJaWEdMb001YjIrYVdwd0lJOUFQWjBhVFozcWJiM0twcGJWUTBPbVVtUzdYS0psQTAxdUpseC8zaU05MjFid3lLCjN1MlZ2K21YdmhhWHZ6c0NvQS9EdW5NaDNUbGlPZ3dCS0ZUL01abVJFdWxQQjYyL2lEbitiY2oxbTRSdlJnWFZENWsvQ1pndW9UVmwKTi9GMHM1eDV1S0o1SkNTNVVIUm5CN1VvcUtKWjgvN05qRXgxa1pOY1JJMHpLbk1tYTMyRzlTTkZ5OW9KL1NBQWtmb2gzUk90UnBYTwpKSDFRK0tjamxhY2dlTTByZjZuWUo3OXZKUnVld0drMGpKT08wVEFhMmxJU3JoU1Urekhtem1tYnVzdjI0aFVuOGJJVC9hVkhnRDVrCmtzZCtrcmQyLzRaK1JnQ1UwRS95YXEvRW5GZWl5U0grNk9pWkwxSS9pV1ZmeWNNL1NEOGpBQnJWK1RBWlFNbkRQd0NkOFFEMDFTTFgKOVNMVDN4YlUvMjJKcFdPTzdkcGN5NjlYcUFyYksyWnRMWnU1cFRTL3JXUlJVK2tHcjhEZ2xXMXhhUS9hOUFmY3hGcXdGQUNCZm82MgpEcThGSXdHMDNWMjN4YVhmWjlicEhQSW5QWUo1bm9wQ2I4V3Nac0dzSnVGc2ozQ3hoYi9DeUY5bDRLL1RWRzVTVlJZclVlQ2dWbDVSCktsai8xNi8rUEJEb21mTEF2Unc2UFpQSmhJdjZNY3Q5ZUw5eE1DQWM2aFhqblJxNEpJZjlVcngzWEFEaG5VYTgwNHo3SlBHZVVqelkKL09qaVhDb040MlpUR0JRTy9LQzVMR3pldytuTi9IdmZjVHpROGVkTmtZZ2c5UXkzRG1xbDQ1T2haZkR4ZWxIdEEybFlCcGZEeXMyawpaVE16Sm1ZRGh1QS9TVi8vVkVFVUY4VjY2L0F1SkpVZkpZUGRVdklBRFo5MFMwa0R4UkQ0MExhc0xlNm5xUmlXbFl0aDZmUVREMjM0Cnh4T29DRG9CSUpkcnpnOEdFQjR0UC90bU1RdnRNcEdSeFV5YndNakpaakFuWkdXenVSU01uck8rN0VFODdncmQwQXo0RGFHQUtONGgKVGFWUEFrRGtDUUZBTVI4Q1VOQW5CYm85dmpRSEhtRjJMaThOTmM2ZWkrTm9ZL2xvcnlhVlByY0cwQk9ycDFJeDlrUTJsczNLWVUzQQowaklwZDdHb2w5dnV4VTh1aUIrZGMrTjRmdmV2MTRKZ29qNVY2TG8wNUw4NTFaVUtJRExKK29IMCtXU1F1Ri9kOGZtcXIwN01DcDZZClBYQWt2LzlFVWUrSi9ESFRlWExtd0hOTC8zMzcvV3dPbHNISnlzaGgzWmJCdWZjZTdsZC9yUVlBd2RmZWQ3MEdBTlIzVFltR2RqcGwKQkhUR0NGb3QzeVdGRC9CZGxmZDNhZ0pkNnQ2cml2NXIrcTZycXA0Yld0OVZlSnhxMzlYcXZvN2FycXVDL3U1eHA4QjZybzBkQUZEbgp0WnErR3pvQTBKZS9XLzNrQS9jQ2dIZ1RHRmg2dXJTbU1vcmpiUzllZnNENmkwZnNseDV4WEpqc3Vqd2VnQ1k3UHAzbStnZ0F0TUQrClhvWEw1blJYdERuRkFKM0dieGdJQVlnTXFSOXkvc3RrVXlVQUpHNVFQbWs3bHVmK2JKYm5jcjczL1JtTkg4N3dmbExrK0t6UWZTSFAKUmRRK0p3Rm91dWY4Rk8vN0NGN3VENmE3MzFsaWYwWHBiZC9ScGpyVW92NFhBOGhrVmlRQXBDQ0dmd0JBYVBoSEl3VUExYWkxRlZwMQpsVm90VnFoRlVsMkZ4THBLdm0yTzl1VFUrcmV4d2kyQ01UTjdLMnFRbjVwVStwQWh4M3VLdHR3c2VaNU5oT3ozTTd1dFpGNXJ5YnptCmtybE54Yk1iTnhVMmJwelZXbDdvTGx0a0xINUNWN3hSVjE2TzluWG5sOVdWQzdYbFZmcUtLbUl1ck55QXRzWFlaS2lFTExXMkZkbmYKbUcyN3NNcTBwNlpPcmpEV0tDMHloVjBDK2tFQXNra2dhQkRJV3FPMlZDdE5WYWp6bzFrZ01sY0pUZnd5VThVcVIvbThWdjYwSFh5eQo1RGx2V3lXRXBNL3dxRTl5VThjZGxZbk0zc2tIK29DSENuZnlpM1lKbG13VnlMemlQWFlkQWxDVEZzU3p1MFZIWmxlclptY0xLZ2xxCmFkTnRhZEszZXBTZUpybkpKcXAweWY5RDJCcW9PaFVVbmc3VW5BbUtYZ3RLWGc5STN3ekkzd3JJM2hsUW9CVmhJVFZpRUJvSzBwMGIKSkZ6U28zOER0M3pXci80RTEvMFNOLzdpbXVITTgrc3NKeDh6L0VIekhHNytESy83VFcvRHI0SjFsK04xRnlMR1M1RTZwSndFZEpJegphRUREUENqNjgyUWlPcUt1bVJ6bVNZUVk3MEZEUHFwM0lGSGwyNlIxU082UXpRekp3WjZZNUExa0hXSzhKMm5JaHl4ekhpNzBnY1Q1CkwvcHFUK0dWcjhaS1h1Z1R2NHdMWDhiTFQrTDhGMzh2M2ZJRTl6NTR6c1hRNVJWakl3UmhHRFdOaFZIZ1RXb2FKU010WFQ1cEtTNCsKaWEvWlA3VCtFRTVzN1g2ejRtZjljTWgxWHNOTHZZaHluMFNQbjV1alBvOFB1MmRvZVR1K2pBakJuZVRnaTFyd2tYcm5VY3Zkdy9PSAo2NTJUT3o0UGQvMUowVS9uZ21INkpMaVRQTzJWVEI4eVhYT3NWeGFnM0pobi9kTXk2OVU1NWkvbkdCM1MrdnVmclZnR2Z4cGJ5d3BiCnkrWTE4VmMzaTVzZGlnTmVCZW9UN2E0LzFHUTYxbVlqM0dPRG5OamlQTHJGZGFUZGVhak5mckRWdHIvVml0YUNlZXAzdUF5dEhyM1gKcHBRMVZDKzNWeFEwVnhWNWhYTmQxWE9hUkVYdW10bXVtZ1dPbWlXVzZzZU0xVThhaEt0MXdqVmE0VWFGNEVsbHhSLysvdC80WUd6Twp0T2wwREp2STVMTFNhTHNFRCtJRG9taWZPTnJiZ05vb2R5aUcvR3BTQUdNR2gydG5SKzFRcnpUaVYrTkRHbUhaVENvcU1hRm1aN0ZCClB6bE1UaVlUUzhmb1BCcjFQMzlmaVlka294MHdrdFF6azRGcmVid1g0UU9QYTJvRmhZZ2RQQXJnSUlmSnlzekNlRHdlRFdNZTNGK0EKUncyUm5ob2tpWlF6a0Juc2xVVjhFdEFNN2xNSC9iTGVnQUt0Y1J2UW9GS25IaVdPV2ovTDQxMnlPTm9XbEdnQ21YS0drZk9vOEQ3MQpiLyt3aHBXUnc4NkFMeFZiT1dYU24xYm9ibU5uOEZoTU5pK2RTc1ZzcHJuNFVGM1VYeHZwSFBmeEpBY2VWU0o0d1BENTVkVmNPcHI4Cnl1R3hzNW4wYkI2V3hXWHdNdE15c1BTS0RRL2lNVFR0TlF3bW55ajVjNytSTGlrODFNRXVWTWdGQmdxQzIvcVYrSmRWQzJiY3hhSEQKOTQyVGhxVTdMUE1CYzZqbmpYKzBlNUpEYnFhUk9JYmc0Zm8xYTJlZ253V0huWWxLbEpoY0ppT2JsL0hBUFQvMXZURFBkM29KZm1SVwo1OUc4OE4rRlEwRnhYd2VhM1lQUEd1aEFoVGdSWW5zeU9BNTJ5U0RBcjBTQzhEaEhFcm9PUHhTTjcxcFp4Ri8vNTNlZTducmhrZGlSCkIvRDlLL29PNTRWUHpBbWRtTjkxTU05L3ZMRG5SSDcvU3dYZEo2ZEY5MHpBMzVtN1YvVHc3ZkFMa1puT3llV3dXWXdwOTZWMWZDa00KOTJpQzNhajlUOTgxYWY5MUdURVJKaHU0SVI4enlSaENuM0l6TjNIVGUxMytyZkZmazQyWi91dUc3cStxdXE2SmUvc01uYWRYM25VWApsYzFtM3dZL1kwcjZsdWFHRUk1TG52dkRmYmF6MDV5ZkZMaytuMm83aDhwOTdCOC9aTHRJSnNFZ1VBaHFGT1Q2ZUszamtOWnVzRG1yCm5SNkoxNnRvOHFvYlBhcEd0eHJpZGFtSWFEeE9kWXRMN1hZcHpXNmwwYUcwV05RV2s3TGVLTmVZUkJYR3pjc2NaMlkwWHA3UitHbSsKOTJLZTk5SU1MMW9KUDE0TjBNT2VTek9kNzhQSDNPLzZaSUh6VEVOajA5NFc3ZDdOZFlmYXJZZTMySTV1Y3h6YjdqeTY3V1pJQUIzWgo2anJjN2o3UTd0cmI2dHpkWk52aHRyUzdMSzFPMUF2UjR6VFp6SHB6ZzhwdDF3T0FXcHo2SnJ2V1kwUG9RUUFpdGtlMTJwUk9tOEpoCmxkdXNNcUlBQ0EzL05KZ1VkUTB5cFZFbWI1Qks2cVUxQnFsUUt4TnFGYlZhTlVTaUZGY3JWWHlGcmtxbXJwS29Oa2x0aTlVSHB4bmUKR2hkQVJWdlFSb21wR1QzRDljMmtBb2pzOXdNQW10dGFDZ0JhNEMxZTVONjAyRlZTNUMyZGF5OVpXTGZ4Y1czSkJoMGErNm5RVjVicgp5cEIrdmdtZ1lnSkFqMXFiWnlNQW5Vc0FTR1dScVd4akEwaGxGa290eUVBaXRDRUd2M3dFUUkvc0pQWHp2UUZVUUJ5UUFCSjdSYzg2CnhnSlFpMjRuVVJtOXVWVzNGUURrVlRVMUtScGNFb05WKzdlcXJRQWdGQVNnVjBnQUJXVnZnWUg2Rlc4TkF5akpRQkRjZkw2ejVnM2MKL0c4aHgrY3ZiR3JLbzkrWGc3R3lNWFkrZHRmUFZ6ZmhqbDhITlIvamxzOEhUUmY3Njg3SGpaOGx4SVBxcVpOQ2pQR2dFNUlaMUtLRQpOUitOR3V5NXVhcEwrZllvL1pDN2Q2WHFCeTN2RXIweXBuNWl3dE1Sd1lzQndZdlJpaGZ4eXBjSHEwNzNiemlNVjUrNUlqaTRac0pECkV6R2dEb2JSMEExY2FORy85RFIwV1V4UGc5ZnZESXd5QmNzNlBLc1NGendmSWFhOWdEN2tXdmViQXo4YjlwSnIzUlAxenFQYS9DUksKbmxHYm54VmJVSTB6b1ovRWVBL2EzM1FFUUFuOUpBTW9vWi9VRmUrZ24rOE9vTVF4ZW5QQnpaQjEwQkQ0bUw4c1JjdmpyOHcySFNwdgptTG10WXY3bThzSXRwVVZ0NVhPYStVODAxNXBjMGdNdStYNFhBdERCUmlNNUNFUVdBd0dBanJYZkJORHdXakJ2dzA0M1dnemZaRk1wClRiVXI3WlZGWHNGc2ozQzJxN3F3c1pZRTBEd25NdEJDYXpVdzZGRno5YU1tNGFyNm1rVTYvZ2UvL1F3UEQ2NWN1alE5blFvWE0vakoKdU5mZEZldXNHdlRYRHFJVnlKS2hMaFVRNXhaQVFTdTl1OFJ4dnlUc1UrSzQxcUNhRDlkRlRpWXRrOGZNNGlJQTVYQXdYZ2FQUzZWYwp2clFlajR3N0lwSjZaakxKQUtyaEZ5UUFkQnVQdytXaEdhaHNOdmZ6eStWNFNCUHJGZUg5NnRRemtJbjB5cUk5MGxDM0ZMV3U3cEVHCkI1VHh2MVVIdjZvaC8ydHdEMGdJaFhnd2d5bWZua2pJcjhRSFZOZHUxTXg4NU80c1Jqckd3YVpQeUR5L3NPWW5QRlltbXdVQW9sQXcKVTEwaEFBZ2VUN1JyM01lVG5GRUErc1duYTNnWkdKdEYvMmNBRk8yV0RRT29DODJDSVFBRnRFTmZDSW9ldWgwQWxKbkpCUUM1YkF0SQpBTjJpQ0hvOEFLMWJQd3YrZkhONDNDeGUyb1FzTHZ6eU1Pa1lPNFBtMlBBVC9QWEhJc2Z5ZXZkTjcvcHdaWDkzSFh4dXFBT05TQVU2CnBZUjR3RGV5TURHU1JKeHRiQUIxZGduNy9iWEJmbDFmbHlIMFovNlh4eWZoWitZT25seUFueXFNbjV5SnYxaUF2emdIZjJVUi92S2kKNktsNXNkUHpoOTVmOC9XYlQralhQOENBSnhrdW5aV1p5MDdQblQ0cHQvdnJXZ0JRb0VzSmlBSDMvUDhPSVA5VmRjK1ZhdDhOcWI5TAo4OVhKRlQrOWk4N2hzSEo1N0RRbTUvUUx6L2JFOExWYlA3N1BlbTZHNTNLKy9mSTArL2xiQUdpeTgvTTh4NGNiSEh2MURxM2RKZm91CkFMS0NnZXhxQUpESnBLd3p5VFZHYWJGeDIxTEh5OU85bnlRQjZKTmtBSDJqQW5vRVFOTTlGLytQQU5SbzAzanR3L0U0aC9lSGQ2Q1YKOEFTQUxBcXJXVTRBQ0FIT1lKUXBHcVN5ZW9tNFRsS3RsNUFBcXRHb0FFQmlwYlJhcFFFQUNhWHFhb21pUkdwYXB0cWRyenZ6NHdNbwpzZXlMQkJEUjd3ZTEvQ2tpUm9DV3VJc2Z0NVU4YlM1WllpdFozTEJwaVc0REFHaXRycUxNZ0twL0JPcFNRaitWSklES2tnQzAzT3llClkzdDFqdTBzQUVoWXIxUTBpRzROSUhrS2dPYTM4cWZ2K0tjQVZMaGJzSEM3b0xwSnROMnBiVy9TQUlCMk5PbDJOeHNTQUlLMHRLalEKL1Y1OVM1T3l0VkZSMzZRNG9EUDcrWHRBQThNQXFuMFpBQlNTL2h3TU5DQkQ0MEJCeGR0aDVmdEIxVWcwWjRGQmNkVkhhS2V0aGdzdgpySFp4YU5rWWg0VlI0ZW1WQjNDWVJMbnpZLzRlM1BUcGdQVGRvUGxpci81Y1dQL3h6U210a1lTSWFUVUNWUitHTlNoZ3JFSFZTTlR2Cm9TamZKVE04MjVVbzhTRnFuRlBvUTh4empmVDFBZjFFYWw4bUY3ZmZwSS9ncFZqVktjZ2cvd1c4OHNWKzFON3dETDdwUkt6aVJMajIKZWV1TWpUUkNQK2taZEFxTmlnN1NLQmdGdVllYUJ2YWhBSWc0cUNTSWtrZS84Ni9QdEVYS2prVFg3b3V2SDluZ2d0alVBczE1cmQrVAphUE9UbVBNaWUvd2s5RVAyK01GSFZya245Sk1BMEhEZHp3aDlrcWU5SUtQMGt3QlFnajZqSnIrK0w0QytYR0w3Y3BFVlFreUhJUTlkCm4ydTUvSVJwcFZlWTExNk9lb1J1cmlob0V5eHFycXBxcXRsakUrOXoxMEVTQUVwTWhBR0FqbTUySHQ3c0lBMUV0b1RlNWFuZjZ0UnYKdG1ucXpkSzF0cXI1YmdTZ1FrOTFmaVBTRHhtUVVITG1XMnNLTEZYUGZmcmVVRHhhV3JJSm8yQm94SWFPYVZaT0hQeXlJdDRuRHZhbwpZMzVKdEF2TjQ0UjdKS21YYlRMdzNuaVBMTllqSmdDazI3NzV5WFFNNC9Mb1BDNGpONU9hazhHRzYzY3VMNGVaaHIxOGFqa2VIWGNxCkxmWE1aRzRDS0thdUtwOUZ3OUxnMmcwQXltVXplUndzZzU0Mlk4ckVYcDhqM0FNVVFCWFFxV2NnQXc4U0V2UUJnSlJCUDJyckhQcDgKVGYrdjFzWUcxT1NjVVdUa1lhRGJibG5xR2NnRSsxUjRuenc2cUJQeUo3TXhCcFhIeUVuSGR1Yy84OU5zTnRwT2hJdVlyMVBOeE9NTgpBS0M0Ny9zREtLajc5YS9XWnpIVFdNeDBBRkFPS3dNYytZTUFwRUNiZ1hRcjhDNTVwRXVLdWlEMnE0Ti9LcDErYnhZQUtBdllndEU4ClRnQ1FMdWdUcDZMbld3RzBlczEwd0NpUHhXU2hsZ1NzaWRsWm1aeDBGcDE2UnpiN3NtZjYwSm1pd1lQVHVvN002LzRES29JZTdFQTkKcVVQRXBoeHdpM2FaSlk1dk1RSTAwQy90N3hJR2VremROMVI0djlCLytlbDNiRFBlYlpyN2xqMy9UTjNEcjVnZWViRnU2aUhaQS90RQpEMjRwKzFuTHBydnIxajRrV3YzVDZmZGwwMmdjM2gxY2JnNlBSV1BNeTU4SWpnbjUxR1J4RC9MTmRSbXhGbXkwZS81bEFQSmRWZlJkCkZ3T0FmUCtRL2VuZ3NwL2V5ZVlBYzdtc2RGYlc1VXZ2ZkQyQVA5WjA5Z0cwejljbnM2eVhacUM5d0lnMVh5a0dtdTY4K0pEajQ5bjIKTjhvYzI0d3VqY01qY1hua2paNXhBZFRzVkxsZGFxdFREUUFDUUFDQWRFYUYwcVJjYTlxendQSHpSenlmRUZ0cVhJRGJaQUNOMGc5awptdnRTbmdNQjZBSFhKNHNjUHo2QVBEWjFBa0NKK1M4MEhXWUZBS0gxWDFhejBtUlJOcGdVaGdhRnRrRXVyNWRJNjZRaWd6Z0pRSVNCClZISUFrRUNGRnNQWFNoVVYwcnBWaXRaRjZzTS9Nb0FTK2trRzBPeTI0UXJvT1UzRmo3cEtWNXRLeXZRbHp6U1VQNmt2WHFGRkkwQnIKZEVnNWxkcUtLbFc1UUY5UmFhamcxd25RakJqcUE0VGVCVmxwc3MrM3ZqVEg5a0V5Z05SV0JDQlNQM1YyS1FBSXJRVWJBUkRxQ20wYQpCdERUem9vZkRLRENuVGNCTkg4N245OWMyK3JXdERlaVlaNWhBRFVibm0zVmt3QnFiVlh2Yk5UdGJrUVMydHlvTkRkcExvZzk4ZktqCkFjSHpRV0lXREFHSW1BVWJrTHlCSnNLSXVUQXdVRWp4SHVxT3FIeVBZTkNIWWZsSDhZYUx2NnM5TkJYTEFSL0FwWWpCWUdHVWRIaUcKeGFpMHA3UHo0c1lQOExvTGZib1BCZzBYZzlvTGlURWV3Tk0zUW80dGpkQUhwRFU0bkdINmhCWHZST1RESVJlMGsvVDVwbnRRSWlMQwpQVVJMdzBTaFQwejR6VEpud1l1UU9COXVuOGY1cDRMVmFDOTNmTjBSWFBycTJhZXNFNEEzRENwR3B3S0M0TUpBcFZLQlFSZ052WW5CCkpSZGVRbVpRbVhDQVBFUzMzN1VpV25FWTlKTzhyZWxOOTR5TS9ReFgvQkFOZnREV0ZvazJQeXUya1BwSm52YTY2WjdGeENaZkl5dmUKRTFYUG8vcjlqTnJ1ZEV6OWRNOUgrYjRBK21xSi9jb2kyOWNMRVlEZ1RUaStzc0FLYjBvTm9obnRGZWpWUWx0RlhydWdxSVgvZUp1Zwp6Vkt6eTZWLzFtMDQ0RzA0MG1KNXJtMUVQMXVHQVlSV3dwT3pZTTJXdlkwbU5BaGsxMjl6Nkt3MkpkOVNzOXdtbU8ydXl2ZFU1M21yCkUvUXBKRkxncmMxdlJNbHoxRTYxOG5lZmZ4WEg0eXFsSE0xT0FvQVlXUG44M01nZksvQUJXYkJIT2RRcmpuUXJZNTN5UWYrNFUyRG8KRXRzTFlpQkdnT0thVXkrc284TjFrWWM2NGt6azBRQkFhQnlJeDRVN2QyK2JoMGRHdStlN0FBanR4RTRBcUxKa09nbWdiQTRqazBISgp6V0xDTmJpOGVBb2U5NGE3cStBeUR3WktQUU9aSVo4VUFCVG9nVnVpanFkSE5mRG0wc0JiajhZRG1yQmZEakNLOUJHOWYzeXlJYjl5CnFIdjBweWNTQ29BcXF1SEJIRDR3aDRHbHMzSnpXSFNzZG5MUkNJRG84S3N0cTMyWUJGQ3MrL3RQZ1FVMXYvdjNUUk80VkNhRE9nd2cKRHRyMzQvc0NLTktGbG4yaEUzYkp3WE1EZnFLZTV0L1dUTDZEemNzZ1I0QW9qZTRmRHFCMTYyZGxVTkZQbHMwRUJtWEFRVFl2SXhzWgpPdXVwR1JrOXp4ZEVuNXZXOSt3Yy8yc3JRamMwOEJQc3Z5RUc5NFNKUWlKd3owQ0haR1JBYUd3QVJhNnJRditvalhicUE3M0tnRi9RCjgxZDE4YU01R2ZDcnhXQ2dqVTdwVkM0VGZhc1o2WndNYWphU0dFYkpaR0pJeFp3SjJYY3cyQnc2L01vOXVmSnVjZzFhZjRjVUV1aUUKaHlFWjZKQ2lwTkRuWHdNZy8zVWxuTUVQQVBwenplZmJGdDkrTzVlYnlVSnRTRy83NlIvLytKdmZYUWt1OFp5ZjVQa1U2Rk5ndi9TSQorK05wVGxRUVBRcEF5RURPQzQvWVAxcHFPMTF0YnpTN2xVNnYzTldvYW5hcnhnTlFrMHZsY0dvc0RvM1pxa0pyeUUxeXJVa2xONklkCjRHYzczZ2JXekhSZkJOL004RnhHZzArZWM2UGNRL2FEaHNCSHpySy9OOE4xZ1FTUXNha1pBTFNuemZCakFRamMwK1RVUVJvZGFDTE0KYlZXaFd3UWdGUUVnc3Z4WldXOVNnWDQwOVRKNW5VeGlrTlRxSkVJeVdoa0JJRVd0V2dVQUVpclYxWEpsclZRbWtPbzJ5cDFQS3JiYwpBa0JqcDNCcjVaZ2hTNTZUQVpTb2ZVWUFhaTBwYUNtZDNWeTYyRld5eGxqQzE1WlYxQXMyNml1ZTBaU3QwcFN1MXBadjB2SEx0WldWCjZ2SUtmWG01b1J6ME13cEFUeGlOQzZ3dnpyTzkvNVJwVDNXOVJ0RWdWcHRsR2l0UkFVM29KeFZBeENDUVVHUVU4RTJWcXgzL0ZJREkKZzd6ZC9ObmJLMHRhYXJ3ZTlRaUFrSDRRZ0ZycVNBQnRhZFU4MjZRSEFMVzFvbDFSMjl4MS84dHZ4NHRQQW9DUWdWQVowRXVCMnBjRAo0dGNHaGczMDg2RHNMVEpJUXZKM1FVSmdvTGp1WXEvaDNVMDVCUWcvRENyODlYSnBHWFNNQm4vekdKdVNnekhPci9QaURXY2pxZy9pCm1ndGgvWVVFZE1na3hwUElrWjZJYW5pd0p6SFNFeWE2K0l6MDhrbGEweTU5SFpVMlM0aVJIdkZyQ2ZRa1dqbC9zOEQ1Rk9rZWtqN2cKbmxqbEMwUk80aFVuUTVYUHdmRmc1UWw4MDlGZzVhSEtuODdCMG1ob3ZJY1lCQUw5QUhOQU94UUtoUUUzR0dKUU9qa2pCa0pLcDAzQwpPTmRXdCtMRnhPVFhtajJ4TmJzUzljNnhaN1luMXJvblYveWdVWi9IdDhVZnU3blFIVi9XanVoRDdHdEJKcm5GYy9LYUwzTGdKMm5OCmwrc2JXMzBscmZsS1hmWUYrYjRBdXJIUWZvUDRZTFFNZnFIdEgwdnRYeTZ4OWM2MjdhcFN6RzZwS21vdG05OEtBS3JNYjY2WTIxNXUKdEZadGRXbkJRSHU5cUJUNldJdVZOQkFBNkxrUkFFRVMrNEx0OFJyM09PdTJPOUhUaDhJaVdXMFd6bk1pQUVHS1hDSXlzMTJpT1c0eAptWGt1Y2FGWE5zVlUyZnJHU1FCUWs5TUpGczNpTUNrMGJPWE16TkF2aS9HZ0FtMGQxU2RHT3h0MEs2TURhUDVvekVTSUVScFVYdU5YCnhTUEtjMmMzc05Jd0hwdWV4YVZQNEdia01qaHcvZWF3VVhjY3IzTU9XSXZRekJoSlBUT1pRV0lqTUJKQXBSc2VUaytqOEFBRUhFWTIKbDRaMkQ4Q3daM2M4aGtlTStJQW8wcW1JOUVwU3owQUdBQVRuUVE3b1FRMmQ4V3VTd1BOelFpZm5JSDcxb1QzWUIvdFJ6eUh3RnQ2TAo2b0ZTejBBRzhEVFlKY1REeXYvOGo0MjVERG9uSjRmTnBSVGRkdGVkV1NBVk5wdkxnRjkxWWNVRGVOeUVwc0M2VVEvcmNUSU9nQUxLCi8vNWp4WjBUR0FBZ2NFOHVtNEVBeEdWOVh3QkZVZlU2K3JrTWRVbUFwOFJQVS9mMXA2dnV5MlZsTXNnYUlFcXpGd0NrQ1JFYmdhVzYKNTlZQTJyQXhuMDdCSm1abjVXUlJVUXNBTmxvRUJ3ZHdNWWUvNjVOMUQwUmV5US90end2c25SSDY5ZHFRL3laNlNBT1IraUZtd2NZRwpVTHhESDd1bWlNTm4rUlg5ZmpVKzZIcm5IUVdWeDJKbXByT3k2Qm1aRkZaT09qdVh6czVsc0hQWXJHeFdEb2VUblVsTXlXVnlNN093ClRQZ2dqTDFoZmNGUXdCRHNCclZJU0FBQmZZWU5sRUtmZncyQTBPVFhWUVZxdFBoN3dkdWVoVG5abVp4TUJvdE5mMmg2UWFmdjJ2dC8KdURiVCtONzluczltdWk4VkVodCtBWUFneVFBYU5wRHpZcDc5dlNldGg1VTJzOE1sZFRZcFhGNTFxMXQ5YXdCWjdYcXpWVzAxeXh0TQpjclZKS3pFYUYxbFA1em5lbityNmVLYnJ3aXduMmdVTWt1ZithQmJ5RUFyY241d0VnTzUzWGdJQW1SdWI5N2ZxOXJYK2FBQ0NORGtOCkxlNTZDQng0N1RxM1ZlTTJnNFEwTG9zYURmK1lsQTBtbGQ2a1ZEY29GUFZ5bVVFdTFrdHJ0S2o5RCtwL3FKUFhnSUVRZzFUVmFqVVkKcUVhaEVzbVVRcW0yWEdyYUlIWDlYd0ZvWk1PdlVqaVkwMUl5cDZtMHNLVTB2N2xrdnFma0tWTnBxYTVVV0ZkVm9lTnYxRmF1MGFDcwoxMVpzMGxlVTZzcmhYV1g2TXFBUHFaOEVnRlkxNkJlWm41dHZleGNBSkd6UUtJMFNOV3A1TkM2QUZPYlJBRnJRd3AreC9aOEZVTUdPCnlnMnQxVmF2RWdDMHBWRUhBTnJWVkVjQ2FIY3JHTWl3czFrUHQ5dWFOZHRhVkszTnF1TW1rNzkwVjN6VDg4Rkt3a0JWcDBMVkJJQUkKQS9XTDBWQVFPUjEyY3pSSS9tNVkrWDYwN3FOWG43RHlNQnJHeEtnVUxKT2FRYUduQXhkdWgzdm9HSlBKMUQyNHNsLzFPcTcrYUZCeApGbzBZS2Q5UERpaUtUUElrVjJLWUJ6SW9mNU5NY2krZnlFaUpEN2lIcEErSkhzSTlyMFNyaCtrenZMQ3I2bFJFOEdLVWZ4cEZNRXlmCmFNWHpzUW8wNFJVdk9SNFNuTURMVDRaTGorSFZMMXg2ekRTQldQYkZ4Q2daNENBS2xVWjhPV1RoTS9BdUhTMEZTMk9oZ21oaVBDaWQKQ2xZNlBiTVMzM2dRWDdjUDlJTUF0R1kzQUNpK2VrZjA2VzJ4VlR1RzE3cVRBejlFWitmRVVxL1lTRzlEbENVSVFBbjNwTkluYWRwcgp1TmxQb3QvUGVOTmUzWE50RUpJK1B3eEF2Z1dPamdYb1BGY1dvZEVneUJkTDdUMXpiUjg5bzN2Q1ZaUFhXanF2RGY2SUtndWFLdUF2CnFOSmQyV1pYYlhQckFFQ0h2TWJqVFpianJUYlF6MUVDUUdRdlJESmtSOFM5amFablhXZ1dyTW11TlpvVlpjYWFSZmFxUXRDUEd3Rm8KTnBHNVR0RjhwM2loQTJXUlF6ekhKWC9FSkhTY09nQUFPckp2SDd5YXptVm1zRElvUlZPNC9SK3V4b1B5UUo4VTk5ZUVlMVJEbllyQgpBWEhLOWZ2bWhSeGdnWVplZXRYeHNQejN2eSs1blV1RFYrVlpBQlEyWXdLTG5jT2pzdG5VRENxdFFUY1h4M1dwOVBsV0FNRXRDYUJOCmF5ZlRLVlFBVUE2WE9TRXJuWjJld2FSaW4zL0tSMDJvZytMd0RWV3NmOXp6eEh6b050QXJCOXpnZmVyWS8xUUdqaGFFRHhjTWZNSEgKZTFHN0kyU2c3d0FnVkV2a0UwWDdwTDM5b3Z6cG1SUWFsY05MdTRQTGhxOGFFTURoc1NsWVd0bkd1L0dZS2Vxdi9VRUFrbjN4dDlyNwpmOHBqWkZDeXVJd0pIT1lQQTFBYzlTOUFIeERycUluMWlGRU5VTWowMVNlcmY1Ykp5R2JST0J4Z0t0YldzaEIxai95aEFDS0xvTE16CktTQlJ0SmtESngwZUo1ZWJSczFnekozQnZ2N3ljdnowdk9DKy9QN25KL2Y5WFJMdjE4S25rN1hQNUxJeXNoSm9QQUQ1ZTZXaEhrVmYKVjAxM2w5cC9UUmYxMVF3TldwUzY2VURlTERiako3bTVXU3pPYlZrNXVWd3V2Sm5EWmQzR3packlvK1Z5TStGM0k0dUhUY3pNVGNmbwpRbEVlSHFvUGRNbkpFYUNCNUVHZ0ZQcjhhd0RVZGIzVzk3VWNQWVpmVmh6VjVzR1BsNTNGcE5IVDVpMWFHY1ZqTDF6Kys0T0c5KzcxCmZBN0N5TGVmZjhSekNYVkVKQWFCa2dHRTR2aTQwUGJtUnV1dWVydlc3YWx4ZUpVdXI3NXRmQUI1WEFxSFUyZXhHbEFGdEZsU2I1SW8KamJwYW8zMjI3YTNwem90VFhaL01kSHdFbWVaR0RSanpuV2RIdVFjeXcza2U4b2pyRXNBTGxXQTdMaTF4dm14cGF2bHhBZVN4YWNFOQpyWjZHOWliemxrWnpxNnZlYTlVNmpVb1NRRGFUeW1SU28rRWZrd3IwSTY5VFNQVXlBa0NFZnVEQUlLc2xEYVJSb2FqVUFLQnF1UW9BCnhKZldnWUgrVHdCVVFMaUhCRkRlNXBMWnphWHpHMHVMbWtwbU5oY1hla3VYMlVyWDFwZFc2L2dDTGI5Y0t5aldDTlpyK1d1MDVXdjAKWldzTlpadTB4Y1c2RXBJK2tCSWQyaENqcEk3L2RMMXFzZmtvQUdpVmVTOEpJSzFKcHJlSUV2TmZFTDFEalBiRXNOWWtBQ1F6M1FUUQp3bGJCRHdBUUJBQTBlM3ZsbkIzOFdjL3k4M1pVckc0VEdwdVVtNzAzQWZSc1N3TUpJTWllUnYyMlZuMTdpM3BuazZxcFZmVysyaG9wCk9SQXFQa1VDS0ZqMUFya1dEQUEwSUhvVkVoZ3hVRWlDQUJTVXZSVld2RE9vZk45Zi84YTZuRHhrQVE0OHNWRFlOQTZXUnNHNGRBWUEKaUVVRkpTeGgzdGRiOTFaYzllR0E2b01CNmR2a3hGWlk4ZDZvUkJSdmpZWU9ZWjFCYVZLSXBleGtTUG9NMWc2N1p4Q2hKNUV6RVNGSgpuNWNRZllqRUtrL2RwRTg1MGsrMC9MbEU0cFVubzhXSEl6WEg5Wk5Xa0lNL29CejRodzRSYzVCekFFQVlHZ21pMGpGS09vMlNUaytqCm9uZGc2ZW5wNjdJZmpxOUI1VDVKRzN2dGlEMnpQUTU1YWlTSnNaOGsvU1I2RzVMNndVZlFjM09EQzFJLzg1RjdSdWtudWQvUEtQMzAKekhlUTlCbWxIMERQOXdWUTEwSUhvQWZPQTdkL1hXYS9zZEQrajhXb0V1aXZTMDE4c3p5dnJXSnVhK25jbHNyNTN2TEMxcklWemVWZQptM3lMU3dzQU91SXhIdldpUWFCa0FDVU1kTGpWZnJCNWVCQm9zeHNCQ0o0bWFodkV5NnhWczEzVjgxSDFENkpQY3VhNTBBalFiS3Q0CmxrMmtPckE1aHNmZmVlY3RDaFhMemtETm9DZmR6ZW80OHhqZUx3ME1TUENlbW9CUEFRQUs5ZFdtWEwrVEwrUm83Z210d0FwS3Ixem4KVDczM05nN2FLb3VheTJibU1sazV2SFM0S0thblVXb3FaZzdoYURaa3pLU2NkampKQU5xd2VoSUFpTXRHQU1ybXB0RXgyclJKMmRldQpLV045Z0JoQjlMbzIwaXRLUGNQTlU2RnRQUlI0cHd6M3Ezdi9mVzNvU0VIb1VQNk4zenlOZDZGVllLZ01xRTg1aUhvT2tWTmdveitkCkRFQXE3b2VydUNRU1V5aVVNK0dYR2g1UEppZGpJanVOeDJJQ2dLaHB0QTNQL0FTUEdna0FqZnQxalFlZ29YN0p0YXV5aCs2ZmtKR0IKQnRMK0dRQVJJMEFBSUNFQUNOVUFCY3gvT2Z2NFQ3bG9tM1EybXdsL2tWdmJsd0tBZ2oyMXQyaUVPQjZBeXNybkVxT0diUEFvMmdlTgp3d1lBWmJJWm1XeEtkaGFIenFUc1VNN3NlWEZoOVBoYzM3TVA5WDYwT3VFZXNnQ0lyQVFpanNjR1VMZXZwcis3dHJkRDR2ZlZEWFJvCjhLNHFmRUQ4djMrcG5QcndCR29hTmpHSHkyV3lzbG5aSUo2Sldkd0pXUmxaekt4c0RqTUhVTVFCaDhKM0REMk4xdHVtNCtHNlFMZXMKdjFQUzF5RW1wK0hnRmh5V1NwOS9EWUE2YjlUNHJxaUNONlRkWjljMGx0OVBwMlR4SnJEZzZiMnlTaGJGOFcxdi9QdUREZWZ1Yi96bApJNDV6QUtEcDNrOUdBV2lLOVFJRURpWTdQcGxuKzNtRmRhdk5JV3QwVjlrYWxVNjNvZDJwdVFXQTdIWUFVTDNackxLWVJmVW1rY0pvCnFESTY4eHdmZ1g0ZWRsNmFaZjlnbHYzc1E2NVA0YzFVQUpINklRRTB5L2J1alA4ekFMbnRPcTlkQndacTh4cTNOVnUzTlZvMnV4cWEKYlhxUFdlczBJUUFaamFvNm8xcGpWQ3JxbGRJNnVWUXZGMm1IQVFUNklRQ0UzcXdsWnNFZ05XZ2lURjhsTi9DbGVqRFF1QUFxYk9lUAptWUl0RmVOa2JBRE4ybHlHQU9RcEtmSVdUMjhxbWRGVXNzQlI4cVM1VktDcUFBRHh0VlZsT3VFR0RRTFFLbjNwcXJxeWpacE5BQ0J3CkQ2a2Y0cUN5ek1CZlhhZGNhajY4MFBvMkFTRGRyUUdFVnNKYjBDellqdzZnbVRzcm50NHNyRzlTSUFCNTBSVFlLQUR0OCtnMnQrcWEKbTVYUE5pcThiYXBmU20zUjBzTjl4V2VDL09kQy9BU0FYaHFvT1VNQ0tDaDZMZGxBSXdCNjl4ZWxXeWFDQXBnVU1BS0Z5dUNrWmJMUQpDQXFHMGVrWUUvWE9lUUJqLzJMTjFxaitRby8yUS9pVVZQcUU1TzlDd3JJM0lLbldDVXRHSW5vOWtZam9kYURQS1AxRWhHZUl2SlNxCm53aWZuUEFhclo5NDJYT3hxcE94dFljR0JjL2haU2R1bEQ0N0Zjc2xwcnBRcVE5R3AyQVphSnlIZ1ZGWWFXZ3hQTG9uallyY1EwZGYKWWpxNkI3MzNEaW9uOU5UVzZPcWRhUEpyM1o3aHNaK250dzBCZzU3Y0JnSDlrTU0vNUtidWtFU25IMUkvS0VrQVNvVFVUeXFBaHZWRApBR2pVOEU4UHVkTjdDb0JJOUl3SG9BNjRmeVJvMm1za0hZc2M0QjQ0NFJkTDdYOVpqZzVBUmY5WWFPMmRhMU1hRkxNMm96S2crYzJWCmk3MFZjMXJLWnJlWHVpMVNlRHBEVTJEdWhxTWVOQWlFRnNOdmRTWUFSQnFJQk5EK1JyUTVmS3RiQndEeW1qV3llc2x5UzlWY1YvVWkKUjgwOHg3QjdaaE1UWVlWdVViNEhaYjVEV2VDVWJtcHVDT0pEbi8vdWwzUjJPcGRCNDJTazNaWkwrK0xRZk54WEV4Z1FBWUJDZmhYZQpwUXIyandzTG9qd0lCVFh4QzByN1ErSUZNeDVrVWVDaVNKM0E1bVNqalI1cHZDeTQybExXUERWcE1Fck9aNDJSMURNUG56OEpRT3VlCnZqOEJJQTREWTlQWTYxWVZSU0wxOFlHeUlWODUzbFVmN3FsSlBRT1pTSzhzM0NOQkFMb2h4WHRVblo4OUFRQUtIczcvNHZ3Uy9JWWMKSjViNkE0QUFEU05GMEtQUFFHYW9TeEx2UVV1WmNGeC80cVhTREFxR2xybHhHWEFWNHpJWnhBZ1FkYzJUdHc5RkdnQkFNZCs0a0JvZgpRT0xPRHRVamsrOEFBSEZaNlFBZ29ONFBBRkMwRzNVK2pQYUk0MTBBb05wK1ZQeGsrTjNQRjk4RlNtQmxzRmdNZUNHeVk5c3lIRmNFCmZEVS9BRUFiTnhYQW4rMkVyTXpzVEFvOFBBQkhOaThESkhRN2w4Tmgwem1NOUh1enNWKzFUOGRQRmZxT1BkbXpiOGJYLzFNTStJajEKYWNpNU1ISTVHSkd4QVJUcFZrYzZxcVBkT3JRNUZ4RHRhMUgwdWk0NnBILzJvSnJCd2RnY0xDZWJtOFBOem1SekptU3pzbmhwbVpsVQorQmJ4dURtOHJFd09XamQzQnp5OU5MVXZBd0Nodmo1ZFVnQlEzM1VSL0w4QUlHU2dGUHI4YXdEVTNTbnlYOU1Gcmt1dXZMcGM5OFNFCk5JeVRjd2NQbmlTMzdqZ1FHSXJyOTc2TDlpMXYrdlVNNTBkRnJvOG5JM0JjaGlUS2dKSUJ0TkQydXREYTZuSkltajBDcTFmaDhCaTIKakE4Zzl3aUFyQ2FOMVlRQUpETVpxaHE4cUpqYTlYa0NRRk9jbDZjNlA4MXpmRGltZmxJQlpHMXUvWEVCMU9pcWN4UFRYczBPdzVaRwo4ODRXKzQ1bTIzYVBlUVJBbW1FQU5haGw5UXF4UVRZS1FMVjFjcEZlTmd5Z2tVb2dnYktPcjZnVHlBd0NpUjRBSkJ3enFXTS9JMGtxCmlHNnZTRTNCNXZLaU52U3lsY3pzNWsyRkxadnltMHZ5bXNyelBPVkZydkw1enJMNWpvMmJESUp5WFlWUVhWYWxGcFJvYTlab2E1N1MKVlR5bFdROE1XcTB2VzQxR2c4clg2U3MzNnZtYmRQeGl2V0JEbmVSUjA0NUZsbGRXbS9iWE5OU3BHbXAwSm5HOVNXV3dpdXRHQUZUbgpRQjBSU1FESmlENUFpU213TlhZMEJUWnpLNzlncTZCd1cxVnlyMmRTUEtudUtTS1hnTzJvbkx0VGtMY2I2UWNNQkJKNnZMMUs2NUcyCnVIVmJtZ3c3bStvUmdCcnI5cmJVSVFPaHZvaDFlNW8xMjlvVWphMmFnemJid1BydGc1c085VlErRjZnNE1jQWZuZ1hyRjU0YXFENDkKUUl3RCtjU3ZoS3BlNnBPL0ZxNTVPU1o2clVmMldsVDBKcTc1cURiL3NSdzBYRUxGNlBCcW1aYVJsbzdXU2RIU2FUUWFscEhCeHFnVQpHdmJzY2dsdXVJaFhudzNJMzBoTWFVRkk5SXprOVVIcDYySEphMlFHUnhJV281R2VVZU05Q0QwMXhDUVhNZGhEaWljaU9BMFpPUmgyClQ0Ui9NbFpKaEpqd0l1a0Q3a0gwS1QwT3dUY2VDRmNjd3pjY3d5dU9uM2xNU2N4dHBhV0JiY2I1Qnp3YWZWY2FHaVA2Y0o0S1gzOHcKOHN5TytOcmQrTW9ka1ZYYm8wL3Z3RmNTNjlzVElZcWRoM3NiRWtNK284cDlJRU1MbStQRXFNK29nWi93ZkRlNTRoMVYvTXdqeERQUAprVWlpN21kVXlUT1pVWU5BWXlaNTFJY3M5eUZ6YllrRGNuV3hIZkkxa2E4VzJTQmQ4Nnl2YkRKTTNWcjdxS05pWGtzNVpGWkwyUUpQCkpkOVdCVTllQjEyRy9XN0QvaGJqYzIzMms2M080MjN1aEg3SWpvaEhXbXlIbWl3SEc4MTdQZVoyajZITnJtbzNxK3FOc3RYVzJqa08KOFZ5SFlxNVRRbWFlU3dwSnZEbkhKYzEzUzFZMjY3NElkZmQwWFB2WmhGdzJBMjFBbnB2Qi9OM202WU0zQkVNRG1nR2ZDUGZMdzMyVgo4WTV4cDNKaVBpWGVwdzMxQ09CYUZlOFREY1dVZ29wSllOb3Nkc1lFRG90SG8wemc4YmhjYWtZYWRjWGNld1A5aW5pdmZMQWJUYWlSCmxVUGs4UzBTSWRaU3dTVjhLRksvK3JGSmFBWUVMdUhBdFV6VVQzejM5cUp3ZnpYZXA4Yjk0cWl2aGh5T0dqTzlBM0s4WXlQdWs0YjkKMGtGZk5mN3V2Sk9LbWE4NzgrT25DZ2I4U3JSYzNDZU9Ea2lDZmxGZ1FEYlVxVXc5QTVrZ1dBMCt2YnNlRDhyLzlsZnBuYmRoTERxYQpsV054MkxrY1dpNHJIYXkzNm9sNzRpRWw4WkRHUFU4eWdKS0Q5NnA4bllwcEQxUG82V3d1MElkSno2YXpjaGpabVl3c2VEbFJ1ZmJlCm9ZZ0JNQWZmdDVqZkhPelVwdEtIVEw5UEYrb1J3dmNFa0JUeXFRRi9lRmo2NGY3RjZWUUdqMGVCNzJFNlJ0MjUvZEU0ampicWluVlYKcDU0aEViSUxWSVJZS3hmcUpsb0poQTBsWlhud1VpYUxpNHE5Y25pWk9mRDR3R3E4ZENhTGs1dE55ODFscDJHM3JaakJ2UEphL3NEUgpSOElIRi9RZG4rUHpWYUl0VnE0cDR0Y2JCanVVL3A1cStMR0dpRlh4bzBLT0VxWGVEK25xRVMwc3ZDY05RMzBXZU9rcytKNW5abVprCmNMbTVXUms1VE01dDNDeWdHRHNMUTZYRmFiU1R4eDdIZ3dZU1BjU0FFNm9CZ2xzMEVVWk1pcVdtdTBmVzFTWHB1aUhxN1piNU8rVTkKMXlYQlRtWGZGZkhBRlRSbzVMOG1nWHY4TjhTK0RuSG45ZHJ1Ym1udjlmRXlob0Y2cmtvN3I4bDlYZUtCLzZydWVLNW84WXlmcFRPeQpjeWF5NkducGI3N3h5dUFRdm16YjUzZGFQd2RlVEhkL09zdDJMbytZQzV2cHZqVGRjMm1hOCtPSDdVZy9VK3dYcDlndVRiSis5b1J0Cm45cXBjcmhydlc1bHMxUFQ3RmE1VzVCNFNQMFEwVUlBUUJDWFUyVnlxaXhXaGRtc3E3Tm9UU2ErMHFSK3huSmttdXRpY3FZNkx6enMKT0k5aXZ6Qm1IclJmaGt5em5iM0grdkV5eCtuR1J0dnUxb1k5bTAwSE4xdkFRRWUyMnNGQXlRQTZzaFhlZEI5R3ZSQTlKSUIyQVlDOApWZ0JRbTh2YzZEUzdIVWE3eFFBc2MxZzBSQTJRR3NXbWFiU29JWnZ0ZFRzYnJmdmFYTHZkN25hYjJXWFVtaHJraG5xcHBsNm1xcGNxCjYyUnlyVktzbGRacXhkVjZFVVNvRTlmcXBDTDk4RnF3NFVvZ3BWb28xd2lrS0ZoQmU5V1lTWEhQZHdVUTZDY0JvQ0lBVU1zR0FGQUIKS2dBcUF3QVZ1TXJtT01ybU9VbzNHSVJsdWtyVTlsQmRXYXFwWHFzVnJ0YVdQNjNaOEl5dUZJS213M1FWQ1FCQkFFRExUZHNXV1UrdgpOdTBsQWFRMTN3cEE1Q3F3WkFBdGF1YlAyaWI0d1FDQ0FJRGd6cFZicXRRZUNRQ292VkVQQU5yWmFCZ1RRSzJ0MmhObUp3bWczc3BqCkFLQkVHUkFFQUVSV1EvdEZCSUNrYU53bFd2c3E2aEF0ZmJPLzVyVTV1ZmV4MGJ3UURVUG1vWk1Bb2pBWWNJd3hHR2lwRkFWcm1sT0cKYTgvaE5SOE15RjlMVEc5OVkyNUwra2FDUHFSK3dEMWt4dFJQQkJYNmpLR2ZrU1QwZzhxY280Q2VjZlFUTHptT2x4NE9saDNCTngwZgpxampXUG5NOXF0Mkdyd0NqalRiT3lML3hBUFRDREFHK2JtL282ZTJEcTNjQ2dLSlBiVWRidXljREtHazdkOVRkSjBVL3c1TmZJL3BKCkFDZzgzMHRrV0Q4a2dNYlV6ejhEb09SUm4ydUxrcElDSURJZEMyM25uNmtyYkJNdGRGZk1hYTZBdjZDQ3BySzVqWlZsZG9IRHBVRDYKY1JzT05CdVB0OW9TQUhxdTNVV09BNUVHT3R4c0JRUHQ4MW9BUUpzZDZzMFdWWU5KdnQ0aVdtQ3JuV3VUSXdhTm9PZW1mb2c3WnpwcQo1MXRFLzM3OXI5RmdmK0hVaDFrWkZCYVR4cU9sZit5WVBQQmxDVDZnQ3ZyRWVJOHMxTXVQancrQ3dVNVpyRWVGQU9Rak92SEUxZWI2Ck9SUUtMWnZEbU1obFo5RnBPUndPQUloQm9TMHB1RHNVMEpEdWlZNEFpRHkrUlJJQWlnL1dQYjM4L2dTQU9OeDBGZ1Y3L2VVMWVGd3oKNUZkSE9xclE0cXorY1I5bm9GOFY3eExpWFhLME1jS1hsZUhUK2JybFA2bGJNeEUvTlNkd3JTYm1sK0hkdFlOKzhhQmZHZ0lxK2NZRgpIK29EMUYrTGQ2bml2ZEpBd0xKeStaMFpGSHAySmlVWlFFK3R2RGNlSWswMjd1TkpwYzl3T2lUOWZtMUJIanNkV01XaDVHYlNjcmxwCldSd3NoOGRtWW1tVkd5ZmpROFpCZjIyZ2d3OW9pL1lMVTcxQ0p0Um5pUFRWeHYyaWFJOFlBQVJmRng1V3ZMdDdNWTJTa1FEUTdwM0wKZnl3QWtjTS9BQ0FlbDNISFJFNDZEY3ZPek1uRnNMMlMreU52TFF3Y3pPOCtPSy9qL0JQQXg0RU9DZTdYK2Jza2dWNzRZb2ZiQXFVQwphTXc3SVpHUTRlZXZWMlJ5TW5nY2JtNE9sc1BOeU9SUTBkN3ZIR28yZzUzTFFoMkoySmxZSmp3aVd2cWJyNi9EQS9vRWdNajFYN2NHClVOOTErRWhaOElZMGNGM1NmeFZsc0VzVnVpNGY3RkNIYnlnQ1Y2VVFlRE44UTlaL1ZkUjNwVGJGUGQ4Q29PN3JpbTZmeFAvcnNyL3YKelo5MmZ6YWRtWVBvbGpQaFY3Lzg5SW8vbU8vODRDZW1TOU9zNTZhNUw4OTBuSi91K0dTRzYyTUlzUnhzR0VDVGJTZ1AyUzQ5Ylg5Vwo1MUs1M1NJQ1FHZ0ptS3NKamZva0E0alVUektBVENZdEFLakJWQ1UzcWxlWmo4TnBwem91VGtYYnpzTTV6MCt4bm9OTXRudzBYaWFaClA3N1BmUEVoOC90M215OHNzNy9RNURILzZBQnFzbXZSU0xZVkFhak5adGptTnNHbkhHaHEzT1YxdE5qcmJDWlZYWU9NQUJDcUFSSnIKNURWcXNVQlRXNld0cWRMRHJhaEdLeEhyeGdCUWxVeUxBRlM0dVdyTXBMaG5kRkpteDI3cWh3UlFFWkhDVmdRZ2VCTUJ5RnVXN3l3dApjRlRPZGxTdGFaQVYxMVVMZE9WVm1ySXlEWCtqVnJCZVc3Rk9Xd0lNZ3F6UlZRQ0FOdWdxTjJvclNRQnQwdGV1TUxVdnNiNnd4dmhzCkFrQjFGdVV0QUpRb2doWVkveWtBemRzaEtOaUZBQVFTZ2p0WGJLbFNOQTREYUVkalhUS0FVQy9FWmowQzBHYlZ0bWJER3daUFlQMHUKQktEeW93UGxhQkNJTk5BQTBST0lORkN2NkV5bytveGZmQWIwQXhicGxieU1xOTcrN2JwZFdRQWZNQTZkRGdaaTBoakUxQkFGeTZCVApxZWtZZzVWT3JDTlhUMTR4cEhvZkFCU1F2ZnBOOU55YzRRcUpYdzJOb0NmaEhuS2VhOHhDbjlFRFB5TmJXQ1RtdkNBa2ZZYVRtUE1pCjZJTlNmQXdDQU9yYmRBQXZnZmNlRlV5WWlkbzkwMm1VTlBwbzQ0ejhHdzlBTGZjOEZWKzlDd0FVWEFYb1FkTmVFSHo1OEhidUNmMUEKeUZYdXlmb1pOZWVWUE8wMW9oKzB1M3RDUDhuRFAyUHFKeGxBeWZyNXdRQWlEWlFNb0t1TGJYOWMwZkNVVTVyZlZGbllESDlIYURmVApPYzJDZFhaQmcxTysyNlUvNEtuYjM5UndyTVY2b3NWeGRMT2IxRS9DUU9RZ0VCaG9iNk5sbTZkdWkxT3p4YWF4bXVWbEZ0RlNxMmllClZUTEhMcDNya0kwSzNEbmJKc2x6aVl1TXdyTi8vRGM4SG50aUtkb2prOGVtTXpIcUtlWGRmWDljaC9jVDIyY0NnSG9FYUNIWTZPdjMKU0xwbDZETGZCeGQ3VmRSWGc4ZFUrL2V1QWdUQUpXb0NoNVhEb0dlejJRaEExSXg4MUxBSDdldE9vaWRHbEU1L0x3QTl1ZlFlY3JVYQpBSWpIUlgyWUw1MnZ4Q01xQUZDOFd4VDFpVzZ4Q2d6dEh1clQ0SjNLMklBNS9GK2JBdkQ2KzhITXhRK3o4T1B6Zy8rOUVSK1FobnNrCmtTNjBXQ3pjQncvc0ZsTis2cUcrR2hBRHNBREhiVTdIZkhqSmtzbW1zTG1jSERZMWw1bEJwV0NQTDc4N0ZsVGh2UkkwTFpoeWhwR2sKMEljY0FZTHZlZGk0WlA2ZDZkaHRIR1pXSmlzcms4bk95V1F4MkdpdFpObjZ5ZEdJSnVTdndZTzZvVjVOZjhlYVZLK1FDZlhvQm50cgo0bjRKQVNBbGZHZndrUEsxOW5uVU5Eb2FXT0xDVXdwMXorN0hmaFFBWlhONUNRQ2hvaVZlR3RyRE5ZZVpnYVhuVCtUKzl0RGk2T21DCnZnTnorL2JQRDMrTkd2d00rcXF2OTZEK2hORWI2dThJSUZJL0tGM3lHRzRROEtmRGkwVnVKakFMN1lZN01ZZWR4YVhCYjFvQ1FGd3UKTnl1RDhzbkhGVU1EdWxRQW9iVmc0eVJ3VlJ6dVJFWEsvbXNpM3hXUi81cWtyMVBlZlYzU1M4eDg5VjJUOW9LS2lJYUtBOWZFL1Y5Lwpid0Q1cjhnN2U2VGRGOWYrZG5QaGhJbnBMTzV0bWZTMGV5ZFA3dXk0K3F1L2QwOHh2bm0zNVpPcHRuTVBPeS9OY0Z4OHhIRVI3WGo2ClRRQTlhRDBQbVdsNWI1MTlSNTFMNmZHSUd6MnFGcGNhalFBMUplanpEUUI1bkdxWFEyTnhxTXdXcWNta0JnRFZtNnZGRFlZVnBoY1MKTTJ1VExlY2ZOSitiWlByb0FlTlp5UDBOSDQyWmUrdlAvcXpoN0lNTjc5elo4TkZTNjhsR3QrblpsaDhUUU0wT0hZUUVrTmVzYWJSbwpXK3lHemE2R2d5M3VBNjJ1blkzV1Jwdk9iRlRvNjVWS2cxS2lWUWkxc2lxdG1LK3Q1UnRxQVVBZ29XcU51Rll6dkJqK1J3TlFpbjRRCmdGTDFnMTYvdHF3dmJDbUdwL0w4eHRKWm51SThaM21CcTdiSXJYckNXTCsyWGxHdXIrSnJ5eXExRlNVNmZyRzJzaGpvUXl3S1c2dmwKZzRlU0FWU3FFejV1YkZsaU9iYk90RjFVWDZjMmloR0FySXJ4QUpSY0JQM1BBd2kxQXRxRkFBUUhTN2NLeEUzaVpwY1dBTFN0Q1FHSQpLQU82Q2FEZExab3Q3YWhjNDdLOE1iaGhEd0Nvcit6SVFOblJRUGt4QUZDeWdWQXhVTzFMNFpvelBUV240N1d2aG10ZTdxOTlhVWo5CjFza0Z1alNNUXFIRE13YWEvMkxSR0JscDZmQXlHcU5SMFMyRFRSWU9sOTlSR0pPOWc5ZStINVM4a2x6SW5GeldBK2dKaVY0aGsreWUKd1pvemlaRG9HWEhQaXpkRGNJY1F6L09KZ3lUM0hJTkV5bzdHU29jVExUa1NJeEl0UGh3cjNvY0FWUHJjUU9uK2ViUTdrR1ZvOEppLwo5eFNZZXVLQ3dkVTdJOC9zNkg4S3VMTTF1bkpMYkFWcTdVT3VjaytNL2R6czhmTk4raVNQK296U1QyQytoOGhvL1NUVDUrWTI3eU5GClA2bkV1WFcrRlVDUUswbjVlcW1qWTc1WlpsQk1hNnNzYUtuTWIrVXY4UEFMV3dRckhYeWxRN3JkcWQvdnFUL1kySENzMFh4ckFPMXIKc3U1eUc3ZTZ0RnZ0YXFkTkpUWkpuelNMNWx0RVlKMVJCaUx2bWVlUTVidGxBS0RuTDcyUDQvR3E4aElxaG9wdFFlSGJ5bjhTL1AvVwp3ZlY3c0VjWlEzTkcxYmVvWlJueW80NTI4UUZpMDFBQTBLRGkvZmNxcVdrWWgwbkxZVEZ5T1hTMHlUeVh5cVN4SHJpZGVmVWZJcnhmCk9RcEF0eWdBaWlKdzFKSUFpb1VOankyOGkwN0JNdG1vakRlTG5aM053djd3VzFGMFFBSWZnUGVpeVRVMDZaTnlodUg0YWdLOWRVT2QKTWdEUTRPY3J2M3AyMWs4bWN1NjZuZDJ4WTNiZzB4VUFvSUUrWmF4VGloT3J4K0ZMSHYzcGlmaDE0VzUrekY4WjYxSEhJOHAzM3lsaApZalFlazg3bXNnZ0FvZHFhWll2dmlnYlU2QnVJNkRCZVJ0Tm5PTmRxOEhEOUU4dnZvbUFzTHB1VHhjN2tNbGxzVmpvTExSREYrTVdQCjRIamRRSGQxOExveTJtSEUrMUViZ2pFVDZGSU8rb1F4WXZGL3NCczFDTUQ3RllmTXM1SUJ0SC92RXdDZ3NFLzVZd0tJeFFiNDNERUIKTlduS3l1UlNNYmJzc1hzRzNsZ2VQVHg5Y05lczhPZWJJZ09xNjEzbFBRT1NVSWNzMHYyZEFIUlRQM0QvRFVrb0tQelRYeFIzM1ltRwp5dUZyeVdIbndIZWV4Nk5ONFBIQVFKbGNIbnl2MkV6V2JUenFIMzVYSGV2VEJJakM1KzhJb0w1T3FiOWJkcU5UMU9XVDluVEorM3BVClhUNzUxUzdKdFc1NVY1ZWlyMXZkM1NIdDdKVGU2SlRBZTNzN0pDbnUrUllBOVgwdGg4L3RmdnVKZDB5RmFSd3NPL3NuWEF4YnNISloKTEJaNStUZlhIcXg3ODM3SHB3L1p6aysyWFpqcXVEalRmV21HQytVUklxU0JKdHZPUFdqOWFJN2xsWEo3bTlrdEJ3QjVBVUFlVFl0SAo3ZmJlQWtBNnMxMXR0VWd0SnFYZW90R1phNnZxVFl1TXIweTJYSHpRZkdHUzZmd0R4blBnbS92cXo5NDY5OVI5K0RQREJ3L1V2ZldUCityTWpBS3JiczduaHh3SVFPZnhEQUVqcnNXZ2dYb3V1eWFwLzFtUGEzMkxmMStiWTRqRzViRHFqVWFQU3EydFZjcUZlTGdBQTZjV0MKT3BIUUlFSWpRR3B4clVvNkZvRFVZS0J4QVRSZVptL21qMHBSVzJWeVpyZFdGclZVa0puZFZGN1F2QkgwVTlCWW1lY3RtK1VwbmVVVgpGSGkxczczT0plYk5UeHB0R3cweTFQNUhXMUdxNVpkcXE4bzBWZXZVQXNnR0RYOERHaFpLRFA5VXdJYzkyZUJlWnRtLzN0UXVxdGVyCkd5UWFLeXAvL2xZQVNZMVZWU2IrV252RjRoWlUvdnpEQUZSQWxFS1RRMEdMdDZGbTBQREwxTmFvQXdEdGFES2dRYURoSW1oeVp3eE4KZTd2bWlOUDRwNnBtQUZCNDQ4Rytrb01ESlVjUWdDcU9rOFZBcUI2STZJczRVUDFpcVBvbHYvQlVYUGdhV2gxVzgxSlU5YXBoOGpPbwpNMDU2T3R6U2FIUjZXam9rbmM1QW5XN1RxSlFNTmdVa2xJYXR5bjQ0SW5rREY3MGJrSnhLalBFa2l3Y1NyRDBEd0NLVEVFKzQraVZJCndqMmo1cm1TM1pPU3hDS3ZZOG51SWVrRDdpRVQyM1E0dm5GdnFQaGd2UGhJNTdvZDkyQnNLdGtCK3ZzRHFDSXJMN1FhTFhmdmY2STkKdWNaNXpMM2NiMDBmQ0VtZjBEeVNQaWhBbjF2clo4eVM1KytlN3d1Z0s0KzZBM1B0VzJwVlV6ZFg1VGRYZ0lFV3VmbjVyVUs0RmRyRgpMUTdOUG5mZEFXL0RVYS9wdVdiN2tmYmhBcUJSWlVBSVFJMTJlSTdZNGRKdGNXb2E3U3F0U2JiUktGNWtyaGtQUUF2ZHl1bTIycGwxCmdxMnZuZ0FBdVN5V0RDcVd5WUliV3YxVGQwUStYNHYzVkVlNlVaZG50Sm9KWFp0VEwrRW9NYlFrU2hidFZVWjlvaUdmR0E5Si91TVAKTWg0Yll6T29RQjhBRUkrVndlRlIyWFR1WGJ6MHYveFppQStvb3VTcXNlOE1vRmkzQ2szbGhQU1B6cjA5QVNBbWhaazNqZG5kYVJnSwpTcU5keW5nMzBRYTZmOXdpNktFZVFiQlBQZGdsSFBScFloL092bUNmakdYUTRHL3I0NGE4MER0TDhKNnF2Z0UxamlxQkZKRStkYVJ2ClhBREZlclNEUGtHc2p4L3YxNFg3QkZlLzB0eDdPNTJid1FRQVpiTW9BS0IwS24zaG5OdkR2V2dFNkFjQUtIWk5pdVBtalJ2dWhqOEcKTmdkdGQ1L0RvM0JSblhVdURjc29XL3R3Skt3RnpjRDNKTlpwaXZtUUpzY01HdlhwcVNhWHN3VzZaZUZlTWU1WGJaWk9nV2NaRGpHaApCZ0E2dVArcDJCRGFEWjRBME9nempHUnNBSldXNTVNQXl1U2taM0c0NklETnlPTFNidU15c2ptNTJSeG1GaFBqNWREU3VWbTNVOUxlCjlpekVYNXpSZC9UaC9oTUYwYjlYZDRWVWcvM0tZSWNvNkJ1NzF1Y1dBQXJmVUF4MDFjWngrZllkVDlJd1hoWXZHLzdUSERBaWg0YWEKQUxGWUFDRDRmV1BRTTZiOGpQdVBMOFFSdjJxZ1EvSTlBSFJENHV1VWRIWkxRdjBhK0wvaU4xU0QxK1RFN2htcThGVkY1S3JTLzZYSQozNm5zNkVJODhsKzdCWUNrOE41UjZia3FEbHhUM2ZoYTFQM1NvOXVGTXpBR2xwdHpCd3ZEcXRYeW9hR2gxdmYvZXAvdXJYdE5GeDZ3CklnQk5zbjJjNTcxTUFtaTYreFBTUUtDaUtYWjQ3N25sbHVPMWRvL0RKVy8wU3R4ZUFKQzZCVzE2cWswRkVGb0M1bFE3N1FoQUZyUEkKWWxJQWdGUW1TVm05cmJEK3pmdU41KzREOXhCRE80QWJ1Q1dUT3ZhVFBBZ0VVUHRwdzRmTHJTZWFQVVlFb05iNkh3dEFhT2JMcG1tMAo2VWdBdVUwb0xyT216YXJkMVdqY3Y5bTV0OVcreFdQMjJJMzFEVHFGU2xtbGtmSTFJcjYyRmdCVVhZZjZRVmRyeERWcUtiRVNIaGtJCjdZMnF1bWtnYkRZeXpSaEpwYzhJZ0w2Um9qYkJTTWJRRDZTd3BiU3dpVi9rRlJhNEsvTTg1VE1iYS9JYnJZVk4yMlpiVHp4cTNyYkcKVUYrcXF5blRBSUNxU2pYVlplcnFUV29oa2FxTldnR0UxRSt4b1pLdnFYaXF3YmJjc211OXFWVmNyMWNhRVlCMGR0RXRBSVFNWks0RwpBQWxOL0hXT3lpVS9GRUR6dDZQU242S1J1YkFGMjFBemFQaE5BZ0J0YlRTUUFFTHRFRnZyZHJicDl6UWpBTFcwYTA5WUxEYzJ0UTVzCjJBY0E2aTg1Z0FCVVNnd0NqUmhvZUZWODFjbCs0YW5lcWxQeHFsY0RpQ2FuK3FRbm41d3dDd0dJUnNPb3RJd01KaG9OZ2lNYWdoQzgKWWt1ak1URTZqWmFHUFpZOUpTSjZOU1o2TXlnK2xSamRnWVJyWGs3S0dRQldpQkJQc25zR3EwNlRBZlFNOGs5QnlLa3VrajZEbGNQaQppWlNmakpZUlNWcmNudXllNFl6UUo3THBVSFFqeXRDR3ZiR1N3M0R3ajVYTldXUlhIL1JsZk84YW9JMlpNOEpvOG10cllPVm1mTVZXCjFOMW5PYkhXblNoNVR1N3BUSTc5Sk54emM4SnJuaGVTbVBOSzZHZGduaHN5M3JSWFlyVlhRaitkYzYyUUcvT0drMnFkTWZPdEFMcSsKMUhrMUtRQ2cza1hPVjR2MStTMDErVTJWY3hyNUN6eFZlYTAxQlkyQ1VsdXQyNnJhVGV5S2VveFlDWDk0QzBMUG1BRGEzK1RZN3pidgpjdW0zdXJSdGRvM1ZxT0EzaUpkYUFVQnlNcWdnMnFGSXZMblFycHhoRnhWYVJMWWp1eUpEOFYzYnRxYW5ZVnk0ZkZNWTVYTnpReDg4CmpuZFV3QXQwOEUyczUxWjF5dkUrY1FqdGNLbEd3ejg5a3RoQTdkV3Jxc24zWjJUUUtXaFpNcncwWjlNUmdCalp0M1BvLy9sN0FSNVEKUjBjQVJKN2h1d05vY2RFRXBEUUNRSFN3OHFiN0ltRjlQQ0FhNmxMRnUyVEF0VnZBSmVvWGhudEVZWDkxNUlZWWY2ZG9SL1VER0FQTwpRV3N0ZTJqdzVVZnhyMG9HZ25xOFd6TFVKUXI1VmJIZWNjOEQ1aGpxRjhONUJudVVnNzFDUEdKZXRTSUxNTUdHQ3o4Q0VDdWR5aWlhCmxSUHd5ZEVVMkswbStFYlRoMHlrb3pvV1ZaZVUza09uMDNsY05wdkc0VkxadVN3MkRlMjdpaWtFVTZNQkpSN1dSSHlDY0VjdC9IUlMKdkRJY2VIaFJYM1cwZytpQzJDV09CZVI0bjk3TmZ6QUJJUGdEUFh6d2FSSkE4ZTZhMURPTTVQc0JLSXVIVFdBOWtNbWdaSEV4TmkrRApuWjBCRi9qbEQrWDZUaTN0ZWEwZzlPeDl2Ujg4SGdtWUJqdEZ3VzVoZnpmNjViazFnSkwxQStuN1doNzNxM3M3eS93OWxzZVh6VWpECk1qSnpzQnpXUkM0UGJaMEc1czdpWlhLNDZUUUtkVkgrVDd1STg2TkY3MFFQUnJJREVOa0tLSlUrWkNMWGlmZmVrSVMvcUxsMjlyR08KTjVkZWVYWEIxMjh1L3ZLMUpWZGVXWEwxMWNWZnZMMjA3MytFZmRma2dRNUY2TXBvOUh3N2dEcFVuZjlkMWYvOFV1bXF5UmlIbXN1YgpBRC9acGwzdE9JN0xUdjNwWHYzYjl6WjhjSy9sL0JUN3hYdHRRSjhMTTV5WEljUmFNR0lReUhYeElRZTg5OXpUMXQwS2g4M2prcEFBCmFtN1V0SGswWHJjZTNOUGswVUJHQThobU1OdlIraSt6VWE2MWFKUm02WVk2OTR5NkR4TGlJVU5pQ1BLQThkdzRPWHVmOGNQSjlXL2QKYlR5N3duYXl4V3NpcTBGK1BBQ2hzWjloQUZsMVFCK25TWTFpVkxZNURYdGFiQWZiblB2YVhOc2JIWTAyczZsT0oxTExoTXBhdmtJbwowRlFMRFNJQVVJMFc3UWsvMGc2UnFBUWFBUkRrbndKUWtuNFFnRUEvQ1FDUitrRWpRQzJWaFUzVlJSNXhrUmM5aWVjMXlXWTJlV1o1Cjk4KzB2VHZmZkh4Vm5XdVRUbDZpRWFDb3EwdFZ0Y1hLR2dCUXNhYTZXQ01zQVJYcEJXUWpSSUc2OUprRzAyT1c3UnRNalFTQVpBQWcKUFlobkhBQXBUUWhBaW44YVFJVTcrUUNnMmR1SEFZUXFnYmJ6eTVwcjREZXAxYXZkMG1UWTNrZ3NobTlKQUVoREFFaC9xc0VjV3IyWgpCRkJmOGY1QU1URUlSQmdJWmNSQUljR0pYc0hKdmlyQXg1a0JOQnQxcXFQNjREVG1uUmhHb1ZMVFVidEFPZ09PS2RSMGRFOGFEUUdJCmtvRXhhRlFNVzVZN1piRDY1Y0hhMTBMaUY3NkpucGREMWFpMENKSndUMGc0TEo3aGdISkdRb3FIVEtLNEp6TENuVWpaY1VqaStKdXoKWFljakpZZWl4U2lSVFFjaDBZMEhJeHNPUVBCMWU0WTJIUnJhZVBodnkxd1pWTFRXUFFPVWcxYUNqZjF2UEFBVjUrYWpvcCtsN2VISApOdVBMdG9CNDhHWHQ0ZVZ0MGFYRG96N1JSYzJRTVd0OUV2cEpBSWpVRDBrZnBKOTU3akgxa3hqNFNkVlA4dTd1eVQxK1V1bnpYUUFFCitoa0ZvT3RMdkZkWHVEOWJaVmpVSklKWERnczgvUGtBb09icUdTMkN0VGFoMWF6YzVUQUFnSTU2akFDZ2cxdUc2VE9xRGhvTUJBQTYKNERLRGxyYTR0TzEycmJkQkpXNlFMYmVOQzZBRk5rVytHKzZSU2RyZEErSFEwWU1INEJjTVhrbW5wM09YVEdKMnZ6Z3ZlbVZqM0tkSAoyNEYxUzI1Uld4UHZFOEdMN0VnUGZLUVFBQVRPR0FocVZ6NTZINVdDR3RabHNsRTNQd0pBdVRrWjZaOWQyb0FIVVN1Z3lIY0dVTGluCmhnUlFKS2hia0ovTm9LV2hqUmNJQUxVMExvN0dhc08rTXR5SHlvQWlYZHBRYjFYcUdZYlA0NWZqWFZXRC9mTGdYeXVIWHB5NWFjRnQKYVV3MkhjdFlPak8zNTlDaTBPOGVEdzFvY1o4bzFGWFY3OVBFeGw5T1A5UXRIK3FYQkgxd0hSVUQvdkNvWVd2YlRCcEdBd0JsTWRNUQpnQ2pNV2RONGZaM1NId2FnZUVBeUdGT1hsaitVaHJIb2FSa01qSHBuTmpaOUNyVnMwMjBuRDYyLzhoY3JIbFgwWHhFTzlWZmdJVkYvCng3Z2pOMkdmWXJDcktuSkRDaisrQU1BdUpNZjlldjNhdTBrQUVVMjBLVWNQcjQ3R2xRQ2dJVjl0NmhsRzhpMEFBa29CZ01nbVFBQWcKRmcvTFpHUk40TEE0SEVvbWo4TmxZaE96R2ZCU2FKdGsrdFhUUzJOSEgvUWRMb2o4VGhTNExnajFDZnM3MFg2b3R3RFFLUDBneEhUSQpRemNRZVNOOXl2TWZpVzY3RGVObXBqRVlMRjQySXl1VG5jVmhaZ0xHZUhSNGJCdWZtaGtNaUlORUFkQjNCMUQ0S3RKUHFFTVcrcS95Ckw0L245UnpJNjlrM3ErdGdYdGVCb3A3OVJaMTc4LzkyTEQvMG40TEFOYlFlZnVESzl4NEI2dXRRWHZ2bGh0NUQ4eGJtMzA3TFpFNWcKNVREWnJKK2ZmV2N3TXJScTEyL3ViL2h3c3VXamUweG9xZGZQYkplbTJqK1k3dmprRVR2YURteXE0K0kwNThjQW9JZWQ4TjV6R3kxYgpkQTVqczB2czlZaWRYaVVBYUxOWDIrU3VKL1V6Q2tCdWg4cHBxeWQ2UU5lYWpWSUFrTnlrV0dOb2ZzandFV2lHelAybXM4bDV3UGpCCm1KbGsrZ2dlNUpTR3QzOW0rbWlsNDRYV1J2UGVGdjJ6cmZvZkMwQk5WaDNvQjhXcUJ3REJuWFl6V3YxdU5pcmd6YTB1NC81bTI2RlcKOS80VzF3NnZ2ZFZwcWE4M3FEVHlXa1ZOdGJxYVdBaUcxc05YalFrZ2hRb0I2SnVJdVpsVSt0d2FRS1IrU0FETmFiNEpvTUlXUVdHagphTFpYTnFkUlhOUmNrOStpbWRIWThvajd5Q1AyeTNOTkw2K3NhMXV2VllKMUVIZFV0U1NBNEFBd1ZLS3RKZ0ZVcWtlTkVLdlV4YzgwCk5LeTB0Rzh3ZThUMVdnQVEyZ2pNT2U0SWtNb3NWRnFFQUNEWi93R0FTcHFyeHdQUTNoWXRBS2lwWGZkU25TWCtaSHYvK24yaERRY0cKTmlFQUJVc09BWUNDWmNNQUlvdUJRb0xqZnY2SlFOWHBhRGxxRGhRVnZ2QlY1WjQ3S1psVWpKSkJvYU9LbnpRcVJxVXlPRnlNdUljRworc0hTc1F6VU5lZlJpWk5EVlMrRmExNE5TMTVBRWhwSldIZ21FWEFQbVFSOXdnSTAzak9PZm9ZQk5Fby9zVkowU3g0azY0ZWtUNnArCkVJRFc3SXl1M1lkdk92ckZNbGQ2QmgwQXhLRUMyc1pRRHZsdlBBQlYzREVIYmUrMXNDMjZmRE8rZERQZ1ptaHBXMkJaUzJMc0oxay8Ka09RSnI1djZtZXNCK3BDNU9mWUQrcG5yU2diUXFLS2ZCSUNTeDM2K0w0QTZGamtTdWI3NFpsSUJkTzFSRitUNklzLy9QdW4renhVTgpLOXdBb0tyRnJxcTUzdXFDNXVxSDI0VFAyS3FOSnZsT3UzNi9xdzYxQW1xMWtRQWFWUVpFR3VoQXN6TUJvSzEyZGF0UkkyK1FQbWFyCm5XMlRKZENUQ055NXlLRUNBRTF2cUZwdlZQV0ZneStkZmhGK3dTYXdPUmtabWROdng3N2FOeVA0eFJyY1g0ZEdnRHFsMGI3VTYvZHcKQm4wQ05CYmkwMFY3cW5DZkxOWmJqZVBHR3NFOCtGbG1zaklRZ0RKWmFFb2lQWXVOWWUrKytkZy9BNkI1c3pJVEFPS2xZNis4Vkliagp0ZUdlNGlFMFZhZUtkT21qZ1hFYk5nWjc2L0JPNFdCQTEvWGJkVGUyM1h0dkZwcWZaV0JNSU1iZlcyZDFucHNiN0ZQanZlS0FyMnFnClY0Y1djS1djZ2N4UUY1aEFOT2pYbzRYbC9TbzhyUDc4OCtKTVJpYUxTMGNBWW5BQVFJOU1ZZmx2aVBIeDFVaGtOSDNJQkxwRlVkeFkKS1p3QmYvNlRKbkYwNnJtZmZsYlZFNVFGd3pvY053ejJpUVo5RzRlNk5OR2VpbENYSU9vM3BIaGxPSENxV0ZkMXZBUHRBb3QyT2d0SQpndGNVd3NVOGVFR1ZDaUNjMkVwMm5IdzdnRExacUEwMENTQUdqNU9kQlpMbWNUa1RPRXpLN1V4R0ZvZUtaV1ZOb0dIL3VXVng5UFMwCi9tZW45NTU1UE54ZEZRaFVEM1RXandlZ01RT082ZXVwQ1Z3VlI3NVdSTHVVa2JqTzFib1F3emladWVtY1REcVhBK0NHL3orVGw4bWsKVTZnUy9sSWNSM3R1ZkM4QTlYYkxmRDRaV2dQL2grSy83SjhhMkY4UU96QzdmMjllWVArYzJNRUZmWHVMdmp4V0ZQcHp0YTlUMGRFcApoOXRVOTl3YVFQQXBYM3p3K0pWdGovemtEaXFOeFpqQXpKejRzN3YrNSt2L3ZYN0RsMmMvZjEvOUI5T2RIOS9aY0c2UzVkelA3Sjg4CmJQdC96TjBIWEZ2WDNULyt5OTdESzlON1kyeUQ4Y0I3NHoweHRzRU03YjMzUmdQRU1tQThNQmpQN0dZM2lTZWVHZTJUN3ZrMDdTL3QKa3piRE5xQXRvUW5jL3puM2dvd1picEttN2QrdnowdTVDQ0ZFUUxwdm5mTTkzM050UGx4emp1K0RBWmVtenl1L0EwZUFkTzJGNmlxSgpUbHB0b0ZjYUdCaUF1TjhHUUNvRkdRY1FROEhlTFRiUEZOOE8wMmVHOGlhZUp3TUlxNCsrTVVmKzNsUkZPd0JRVGFVS0FBamtod0tRCldkTnZJSk9tSDBCQVB5bzVUNmJnZ3NzS2xlQzRYdFphcVdtcjBwODJnN3ZTbXNwMWNwbUl4V2RRZUdUS0V3R0VEd0loeTJxSUk2ZTYKYkpUMFErZlJOVlVFa0NYVnhTQ0xxMkRsNW1KejZXSXpJYWV5REthYXVLaVN2cWlDdTZpU3VhaUtsbFV0eXFwb1dHQjhhYjcyMnV6eQoyd3UxYitlSnpZVWNXZ203dUpoYlVzcnZEK3lSS0N3dEVSR0xoWVFqSXBpREl2SitNU2xmVENtUzBPa1Nsa0RHRVNsWUFqVkxxc0dpClpjaDBUR0Fnc1lZdTBsQ0UwRUFVam9vTUFNUlNFRWtLWXI2bWRLMjVOS2VSQUp0YzF4T0daRmtERWI5YzFsZzJLTEQ1SVRqSVBnNXIKZ0FDRHdJZllodkNsTzZwTE5RWnVUWVd3eVNBNmJoQWVyd1QwZ2Z0Z3dOKzlXZFo0bEZ0M2xQdnJVbzEvYjVOdnp6SEhvVk9lL0xQdQpRMmZjY0JDb0RhK0dobk5oUjE0QURQS1Z2aElvZWNGZitrSnY2V3RlNGhzbytaMWY3elluUnliQ1dwL0lhQkE0RGpRbzRFMXFiRFJzCmhCaURSSzBadTZDSCtEcEtlQjA0SmtSNnZSODNoTmZ3R2E3KzQ0R0NucUVCdUJrcGdjSnpneE1zT28rbnArUmM4SEJyWDlGWnRQQXMKZXFnTnBHZC9NMXJRMmdQbnZDQjlRSG9PdElhRDdqM3RLanpsUDlEOHhTYkQwekZqRUNRYTlqZU53dnBBai9RUGlZU2ZncE1Rd0VyUgpjSXY0Qk5nYkdqRTh2ZEd4cnhGZFZ3ZXNFMWhYQlNTRXJqUzdOZzJ0OVhua25sVkdQQUdzd1k5dmhSNlBkM2s1U0gvRnovSkhhOTM3CjliTmNDMkpmcmdHeDVhcEJSbHZoRlo0Q0d6NExCbnNoUHQ3MkVLQm44QWpRWUF6ZFh3c0hnWUIrT25EM2JEVGcrVWVleWI3T1lOOWcKb0hQWlV4dm91UWJ5aWdvNGRMcllSRjVsSWhjYm1XYWQ4SnhhZE1FZ3YxQ2pBWUVyNFFmbFFyWCtmRlU1eUJtNEVFeHh5Z1FNSkd0VQppNnJVZkltYVRaYVJWbXZKeThyWnk3V0MxVXJoQ2hVcld3L0NYcUVUTHRkSVYra0U2OVhVSGR5U1AvM2o4Nzk5OXBlRTZJajA5Rmh3CjBrcEpTZnE5Y1c3ZkwvY0dmY3crOEo3WVRlcTFDWWFkdndmaUxPbHpNYUZSbkJ5QWxhQ0wxZWN6blc3TVRFU1FwMUtpaytJalV0TWoKazFLUThjbFB4eVBJRzYvdlJVTWljSHZZb004SnZwd0dXeFVEWThIRlNzUHVHVXV2Z3grMDBGQVh4MjFuTEZ2NGJFd01rcEtVbkJnYgpOejRsNnZPL0ZmYTZTMUdib005R0E0cUNpOWh0b3haQm93NUtqNTNXWStkNnVyaC8rVVB4elN0NWI3K3g3djEzdDkxOWI5bWZQdDF0Ci81SWNoQ3ZkV09DUjlMcG9QYzVSSWRYaktPdXh3eXFja0kzYTI4VUREOERoNEdkbHhvSm5hWEp5WkVwYWRFeFU5S3pKU1E4ZTBQcmMKRlBUeFZXRERiREZDQW02VzM4bDcrK1hNVjg5bDJMNFJvcjNsb1c2VzMxTTYvSlpQVHNEQkFEOXZ3TWtOZEpDRERpN3FLa08vb0c1YwpQREVwTWdZMktreUxqMExpWHI2VTF4ZkE1dDFnVDhXaDk0QUhQT3lBbFFidjBFb0Q1dlBaYUNCb1FGaElXQXpycVJOZ2lkSlRhWEVUClVtT0JoZExqeDQxTmpRSGlTVTJLVEFPWHFRQmIwVW5KMFNtcHNWRlJhZnR5a1k0ZjdRcTF6UW9kVytLNWQ4RGg0emdjYk5UQ0FVcnoKUDZENU9obEEwckJqNFVOcUFQWkNISUZCc0lOaWw4QnJPUlN5QXMrSnZXNW1sME9Zc3hTSmoza3FKWGxNV2lxU25oU1htaHFkbkRRdQpKaUt5cW1KMUtDREU2MzZHWnpoOThIZzZCYTZ1VXArTjVQNUZrYjB4R3dESWZtRXB1TFNjelhLM0x1Zyt0K1RMVjFiNXYrSjNXRmgyCjhCaStJcnM2bU1QcEEyTHJZRmkrb2JnZU1FRHNYMU50RDJoZFhZeUhuVFJybDloMWNkTzdodVZ4Q2RGanhpWW14WXhadHo2dksraCsKNy9mZkxGUzg5Wno2a3d6MXpmbnlLMU1WbjB5Uy8zU3U2T3BNeFkzWjh0dlQxUi9OVU43SVVGeWJydnpWWk9WUFYyaGZGWlh6Rk9WOApJemdybWJoMUpsNHRWZ2RkWVJKaTFkRDhLb01RcE5Jb3hBQWtnSnVKcWlRS05VMEtkd0ZqUzVUVVVwbHFqZmhsV05NanZ6TmRmZ3NICjBFemw5Vm1xRzdOVTEyYXBya3hUM0J1cit1UXA5VTh5bFBqamFaK3N1anNYM0ZqZFBsdlcvcnpxR3NCUWtlWjBqVmtLUU5OY0t6bGQKcTJ3OStnaEEwRDFIZFJmcWNRUHAyK3IxWjQ3Q1JvaW5hL1FuekZvSUlJT2lTaWV0MU1GZWlIcTFWQ01YbGl0NEZWb3hBQkErL3dYMwp2bERpd3o5Y2xZSWpVd29rY3A1WXdsRXFoVFZHMWVsYXc5bGFUYXRaM21LdWFEVG9UR3FGUkNxZ0M3RVZZU0lhUVVxajhHaFVQcDBxCllGRUZIS3dmTkkvSTVSTFlYR1JwTldIRURITlBmN0FacnRKSE1aZmhHVVFmcUIvd25oVlBUaFVWMHFlU25XTm1RQUJWeWJKTVRRc00KUDVxdnU0SURhSXVrcHBEREFBQXE0Y0hOTWNvRVVEOEVZVm1acUt3RWhoZ0dVTDZFREFCVS9COEhVRTdUWXdCYWRheDBldzBFVUZXRgpzTkVJQVhUQ0xCMENvSVphL3UrS3RFQS9JTTZEandQbzhNQ0tzT0tMd0VDKzRwZjl4WmQ4SlpkOFJTKzVTMTlEU1cvOXp6WjlISnd2CkdobEFjWkVKY0J0UlNLQ29yVTh0aGp1eGwvMG9SSUpETzhCU2tGTVlnSUIrY0FEaEIzandHK0FKMS9xQStJdGY5SUZIY3VRRmI5R2wKY0YrZjhQQlBvUEFDaVA5d1czZEJTL0J3LzJCUEx5ejNPZE5YZEQ2c245NEJBSVh5VzNyMnQ2QzdUM1FmUHRWM29LVnpSODNFaUhTNApqejFjQ0RZNmdDTGdwK0RuRWJ4Y0doTVJncHlhdktkN1Z3TzZwZ1lBeUw4ZUFLZ2FBTWl6WWZSSzUwSDZDUU9vZXlVRVVGZy9Rd0NFCjY4ZXg0aEdBTExsd3lDZWN3ZWo1b1FDRUR3TGhBT29ZQktDdnQxVGdBT0t6ZURPTzBwY2JLUmlBaUl0TmxGd2o4YUNCQmw2OHptaEUKNXd4d1cvanoxZXB2Q2FCcWpVQ3U1bEJsNURVYUNLQ2xXdjRxRlgrbG1yMUl6MWlrWjYzUThCYXJCTXMxckExSzBqYldvWTkvOVJPSApwV3ZLYzA4bkpFU2tKY2JHeHNkY0YwOUNQOXJwOGRMUURrYkFSWUZMM0lkUm9QK2s3c0RPelYzc1hqczc1Q0Q3blJRMFdINzU3WTF3CmNYaHlYRkpxVEVKYVZISnFTbExzSktEYnMyZnowSUFBMEFkM0R3NGdjUGtFQUFHeUJLMFUxTTN5dVRtNVdSUEJVeUU1TVNVdU1qWm4Kd2JPZEZscWZwd3kxOGdDQTRJMWROS3hlZStnOTlNY0dpQU0vMitjUjluVkxnOTJLM29BV1JTdlJiaG5xVTZEZEVnQTQ3SlJQQlhjUwpISDBLck5kSkNscDVmanUxejBucnMzQkRycUtlSGptRmtBWCtrcE1TWThDWlBqNHVhdHJ6TVY5OVNlbnRwbjRQQUxrNlNhaFBHbkxLCmV0MUtjT20xc251OWJKK1RNUHlXVDQ0WDZ3dmdBNytVTGpoSGlib0pmWDhsclZqd2RISlViQmhBcjd5dzVYc0Q2R0RKWEVDOXNXbUoKU1hGSVFqUXlOZzBrUGprQm0vZE1qQU1aazVRME5qazFQVEU1TFNFbFBURTFMUzQ2S1FiNWFWMU96NFdWNktWNWxvdTVsaTlLUFZoYgpJSDhYRXp3QUFDQzhWTm1IN1pJeEtvQXNMTS9ETXZCNGZCMWNGN2h4UVBybVd5V3dRQ294YmR5NGhHU2dpdlJrOEErOCtKdzVuZGZyCjR3Mm56NU1CNUhqQWRIZFF1cnVZWDkvYWJUbTl5SG91NDV0TEdkWnppenRmV21GcFcvTHd6Skl2WGwvai8wYlFaZUhhT2xqQis1emgKOU1FSGU2d1A2UUE5NEVQM1F5WWMrSGxBczNUUU83cm9ELzVLNzM1eGRUMGxFMGxBeHFRbmdkOENtY2IybzZFemQvNHlWL3JPYytxZgp6bGJkekpSZm02YjhDWUJPaHZUYU5QbU5HWkwyS1lvUEo4dXV6NVplblNMNytXVHBoeXVWRjhVNm5sTFBnd0F5OG9GK2FqRDNQQUZBCjVZTUFKRlJTaXFXYWxhTFhBSUJtS0c3RHdMR2ZHN09VN1FCQXM5WFhRYllxWDFpc2VYT0c5dm9NeGQyNWl2Ylp5dmRuS3EvT1VVQUEKelpIZm5LaUdvMEZGbWxPMVZUSWNRQzExS2h4QVdIUS9QSURrZktrTUFrZ200K2sxNG5xVHNybGEzVmFqYmpYclQ1a05qUlU2WTdsQwpwaFJ4eEd4OGIxU3FsQTEzeGhBd2lWd21rYzBpc2psa05vL0M0WThPSUd4Y1ozaUd1R2VwbVlnSFE4K0FleW9waXl1cGVMTE5VRC9BClFEbFZ0RVZWakN5emNvR3BaWDc1Ty9NMWx5R0FOTy9tU2VvS2Vjd3lMcUZNUUNBTENXUlJHUkdHUUJEREFBUGhnMENIeGFRRFl2SUIKREVCTUtWc281NHFWN1A4aWdGUkdDS0JqSnZGeG8yZ3dnRTVXeVFHQVRsUUpQenVrOCsxcTh1eHBjaDA0NmM1djlSeUV3U3FCNEVSWQp1QmdJR01oZkNEQjAzblA0Z3FQazFWN0tXM2MzcTdGYW1aRUJGQnVWQ0RkSGhidGlSQlZQWHRkSGZ0TmY4a3FRK0NxNHhJTXY1c0tQCkE2V3ZkcGU5RW82bjlPVnd3UGNOeHdjQU5CRC80Zk1qSm5UNFhQRFFXWERwTHpqak85QWFPTmlHWHc0Wis4SDFBOUs3NTNqM3daUG8KdmhaLy9vbnMyT2VRbURob21sRnJvT0d5ZnZndkNpN3ZEeHNJWEhGOUhqbTByUjVkWVE2dHI4WUFWQVVBNUZ2M2lENURpcDBCZllibwpaN0I3QnVzSGQ4OFEvWUJZL2owQUdxd2ZIRUFkNitEOEY5QlA1MFpENXdDQXZzbXJjS3czT2pZYTlUVGgzRnA2cm9rS0RMVFVSRnhxCnBDM1JFM2RweVVvdDc3UkdEQUIwMXF4OEFvRE9WV2xPVnlxYksxUW45ZkpqR25HdFJxalc4Rmh5MkEwb1Y4dGFvdVd2aEFCaUxkYlQKbHVxWlFFSkxkWUlWYW1xZW1yaURmZkNWZDEvdDdRbXVXTG9rTWdJWmx4U1BSQ0hIUzhlakgyeDFlTWhvQjF3RmhtMnFNSlFDZUhxYwpzSHdrWkdYREZkZE9rdGRXMnVlVC9QbDNKV1BnaGdzUmFlTlQ0MUpnUy9Nb0pITHlNOGhMTCs1RHZkend3TSszQXBBRG5CMkp2UTZxCjM4TmR0dkQ1eUVna0JhZ0tpUzRxV09nUGlPQjV2WXZkQnpjNlpmVjRhRStBUzUrYjN1T2tCbXdrbjRVQTN0OEhuR1MvZzlSdGhhZFMKZUdxM1VNRWxrRm1maTRuN2JQZzk5TjhQK0JZMmZzQkJBL2ZXWjJVRm5ZVW9xamgxZkVjVTNCUXNOU1UxUGpFaGV1S0V5Qy8rVGtMOQpMTlR5V1ArazRid1ludTRPQ2dBQkVDZnFFZ0lXZEhlUTRJeWJiZFJhbjlFQ21OSmpwNEZmWEsrVkdyQnpVRmVaK3c4bG1aTlRVcUxqCmtwT2prOU5pY1FDaFFlYjNBMUFwY1E3c201Q2FNR0ZNNnBpMDlLUmtKRGtGU1J1THBLVkVwQ1VoY09vek9XcHNFa2dNeUlUa3VLZFMKNHBHSU9OcjZwMEt2Yi9LMlRQTzJ6blJkM3gxeXNSdzJCbXlLYUdOMVc1bWVCMVR3czROSDYrNkNTd3RIQkpDN2kreXpjSDFkRlBBLwpDdGlpMjBVTEJzd2xCYlBCUzhpWXRMRkppYkdwS2VOUzBxS0I3MjdmS0VSOS9PSDBlVEtBbkJhMnU1UGx2Yy83OHUydDNuT3IreTR1CjhweWYzM05pcGV0VWR0KzVWZTZXSFBzN0szdS9MTFZiU0YwZFJOZEQ4b2o2QVFIaWNYVEFhMXdkVE9paCsxVExBNXJkd25yd3l5TFAKaTB1b0c2Y2dTY2o0dE9RSUpLNmh1YVVIRFVwZi91VU15ZnNUdFQrYnBRTGd1REZGL2ZGRTVjZXo1TmVtU205TkY5OEU2SmtrdlRGVApjbjJTNU9kVHhiZld5MXZsZWk1NFR3NEFWRzNnMVJqZ1B2REFQV2FUWURDQUJxYkFJSUMwS3FGQ3paQXEyUUJBUENYanNOU1VLMzVqCnV2d1cwTTlNNVoyWnFsc3pWZTJ3MWFHNkhRY1FSMVZaV3Q2d1d2dmlWTVdkYWFvUE0xVHZaTWpmbXFtOEIyNEdBRFJKZFgybTRzWncKQUowOXFna0RDT2puQ1FBNmFsUldsOHVHQU1nVW52OGFCaUNnSDRtVUs1YndSR0t1VE13Qk56NXFWTFRVbHJkVjZjN1c2bHRxRGNmTQoybXFEc2x3amxVajViQjZkS0dLUWhDeWlBRjhJeHV1ZkJXT09EcUJCeEhrc3NLYW5QOFNCa0VGeTRQSXVjajk5S3VnZ1N5cFpJTm1WClhKQWNNd3NDcUpxYlZXbGNZTGd3WDNjRkI5Qjg3YnQ1c3ZwQ1ByZVVSeVlJaVJReGdTb2hncERFQkpLWU9BQ2dVbUNnSWhIcG9JZ00KVWlLbVlRQmkvMmNBbE5zQTlQTUlRRGtuSVlDMjFwUXFEQnh6cGJEeGNRQ2RyaFpEQU5YeDJneWlML2FWZTNjZWQrMCsxcDEvM0oxLwoyblBndE9kZ3kxQUR3VnowSFQ3dks3a0FBT1FzZXdXbHZYMTdzd3BiTFRVeWdNRHJGTkFSa2dCT0lwSHkyYnRSeXR0QU03N1Nsd1lYCk5mdExYbm9FbWdFWURVblBrWmZ3NVYzQndoZEFBb2N2Z2ZnUHdTYk9lQ2ZEME1IendZSnpnUU5uOFlUMnQ0SUVENXdKRkp5QlM3MncKQlYvZ3cyREI2WjREL1FubE4vZnNidzd0T3dYU2MrQ1VOLzg0dXYwa2VyQ2w2T25GY0Rvck5qS3luemtqL0l1SmdKOUVZaUtSNkVqdwpTZ29sRklta3h5UjhuaXRITjlhaHVSVUFRTUE5ZmF2TkFFREIxVU1IZnNMbFBrTm12bkQ5REFiUVlQVEE1UGE3WjdCK2ZuQUFEZEVQCnZINWRPVWpuK243OWRHMHlnblJzTWo3Y1lzSUJkSW9neVRJemw1bm95NDNVcFNieWNnTXpwNXk0V1V2aTY5akhkS0kydmJTdEVpNEUKZXdLQTRMYndsV3E0R0I2OFE5S0l5dFY4Z1pLeFRVWFBWVE56dEx6bFdqamtzNlNjdHF5Y3Zrck5XbTRRQXdCdFZSYnY0eDZzTzFXTApvcjBIQy9LQlFpY2tKUUN0TUxlbG9LL2wyVzFscUlXTkRTUkFySXdjRnh4OTZiR0JreWlseDBYdzJvcERIcWJid3A0eEt3M3I2ekFlCi9ISTNiUngvOGNLZVAzMUdDUFFTOGZtdnNIdXczYXpnOGFoeEFHQ1ZZVjE4T0VzeW40dU9SbEtUWWNHY1JyWUM3UkgxT01yNnVwaTkKZGxpZTB1dkN4M2lHM1FNV1lBaEFsbDRYRllpdDEwbnFkUkw2N0dVaFN6RzRKdVFnQXptQnozNmJ4d01MYXh6OG9KTU92d1RBeTFXRQo5bkxmZld0bmJBU1NuamcrTlNVcElRRjVaZ3p5K2VjVU5NRHV0WHpuRVNEVUplaTFzMzBkWkc4SEFYVXpZS2NmT0FER0hYN0xKd2RnCnBkZEJod0J5MFAwT1RwK0wrT0RUZ2luajRsSmo0TFFVQUZBMEV2L3FpMXN4QU1GOTNJYmZBNTdCQU1MMWd3T29wR1J1TklLa0pjY2sKSjZZa0pveEpUSTVJU2twSVNVbExUVTFOVGs1T1NVcE9Ua3BJUzBxRUt3RlRFaWVrZ0UrbVRrZ2JFeHNiL1ZIRll2UmlwdmZNVlAvcApSZFkvSHZKNmVEWTd3MktsZWF4TTJOdTZrK2tEUUxHT1hBa0VhNEE2S1g0Yng5dEJoK2trZTZ5SHZRN20vL3VOWlB6VHNmR3hTUlBHCnB5ZkVUVWhLUlo1T2ovL1RiNGtBZjhQcDgyUUFXUjlDcjRSc25NN0wyLzczUk81WGJZdi83MUpHMTlubDk4K3RzVjdhOW9lR0JaNFAKZDZKZE5NQWF5MzIrN1J2aGlQckJ4ZVBzaEdNL0RteXB2T1ViaXYwaEhUd3ZMSGYyZnRNNmY4MmM1NUEwQkVndElUNzE2dDA3SHI5dgpmOE9IY0lGVitTK25xKzdOVXJaUFV0OTdYbmxubXZ6cWRQbmRtZUxiVStVZlQ1YmRtaWtGRXZyRmJNbU5uYXJqYWoxTForQ1lzTlh2CjFVOEVFTkNQWHN0VHEva0tKVk9tNEVvVUxMYVNzVjlhczFqeTNoUmxPMFlmUE8zZysySUFnbUdxS3VSR1hZbTJPa3Z4M21UdFQrZXEKMzgrUXZ6RkQvZUVzZFh1R3ZIMnkrc1pNNWZVajJ1YmFLc2xKczdxbFJnVDBnd01JQ3pRUTBNL0ZCdjIzQkpCYUp0REp1VU1BaE85KwpxcFp6NEFpUWpDT1djSUIrQkVJMmo4K1VDRm5sYXRIUlN2V1phbFZiRGJqVU5KdVZKeW8xVFJVNnMxcXVGdkxwUWlhTnp3S2hDamhZClMyaCtHWmRYeXVFaWd4enpXTUpETzBQeTJFaFAvMkFQVERhV1JXWXFyUGlCYzE3TUhETUhKTHVTQndDMHFJb0ZZNVl0cktoYm9IOGwKVTNkam9lWURDQ0RkK3h2bGpZZjQvRklCaFNnaTBjUkVtcFJBazVLQWdjZ1NJbEVDQjRFd0FJR1FDb1hFUXlKeXFZakdrakRGTXJaWQp4UkpvR1A5dUFLMm9od0JhT2doQUs1b2dnS1FHdHFsU1VGOEIxOEFmcjRJQU9tRVd0MVNKVDJBQWVrRWp2cis5dkh2N2NjZnVSdSsrCnh1NzhreEJBV0xvTG9JRzhoOXU4aCtDaU1PQWVYK0ZaZi9FRjMrR0xBRUI5NURmdmJWYUM5OGhQQWxCc1ZFUjhSQ3dTZVdKK01VcDYKQy9aVUxINGhQS1hsQitncGZqRmMxNHo3QmsvL2duWXN1SEtHcDYvZzdJaEI5NS9wTzRETmN4MXM2ejEwdGc5YzVyZjI3aDJCUGlDOQplekVBN1d0Q3R4NUhEN1Ewek4wSE8xbkhSOEZoblZIK0FRRGhjMlRBUUxGd0Q1Qkk4TkhpeEdmY2F5dlFkVFc5dVNZNEJiWVdEdnowCnJYeXN0Yy9nU21lczJIa0Urc0FobjF3dFNGZy9nOUV6aEQ1RDlQTXZBbWg0dXRhVzR3SDY2ZHBnQUxGc2hQckIwN21sd3JuQjVOaGsKZXJOUXZzekVYRnJKeURYUWxoa3Bxd3ljUlhyYUtoMkpvbVhVbFl0YmpQSW5BK2g4dFRZTW9DYXRwQUViU1pZcFdBZVVqRlZLWnJhTwp0MVFIQU1SZVVzNVlWczVlb2VMa2FBVXJWZlJ0NGlNSE9BZlZKbGx2WDBDbjA0QmZ3ZmpFQkNRV3lWdVdncDdmNlAycUVMVnpRbGE2Ckg5YkVES1VBSGo5V1B3c0E1Tzhpd1JiSkxrTFFSZW56OHJhdG5UWHRxVWhTMGJ4cmx3LzRBd0lVcGZkNHliQmFhT2pBVC8veGFBbmEKU1ZqWkRjWGpZT2RrUEJNZkQzdmNnYitjUzIyYjBSNWV5RTdBaG45Z1pXN0lXUmEwRFAzeWNQeDJNdHdxMVFGM2h3Q0JMWXZzZE5USgpDam1JQVJ2UmJ5VUFJZm10UkY4WENSc0tZZzIvQnp4OUZqS3Nkbkl3d0ErTzlWa3VEblpUZnZXTC9MUmtKRGsyUFMwVm5QZVI4Y2tSCnYvdE5XWjhmL20vNXJnQUNYeExvb2dMMzlEbXB2czdTb0pVRUFBU3VHWDdMSjhkdm9ZTFRmN2VWQ3Y3WEFRQ2hYdWJudDNjL214cWYKSGhlUEF5Z0dpWHZ0NVFFQXdZYUhRKzloOEYwRmh3RElMeWd1eklwRmtKVEVxTlNVc2NtSlQ2ZW54NmNtcEkySm41U1lsSktZbkpTVQprcHlTa2dTVERJZkU0dU1pRTVPZmVTWXhFYndwMmpOdkxQckdhazlyWms5TDVzTWZiL0Izd3QxRmdJRWNGdGc0TzlqQjhEeWdldTNzCjBRRGs2V0k3SGh5QnU2VmFCSjdPdzBGbm9lTkJDUnJTa0trNTRMVUViaGdTTnlFdUNaa3piY3czWDFCNk9vbkQ2Zk5rQVBrc0JFOUgKaWM5Sis2UnQyNGJNOFVzblBUdGpha3JXMUVtWjA1NVpNT1dwaFZPUTl2Y0svRzZSclpQczdDQjZPb3BHQTVEdEd5cEUwamNVMndNYQpvQS8rSVlqMTNZMi9xcytlTkc1c3hMaW8xUGpreVZObS91MytWLy8zMExsY2YzdTIrcU1aK3A4RFpNeFEzcGlzdmoxUmRXZUs2dm9NCitVZXpKSGVteXo2ZUxMODlYWHA3c3ZSbkM2U1hENmxyZEhxV1FjK0dQYUJ4OFdDTkVLdE5BOGNEQU1JcW9DR0FsR3F1WE1tV3kva1MKQlpPdVpPK1VubGdvdVQ0SjNEODIrUVdDQTZnL3FodGJWUmZrUm8xR0o5NnFPRDlEOC9GVTdjM1p5aC9QMGZRRGFJcjJ4aHpsalZMZApxZnBxNmI4Q0lITzU4anNCU0NEbThJVWN0b0RGNWJNQWhsUXFVWDJGOUdTMXFyVkcxVnFsUEdOV3Q1ckxUeHAxZFdxMVRpbFZTa1ZDCkFZZkJaWkk1VENLWFhjYm5sUWg0b3dKb1NTVmh4QXluRHo3VkJlblRyNTkrQUdFelgrd3NNemNiSEVBTWlSWlY2TEpNcCticjM4elUKM2h3QTBPWDE4cVlDb2FpVVQ4VUFWRWFYRUhBRGtiRnhJSUlZRmdNQkFPSDd4aGVKS0lUL09JQ1dOajRHb09WTnBWdHFTOFVHbGhFRAowREdUQ0FEb1dEVnNCUVFBZEx4RzBWZ24rSkZDWXQ5bzlHdzdZZDExekwrdjBiTy9xVHUvR1dTb2dRNjN1UXZQQVFCNWo1d05GRjV3CkFwZVV2UHF6TGRxRUoweUJSY1FqOFRFUlVYQ3o5UGR6ZVdqSjY5MkVWOE5GUEhnZEQvZ1E5eEE0Q0xjckhKSys0Z3NndlVmTzQra3AKT29lbnQ3QnR4S0NIMi9vSzJ3S0hXdnlGcmI2Q1p1KytFK2orMCtpQk00QStRL1RUcytja1NHRGZjWC8rQ1hRN3VGbnpoN21jOFlBMgpjT0pqVkFDQmYzQ1NETndpT2dKdTlCR0pKQ0lJNytrbHNPSGhtcXJRQ2hOYzRiVWEwcWNIUTg5Zy9lRDBHUXlnNGVVKy9hTSt1Wm9oClF6NzlKYytqNitlSEJWQllQNVoxZWhCY1A5Wk5KaERMWnBpdVBBQWdJd0RRdlh6VmFoMGNRODNWTTVZWmFLdkt1Vm5BUXdaeWtaWmUKb1JNMEcrVm5LeFFYSzFXakFRZ2ZBUUl2Umljd0FCM1RpS3ZWSW8yQ1ExU3lOeW5oQ05DU2NsR3VocnRFeDEycUUrVXF4UXVVa25VYQp3UzRSNFNDemdDdGxPRnpXdDk1NkF3QW9QVDQyTGlGNjV2U0VycWJjbnQvdURybTU0SDA1MWw5bktBVUdZRUdGOWJZTzhQYWRER0VCCnA1bUl2UjdHTHovZCtjV2ZxV2lQcnMvSDZYWHc0WjZwVG5wUFIvOUlFajdROHUwQVJJWUw3TjBzajRPVGsvRmNRZ0lTRnh1Wm5CRDUKNlNlSDBCNTJuNDJDZ2dkZ1pmanM3S0NqR092N04vUWUrdU9DZzBCK0M1d2o2N1V6Z3hhNGkxbXZoWTJOQUZGQSt0eDA4RjN3MG16TQpLOFB1QVFzS0h6RGRaNmZEY204bkkyQWg5SGhvM1U3V29xellXQVFJS0NVMUdVbUppZnpvWGxHUGo0WnR4ZlZkQVFUdWt3elVFckFRCmZaMWw0RnVnVGphQTNmQmIvclBBeVM4NGRHY2p3LzNML0p5ZnY3a083a3dTbjVDU0VwV2NGZzBBOUtOWHRxRWhPTWJ6YlFBRUxnRjkKdkZaNENRQlVWTEFrRmhzQm1qRDJXZkFtYmV3WUpEVWVQb1hCTzdabzdHa04zdEVreE1lbUpxZWtwNDZCU0VwS1QwK0tTUm1iRkkxRQp2Q2JNUmw5YllUKzczTnFjNGZqNVhyU1RIZklJckYxVTRKc2czSVNMOWdRQStTeGNad2NFVUhjbnQ5dFc2T284SElJZUpkejltRHA5CkVoS0RJS2twRTZKaWtSWExKOW90ckQ0N2VUaDluZ3dnT0xQMmdPQjNrOXFiVmlZa2duZG5DVWd5RXBNY0haMldoTVRIeGFjZ3R6NmsKdU4wQyszMkcrNEhBOVlBMW9uNXdBT0VEUHdCQTF2dFUrMzI0Lzd6bEM0THJsUld2cVZmRUppWWtqUU52RUdQWGJOemk2L05kLy9YOQoyZktiZ0JlemRaL01VTitkcWJvMVZYVnpxdmJ1WlBYTmFZcDdNOFczcHNudVRKSzNUNVBkbml6N3lTTEoyMlNOM3Fpbm13eXNTaFBzCitoTUdFSmFoQU5KanJlRVZHclpDd1ZGSUJRQkFKQlYzaTdRMVUzTDdlYzMxc0g0ZUE1Q3lQVk4xamFjM0h0WFNTSXI2QlpxYmszVjMKcDZ0dnpOVjhPRWR6YzU3aTVqVE5qYm1xOXNFQStuNVRZQ01DQ0crQnFGZkI5ajloQU1rbGJBa0dJSzZJeHhieW1Yd3VrODltQ3poSwpKYmZLSkQ5MVZOdFdwd0VHYWpGclRnTURWUnFQbTNSSGRXcWpRcWFRQ0FVaWVIc3lqMFhnc0o0QUlOS0lXV1NtREdRQVBiaDd3dGM4CkRxQ0ZsWXdzTTNPUm1aZFRxVnhrck1reW5KOWYvczQ4N2ZVczlYc0FRSm5sbDljcFRod1FpSXNGZEFBZ09nWWczRUQ0UkJnR0lMZ2kKckV4QU9DSWdIaEhCN2tZY0FDQTVFd0JJcUdYK3V3RzA4bkVBTFRvRkFaUlhWeXJVTS9XVi9LT1ZFRUJOWmtsamxlaDRwZWkwV1lRRAo2RzJKMkx2TzFMM2xKQVRRbnZydS9jQkFKeno3VHdFRGVTR0FXb0NCdkFmUGdMZ09uKzB1UE9zcFBOTlRlTkYxNkdKZjRZdWY3YW1hCkVEM3FLckE0SkQ0aUxpWUNRWjZLU2ZuOVZoTjYrRlZQNmN1QklsaElGQTVjeEY3OFFxRG9vcWVnelY5MnpsZDZGc1JiMHRaZGZNWnoKcE5WZDFPSXFQRzA5Mk5SMW9MRmpmLzJEdlhWZjc2cit4L2JLTDdhYS9tK0w4Vzk1NVgvZHJQdC9HelYvWHEvNjAxckZIMWZMZnI5Uwo4cnNWNHQvbUNuKzdYUFRMWE1HdlZvcCt2VXp3K3lXQ2prM0czbjFOb2Z5VFBmdFBodmFkQUFudVBkNHprT0R1WTRFREozdTNONkY3ClQzWnRNcTVKbUFLSGRVWUhFUGdzM09FMUFnSUlMZ1NMUXA1RFlqN0lMZ0VBOHErcERLeUM3dWxiV1luclozQWUwU2ZYQURLODJIa3cKZmNMNkNidm5uK3JuQndSUVdEODRnS3pyRGJZTnhqQ0ErZzIwdGNLMUVZNEEvWGFYWnIyR3RiaUtDd0FFc2tiRHphcmdaQnNvZXpWawpqWlovVWk5dE04blBteFRmQmtCQVA4ZlY0bHFOMktEa2NaWGNiUXJHWWcxdmFibGtxVWEwV0N0YVhLNWFyTkprcWZVYlZQTDlJbW9KCnU1aklMUDdEbjMvLzJWLytCTjZ5SjhYRUpDZkZKYVpFL2tZL0Y3Mnh2dHZMOWRwWVBTNENyb1RoQ2JvWnNER3hBNTY1KzJ4dzVaR3YKaXdRSFdyenNQbzhRN1NiMnVrcGc4MEFiWU1lUlhteU9LZXlleHc2RzNUTWVyQWFJaExyNWJoczNlODR6OFFsd3U3eFpNNTdxdXM5RQovYlJlS3hsMTBIeFdCbHp1WkQ4Q0FUVHNIdm96b0M1QUhMaG5xb3VGVjdUMHVlQXNGVGk3QXhzRnJKUkhHaHQrRDFoUWJEYk43MkFBCkdrSTZXT0E0Rm9vS3hHSTRBZ0dYZ3FkR3hpRlJWei9JN3d1Q08zbHNWZHB3V3d5UHowSUFEZ01QSTJDRmp3MXZHZkF0djNad2VoeHMKV1AzamhCVlVPSUN1dEdZblJVYU5UWVE3a3dBQWdYZFdyNys2SGUyQjFQdE9BQUlCQU5xN1kxNXlkT1RZdE1Ua2hMR0pjWkZHdzVxUAo3ekp2ZmtCc01PMlNjWmJ2eVhzdWMzclVoQlFrT1FaSmlJRGp2QWxSU0d3aWtob0ZYczhpRjArYjhObUpwZDJ2cnV0cm50dngycktlClA0SS9ESjdEeG5CMjBvQksvUUFvbGxHTG9QMWRjQ20rcDVQcTdBQ3dvMXErTGcwNDJjN09FbDlJckpXdlRBQ0NUMDlISXFMekM3STgKSHFHdnMzUTRmWjRNSUxjVlNJVUR2dnVQRmRsSnNaSFBKVHliUGpibTJZUnhUOFVsam8xTHlaZ1I5WCtmaTcyMlVzK0RZcUNjamdkbApJK29INWhzNCtRVUFaSDBJcDhQQWNmZEQ1bGUvTzlCOU1WdFVzQVJyZ1JpUFJNUklkUHBlTkZEenpoOG15VzdOMWQyRFZUallUaGVRCkl3QkFxcnNRUUtJYmdENlQ1TmVueUc5T2xuMnlUUFlqdGs1Um9TZFhHaGdBUUdhVG9OS0kxejd6cW8yY3dRRHEzd1FEQXhBNFhlSUEKRWlvWVpVcmVKdW5GdWRLUG50VmVtNm5xMTgvakFMbzFYOTNPS2E4OHBxTUpGS2FWaW5lbWEyL08xTjdLVU4yYm83a3hUOWsrWGRzKwpWM1hkc3IrcUFBQ0FBRWxFUVZTOXJMd1pBNUN5dFVid1hZdWc2MDJxNFFBeXFvVWpBa2dwWjh2RUxBQWdvWmpIRWZHWUlpRmRLS0R3CnVDUXVrOHlqaVJTOFNwT3NxVnArdWtweHVrclZYRjNlWEdOcXJ0SWZyOVRXR3pVMWVuV0ZScWxWU0tWQ25vRERSZ2FtdElabU9IM3cKWkZlU3NmVFBlV1ZYMFBEa1ZGSGhncTlCQnNxdVlHUlhzQmFhS1ZsVmdFZjhSWlhhYkZOVGx2N0YrZVUvbnFlOWlnTm9udmJ5T3ZtcApmS0g0Q0o4MkRFQmxnd0JVQWdCVUxDUUJBSkZFL3dVQWdlTWhBQktVTThvcmVHRUFOWmtmQTlCN1FxbHZ0UkVBcUd0WFkzQTNCRkQzClBnQ2dFL2c0RUdhZ2ZnQTVzZUVmMTZFV3RPaUY3b01YMGNLWHZ6bDhmSHJTdU5FQUZJL0VnWGRWUUJJelVwL3VMRGlKSG56RlZmeWkKLzlCRndCMFFIRUQ0TWRDUGJjK3BueThUL215cDROTWwvSi9tY0QvSlpuK2N4ZnB3QVFQa3hud1N5UFZNSXNpMWVRU1FxeGxsSUZmbQpsdUM1bWxFYXpyVjVaVEFMaUpmbmwxMVpRTGc4cC9qV25MSXYxcXQ3RHZmVEIwOVlQNkU5VFQwN2ova0xUbnEzMXFON1RxQTdteWd6CjFvQWZCZTZITWNvL0lKNWtiSzk0MkRVNkVyeHRST1pIcGovWW9nMnVyKzVlVXdFTTFMUGNoT1pDQnZsV0dQMHJod0lJMXcvSWtKbXYKUnhVL2d3QTBlTlNuYTVucVVRYWhwek5YRmM3RDVZL3lRd0VJNkFjSGtIMGpwSTl0YzBWL3RrQUFPVGRYL0hsNytTWVZCTkN5Y2lZQQowQ29WQk5BQ0UyV0htcXhRY1k3ckpXZU1zbk5HK1dnQU9tOGVDcUI2amNTbzRFa1YzTjF5SmdEUVlyMXNzVnE4U0N2TEtkZm1LQTJMCk5KV3JKTkw5UWlaSlFDNGtIbXovc0wzYjU1bzFlMXA4ZEJRNGl3T2F0a3Nub204c2MvZzRIaXVyeDFFeW5BSjQvRTV3VWlRQ09xQU8KRnZTSGxSbXkwdnRjeklDYkVMRHh2WjFrMUFYUGFwQUN6cEtnVFlvVFpEQ0F3TmMrQVVDOVRvNnZrNGc2K1U0TGQ4SE1jYkZ4Q0hoZgp2bWIxdktDWEgvS1VoYnJJcUpNS3pvZzlIb0hmVnRqYitRUUF3V0VxOEkzOGRyTFBEa3hBOHJ1SUFUZmMweFJiL1E2cDhkakF6L0I3CndJSml3ek5CRDl2djRQZ3RkTlRLZzVjaHlsdnZFdU9qa2FTNGFBQ2dXQ1R1L1hmelVaUUpUUFpkQVFSN1REdG8zUlpLd003eDI5amQKWGJTZ2s0blBNMzdITUlPZHBJQ0xIckFRNEw0Y0FmNWJ4eklTa084SklMeE9mRENBOGpaTXhzQ1htQm8vUGk0YWVmWDFqU2dxN1EyUwowRDR5R21JRTNKeU9yL20vK3hYcngrOFVINjNaSU9BdjNKWTNlODZjS1JOU2tpSmlFOENUbmI0eXFmZmxtV2h6MW9QbURQZmQ3ZjRICk5JK0wwMjFqQlMyc0FPelRBeHNZamdnZ2J5ZXgrd0czMjBaMldvNjRPamxlbThEUlNYUjFNUUtod2w5OEloK1hnQ1FueFFKdWNZUmIKZTFHMXA2TjRPSDJlRENESFE0cXZVK0Y1S0c0cm00ckVJT2xKYVhIallYWFgrTFFKc2RGcDh4YWtQK3d5ZGR0TEF4MWt4OWRzSzF3MQpOb3crV0w4ZkhFQmQ5Nm4yVG1ZWERxRDdqTTkvdHROOUptUGRnbWxJT3ZKVWZGeFVmTklySDF6MStWM3NNLy96bk9KV1J2bmRPY3ByCmM3VVlnQlEzWm12dVBDKy9CVXVDeE5lbnkyNU9VYmJEWVNIRkp5c1ZMd3YwMGtvOTJXeWtZd0FTZ1FEdW1BM2NLZ043Q0lBTU91NGcKQVBFVUVpRUFVS2xTc0U3eTRoenBKODlvcjgxU3QyTzVDVEt3NWZ0dGtOV2E5N2k2eWdZdFU2SXdiSkM5TWxkOWRZNzI5bHpsWFFDZworUW9Jb0F6MURReEFrbWF6c3FXYS8xMlh3WDlYQU1uRkRLbVVLNUx3T1NJQjBBOU5KS0lJZUFRT3E0QkJJdktvRWhuVHJCY2NyNUtlCnJsV2RxdEVlcnk0L2ViVDhSRTE1SSt3NXBHM1VhK3UxMmpxbHNsb3FSNVpVVU1OWmJLS0VrMk9paFlNWE5lTVpHTjBabWl3VEg5YjYKd0tFZ0hFRHN4U2J1a2dyZWtrb0d0Z0Jlc3NCY1BkOTRLYlA4OGp6dGRaQk16ZlVNM2MzNXVzdXJsVzE3UmVveVBvVXFLS09LU2NBOQorQlFZQ0FXYkNDT0tDQ0NGb3JJaUliRkVTQ1dMR1F3Wms2ZGtpOVFzaVpvcFY3TkF3SzhURDVDUVdFdkZERVRpcVdFdlJOZ0lVVTdZCnJ5V3VNeE1YMVpPVzFoR1hIU1gxQjZBSFMyNERNYmVoYk1Tc3FDOWIza2pJUFVaWTFsUUtBZ3kwL0ZqSnFtT2xsRXFhd2NRN29SYzEKR1VUMVpqRXcwS2xLNmFsYXFKK21Xc1Vkc3NLNVJ1dmRVT1hlVnUvYmR0U3pyOEcxdDhtOTczaDMva252Z1ZNQVFDQytnaGIvd1ZiZgpnVmFBSVZoY2ZPUzg3ZURwdm9LekR1b0xPMUt5WUExTUJKS0VSQ2Noc1Voc0RIaHprSWpFUjhRbXdqNklrRUN4aDhibG9FVVgvTVZ3CkJSbGFjTTU3dUMxWURNdUpRRHdIVzhFeHlPZXI5ZTltbGx4ZVNBUnF1WlZEdXpxZjBKNU51WlpGQXJtUlJSNHhON09JNGR4YStDamcKQ3orZVQ3a05NSlJEdXJLSWVIdDJxU3ZQak1LWkx6andFOFRRRThKMkxRM3Rnbkh2YitqZFdJMXVQOWE5c3c3ZFdQZVhWZklKNEtlSgppNG1NaEwwZElYUmdrVTlrRWhLVGpzVEZJdkRIU29CalArQS9NVWgwZENJU1k1cTdCMTNUMElQTmVZVm51OEw5RElkMzk4RXpmSVhYCmtNa3ZYRDloOUF3ZStCbk1uZUhqUFhpRzlEL3M3NEs0U3Z0dzFXTk5uOE8xejdEVzUzRUE0Wk5mblJ2MWxvMEc2eWFqYlRQUUR4UVAKSHVzMmcyT1QyYjFCMzdWWmUwQXV6cXlpNVJwTHdMTnBtWkczdEp5OVdFZmZvS1hUZGJ3R3JleWNYZ1ZlYXk1Vkd5NVc2WUY3Z0g0dQoxUnBCenRYb3oxWURBeG5PbU10YktyU25qT29UZW1XalRuWlVMYTVXQ2RWS3doNmxJa04rS2tOeUtVdDhjYTc0aFNtaU42Y0lyazhWCjNGbkpQVjRvNGhUekM0dTVSYTBYVHZRRmZYdDM1NE5mMUpqa2hHZ2tWYkwzZWZTbHBhRnZTb0llOHVBNW9IOVR3a012Y0RBSmd4RisKcGRkR1FPM1VQbnVaclpNNmYvWXprVkh4Q0JMTjRNMUJRL3lnblJ5d2tYcGRqeWJVbmp5YjlvTUVmM2pEWS8veTRLUUpZOEZUTlRFdQpOVFVXYVczYmlxSXlGTUlDUHJaL1BiMWRsQkJzd0Vqek9XbmRkb3JIUnZiYUtlQkR0SXVHV3NBbHJQZ0pZYmZFSHlkc1h0REJDWFNYCnVVTnMxTXBBLzdEelJXVjJZa1EwN0NHWkVwK1lFZ3ZlVTczKzJpWTB4SUZUbkhieTRPOEZTQm9PUUJnUUh0d1R0NHZRNjRDZjhqbW8KUGlkalNjNmt1QmdrSlRVQjNGczBFdjNDeFIxb2tBMFgyZG5nWWpFNEsrcG05M1Z6VVI4ZkRRaEIvRDZHMHlvQUpIcnZ4MlcxMVNzTgp3bWMvdmJUMjZ6ZldQYnlZL2NXTFdlaG5wYWhkNE82aWVoeE1aeGY0cGt5dmhRNEMvQWZpNmFUaUJ5REFSajQ3MjlsSmM4R1ZZblJmCkJ6WFlRZXZwWXJoOHRLOS96UnIvZE95WUJQRHFtWEs4ZVcyb1QrRDlob0x2Z3pFODdxNlIwOVhGQ2xrNDZEOE9xQXZtZ0pldjhmSEoKU1duZ0dURXVJVDBoRW9uWnUyT216OHQyZDNMczN4REFvNFZMdlI1UVI0eTlRMlQvcXRUVndmekt5dlE5S0xGOVJYdm9WRnRmWC9tYgpodHhKenllUGlVOENTWDNtdVQvLzcwOC9kL2FzcUxnSHVCUE9EUFhkNmFvN1V4VzNwc2h2VHBMZG5TeTlPMHQ2WTY3czV2T3lEeWNxCmIyNVROK3UwYk1nZHZBTGFCRHYwaG1QR3FxRXJqWGdGdEJBdWdOY0tkQnErVXNtVlNRVXFPVU9pSkJYSTlkbnl5OU9VUDVtaGVuK20KK29PWm1vL21LVC9PRWwvUGxGMmVxcjA5V1hkM2h1cnFCdDJMR3EyOHNWeWdsa3UyU3M5T1UzMDRUM2wxaHZyMkxOVzF1YnFyazlSMwpzK1NYR2VYMWRUV2lwaHBSVzZXaXRVWjVwbGFGVi84TVJJOEZIcHc1V2o0WVFFMFZtZ2FEc3JaY1dhbFRHTFZLdlZhaGtvTnZCSmZCClY2bUVGU3FCU1NuQWRnRVRsaXNFd0VaS0NVOGxGY21GUXA2RXdaQ3kyWHlSaU0raUNCazdlYXBkQXRNQkxyMk1WY2prazZVYXFhRksKM1ZTck9tZldOVmVybTZ1MWNEU29TbitpMHRoa01qWWFEQTNseGg4T1FCVWNmTG43NEdBTHdUaUx6UHdzczNxKzZkZzgvYXZ6dERpQQpyb0pMSEVBclZlY0dBd2pUenlNQWtjUlFQd1JoR1FEUUVSRUpCeEJMeHZvWEFEU2duMEVHK200QWFpekZBYVFmSFVCM3lRckhhZzBBCmtHdnJVZCtXT3ZmZWV1Y2VhQ0JzRU9na0ZqZ09CQXpreTIveDVyY0VDczUwRjU2MUgycEJENXgxa3k1eEoyK0JpNkdpb3VMaTRxSmoKZ0EwaUUrSlRJcVBpNEk3cVVVaEVYRlFNRW5ONlFTRmE4b0svNkZ6M0ViZ1ZsKzlRVzdEb1BMajBIejdyUFhnRzcxNzQ5M1VWUDU1WApjaldiZkhVaDhlWWlLZzRnY0h3OW0zeDlJV25FakFZZ1lLTjdtZVE3ODhvQWdDNW5sWDA0bCtqSnEwTDNuZ3hQZTRYMUU5elpDQUlBCmhHNm9SdlBxZW5mVTkyMnRzKytza1UzZWdNRFY4SENTQzRtSmlJbUppUVl2VGJHdzZqa3VKajR5QW9Fa1NvNktRc0E3NXVqRlVjLysKZWEwYVhWTTlXRCtEQVlUVFo3QitoZ3o1akRqMjgxOEJVTmhBZ3llL2dIN0NBSEpzZWdRZ3gxWWNRTHFPellaOHNYNmVTYjVDUjgvVgpjMWJxdUt2VXJCVkt5a1lWbWFwaTFtc2s1L1NLMDVWeW9KL1JBTlJXcFI4T29ISVpmNy9NUEYvODBtekJCNW1DcTdPRWw2ZndiMDdsCi9IUWE3OFlxYnNNaElRTUE2QWluOEZoekxZcUdCSHdKVVBpRXhIaTRJOWlhQ2IwdjVBUy9LQWw0WUNIdGNBcjhzQW1mdVljQXFNZEoKUmUwMDFFVnlXaGtMNWp3Zkg1Y2NGeEYxdEhvTkd1VDlWd0EwV25wZDVLMmI1b0huYTJwcUt2aWJyNjFiM1ljS2VpeHdUdTBIU1o4VAphMnlJb1FSOENLMWpwWVM2SUlOQXVySDRNS0QwZEpKN0hwSzhEanBxay9kMGxGbC9zZHZ6NW1yMDFTVXRwQmxJWk9SM0JaRFB5aG9BCkVBbFdKZ0VTT1JqZ3puT3lKc1lQQUFpOE9yMTRhWHNZUUNQR2F5ZDZyR1ZlTjdVUGxmYWhDcCtiaHpvbDZPZGs5SS9GdHAvdkRYMUoKQWQvRjNrRnkyWUJDc0tHbVVRQUVWOHRiNEJ3WlRDY1Z2NDNySWJuWHcvclRsWUxVOU1qVWhKallxT1RYM3RvWDdPSDV2NEYxUlNObQpPSDN3MkxyWS9pNVd6MThQY0xaTkJnQ2FrSmlhTWdZQWFDemM2aGFKb2hNVytYMGNWd2ZiY1ovNFR3RDBBQ0xKK1pCMXY0UHB2bC9pCjZHQjgrUlhIL1dMdXU2cEZ5YWxSS1hFSll4T1NuNW84OWY3WG4zMzBoWFcrdWgyNFo0NzJMc2dRQUUyVzM1c3N2VDFMY25PMnJCMWcKYUxyaTJpNzFpWElkNTlzRENPaEhxK1pCQU1sNFNqbERxS1RzazVvV1NOK2ZxdmhrdXZLRG1lb3IwOVVmWnFnK3lwSmZ6MUJjbWFLOQpDd0EwVzMxMVovbDVnMDdhcU9NcDVOSTgyWG5zTnRmREFKcXN1WmV0L0FBQXFMNGFBcWpWL01NQXFMOEllZ0JBZXVVakFDa2xRcGxBCndKT3djQUR4ZVV3QW9PMDhYUjdIbE0vbEVMakZGQTZSS21BQUp4ajF3dU1WNmhPMTZoTTEycE8xZXBCVDFmcVRWUWJBb09NVkJnQWcKT3A3RkFEcURrbU5paExPNGdobk9jUHJneWE1Z1FBQlZjTEdtejdpRTZEbG14dUpLeVNLVGFvR3BlcDcrM0R6ZHUzTzExMEV5ZFZjQQpnT2FXand3Z3VveElsNUdIQUtoSUNBRlVOZ2hBWXRWM0JSQnBBRURrSVFiQ0FEUnlIZ0VJTTlBQWdPQ0c4QUJBeC9XaVJ1TWpBRFhYCktJN1ZDcHFxNVhkSWN0Y3FqVytkMmJtbHpwdFg2OTU5MUxtNzNyMjMwYlAzT0Q0WEZwNE84KzA3N2QwUDl3dHpIbXAxSEc0RkFBcVUKWEh3aGw0bEVZVHVJUmlOSVlud2NFaFVYazRoRVJjY2lzUkZ3TVhITWVDVHVMM2w2OU1oRnVOUHFrYk1BUFlBK2djSnorQ1VBRUxnRwpIRHpZVXZkQlp1bU5SUlFvbm16eXRRWFFNVGlEMmhlUVJzeG9BQUkydWp1UGRDZVRBQUUwditSbm1UVGZ0bHAwZC8vQVQ4L3VKcHcrCm9SMk53ZTBOSUw1ZGplaVdodENHR2pTdjNwRlhEYTc1ODFKcER2SXNWQTc0b2VDS0x3UzhlUitMeEtSRXdKSW1LQ0U0dGhXQlJFV20KSW5FWFpoZmdDOTBIbC9zTTBNZUFwVjgvbzNYM0NidG55TmpQWVAwTUJ0Q1FDYS9oOVBsWEFEU2s5QWNIRU5DUGZTT3Nkd2J1Y1EzRQpzNlhDdGFuU3MwbmR1Ymt5WDNCOGp2YjRLcGxpbllLL1VjcmNMS1d2bHhBM1M4dElVbEtkU25ET0lHdXVsRjR3bHc4R0VMZ2NFVURICnl1WEFURFZxa1ZFbUs1TFc1b2hlbThIL2NJYmdmNllMUDU3RyszZ2ErMmR6K1I5czVOY1c4c2tsd3NOSE9FVjZzd3BGZzVjdXZRaCsKVTgvRVJrYkZSQytkbW1Sdlhkanp4eU5CSHhzZGRyNy9qd1djVS9zc1pOUk50blhSWjA0ZEh4MGRteHlCM0htM0JQVnpjQUFCSWVHbgo3Zjh1Z05BUVc2L2ZoRVJFcHNFNlgwU2pXWXFpM0JCY3d6K1VNdDh2UHJoZEYzUlBuMlVnV0tjZnA0c09PQUtuSFR0cElFQXFRUS9iCjUrZDZ2aVE3YnhVNFg4NzJuRjNzYjhsR1gxMWVXekE1SVFwMjVmbU9BR0xnQUFwWXlIQUlDbHpwWkhwczlJV1p6eVhFUWdDbHBNVEUKSUZHdnZMUUxCeEErUjRhbjIwSUpwODh1OUhXUVE4NHl0eTNmNFR6b2NwU0NlKzd0NFBkNWhKQWpWaHFnajlOSzh6cVlYaHVjQVJ3VgpRRFlXWUVvMzFpblJZNkdCTDNSWXFPQnIwUzlLZjlxNk1qMDFNaVV4SmlrcDRlTlB5VDR2dmVjQm5EVWJNY1BwZzhkdTRjQ053UDZZClg3UjhBaElYKzFSS2F0cVlxUFNrdE9ReFNlRC9XSlVwTHhqZ09SNHdBWUJjblhCNTEzRDY5QVBvUHNQUlNiYmZwM1YrelhSOFJiVFoKR1ovL3RzRGZ0a3hkTkJPOEhvNUpUazlOVE1wZXNyamJiMis1KytjWjBxdTRmdkRNMU53REFKcW12QTBNTkZsK1o0cnN6aXpaTFpBcAo4dHVaeWg4ZlZOY2JkT3lCa3VmSEFEUlFEVDBDZ0JSWUt4MjVnc1ZWc0hhSnF6TWtseWZMUHBvdWYzK21xbjJhNnQ1czFkMU0xYlhaCjZ1dlA2KzVNMWQ3TzFsd3UwNStvMGdvYnRGeWhUTFZCZmdtWWJJN21aaGhBVXpSM2NwUWZzUFQxOVRXQzd3MmdPcjNLWEs0Y0VVREcKQVFEcDVId2NRSElKWHlvVVFRQkpXQ3dlSHdDSUtHQnY1UmpYTUd0MmMwV2xQQ0tCUlN4a0VFdDRwVHdwdFZ3dHFEYkxhNnVWOWJYcQpwanJ0aVRyZHlWcmRLZUNoYWcweXhEM2ZHMEE1RlJUb0hwTUFCdC80b3BLK3FJcVZVNkZiYUt6TzFMZk0wNzQ1UndObk5JY0RhTGRZCkF3QkVFVUlBWWZxQkFBTHBYd2dtTENzVGxCNFJ3UnFnTUlBRUNnZ2dtZXFKQUZLUlJnZlFZd1lhN3A1QkFDSXVieVQxQStnWUlRd2cKUWlWRlorSTJHWVlDcUFrRDBGMmkzTGxTN1Z0VDZkcGM2OTFVN2R4WjY5bFo3OW5UMkwzM0dBRFFZQVA1OWpVSDlqWDdEN1phQzA2NQpEN2YySFRnVEtqejd4OTNWS1pIeDRNVWQ5c1dKajAyTWh0c0hBdmpBdmNEQUsxVlU1TTdrT2Y2RHA5SEQ1d0w1cmM1aVREOEgyNEtICnpnSVBnVXR3akI4NGRoMi9NWThBV0FQY0U1NzV1cEpaOWdRQXRTOGtoSE56d2FNQUFOM0pJTjZkVDd5V1JiaVdVZnpIYkc1b1ozM3YKTHVpZS9nelFKN1N0SG1iTDBiNmR4M28yMTZHYmozcTNIMFUzMUtGNXgxNVpVQXFFQTl5VGhzVEV4OFBWN29BK01kR1JlSWRvY0pFUQpsd2plbGJLZlhlRmNxZXRkVisxZDlhalFKNndmZkNldjd0eEhqUTFITEhaK1JKOWxhcERoK3NHNU0vajQzdzBnZlBKcm9QVG5NZjI0Cjh5cEJQSnNyL2YwZnFxMGJhL2F6WDV5cGVIdTFvSEdyVUxxRFQ5M0ZJMi9ubDI3bEY1VUpTc3dLZHB0ZTJteVNuSy9VQVFPTkJxRFcKU2wyelNYUFNvQW9EcUVySm84cTBxOFJucHd0dlRoUitPa1Y4RHh6TTROek5FcjZ4UTJndTRaY1JSSWVMdUVWOE9jc2ZjUC82dDcrSgpTMGw1TmhxSlRZb2VGeC81dStxNW9aL21CMzFjOUw4SGk2Q0hDVTd6YURlbG80TTJaZHI0aU5qSWNZbkkzMzdMUnIzWWFSdnIzNFBmCjhyOE1vQUR6NnZYRHNMUS9MU0lLU1pBSWNsQ1VHWFQ5WUFBS09HaCtDOW5YU1F4MWtYdmg0bllhSUpISFNrSTdHVDNBQjBDS2ZpN3EKRjZDZGROK3Y5MW12cmJHM1pybWFsM25hNXZuYWNnS241cUZ2Yk5Ec25naWVpdDhEUUFFcmxCWUFFRnlRYjZXRjNGejdRMHJHN0tlVAo0aU13QUVXQkovYnJQOXFEQnBsK0t6R3NuL0RZajk4T214SjFkN0w5WFJ6VUlmREIzYmpncWowNGgyVm5XeHdNaDVQaHRBUEdNWDEyCkp2eGFHODB6T29BQWQ4RDFudnNrWHhkY0xHYnRvanBzREorYkY3eXorU2QxQzU4Wmw1S1lGUHZVTTRtZi8wM2dzaE43SDhKTzB5Tm0KT0gzNkFkVEo5bGxacmwvdTM1eVJpc1RIalU5UFMwK1BUVTlPU1UySHJuM3AwbDd3ZElDTHZ4NVFIQTloYTUvaDlPa0gwRGRrdTRWawovWnBpLzRvRGk2QnR0TC9lMnVRL3ZXYnpzbWVSaFBpbnhrK0lpb2dtVThvQ0tFcS84UEYwUmZ0b0FKcWl1RHRkZm1lRy9OWjA2ZTJaCnNtdkxsUzhUdEpVbUEyZVFmdm9CRk5aUEZkd0lUSUF0QVlNdEVIRUFBZnBJNVN5cGtzMlFTL0pFalRQRmw1K1hmVGhOOXNFTXhXMWcKckJuS214bWFLOU8xN2M5cEFIU3VyZE8rTGpLWTYzUzhPaFdMSVRPc2xyK0t6YzNkbXFHNU9WTjFBd1BRcmNYSzk3aUcyb1pxM3JGcQo0YjhDSUpOT2hRTklKWU0xUU5qd0R4K2IvK0tYS3dSd0l6QXBYeUhsU2FWY2lVRElGYkV4QUhGNWZIcXBrTCtKWGIyTWRXb0xWMVhJCm81ZHh5RWM0bEVLc3V6SmJTQmNyMlRJTlQ2Y1hWVlJLNjZybGpUWEtwbHJGOFJvRnN0aklHREdqQVdoeEJYdkV3QzZJNE1Bb1dtUVMKQVFCbG01bFlTWkE0eTFTM1FOODhUL2RLaHVZRFlFWVFERUJBUXUxemRiZUJoSEFBbGZLcEZDR0JMS0g4VXdCUlJReTJsQ1ZVY2lScQo5aE1CaE8wSnJ5SXpaU1NpbkxSZlM4SUFSRmxhUnhrQTBDTUc1ZGFUaDlQbk1RQTFrZ1lBUk1BQlZHcW1hQ29nZ0JvR0FOUThBS0FUClZmSTdCSmx6aGNxN3VzSzVzZHF6d2V6Y1h0MjlzODY3czhHMzV4Z3drR2NmWkJBK0hlYkxQeDNjaXdIb3dFblB3WlpBZm92L1FJdXYKc0czWDA1blI0T1V6T1FHSmpJcU1qUVB2d2VOakV4QWtNaUltR29tS2ZtRkpXYkFNbHY3NDhsc0FnSUtZZVBBZXpUaUE4RGJOM2Z0UApmNVJGYThjTTFEL3psVTIrTnEvczVrTHlZT2lNbGlFQXVqMlBlR3MrNGVyODB2WTV4Zi9JbGFFN0czSDNnUFJzYitqQjZiUGxLQjUwCmZhMTdXMTN2dG9ZQW5BaXJSNWRYb3B2clE1dHFEZE0zVDBPUzRLTFkyTWpFNk5oWXVOTTlIQkJLZ2J0N1JDS0prY1F4MmU1bGFuUlYKWldDbHdiMHF2TGk5ZitBSGJtSzZYSThGYzgrZzFqNVFQNE8yc3hnUzZ6S1ZkZERBRDRCT3h6SWx5TDhiUUpZMTVlRlkxK3B0Nnd6Mgo5VWFZalVibkpsUC9xTTltU0I4OHdVMFY3czFtYjU3R3VhRjJQL090cVpLN3k3a1h0bkhLOTdFb0I1aWt2WnpTSFp6Q0ltNWh1WXplCm9wZWNNb3JQVldpaGdSNEhFTWdRQURYcEZRMWFhYTFHWEt0aUNSWENyWkxHT2NJcno0bytuU3k5TzBOOGJTYi94akwreFgxQ0hZRmYKUkpFVUZmT0xTUnppMy83K21kVmxteng5eHZnSUpIbDhBamhCdnNhWkVicXhQV1Jud0FLVVlhZjgvMHhjYm9hdmk0UzZLRjkvVFo0MgpFNXc4SWpKbXg5a2ZjRkFQQTQ2di9QOEhRRDc2bDEvU0owK0tSMkxCWDNjcWo3S3dMd1JMcllkVDV2c0ZhemZRL3pOMlcwaHVDeEZPCmU3bmdKbWlvbHdjUytJWm8vM1M3N2MxbC9qTUwwT09aNk9rczlFeHV6NFg1dnJQenU5dG05YnkvbGJ2MU9mREc0MThDRUZ5Tnp3eTUKK1EvL1VUcDk4cmpraEdnQW9PVGt5UGpJeUhmZTN0OFhZRUNpNFJOZXd3YUJuUFlTcjVPTVZlM1FRNTBRdFY1YnNjdCt5R2FoK0p3cwpJQnRmRjJ4MzFOMUI2clpTWVlYVEtBQUNxb0RMOSs2VC9ZQkJWcWJMeHV4MThKMS9MWFc5dU9qM0RUa1RueDRmRlkzTXp4cmYxU1Z5CldjdENvd1BJMVVrYk1ZNkhySUNUL2ZEdTdpV1RraUlUazFQVFU4YWt4cVVuSjRDZkZIYVh2bm5JNTJHNEg3SUJnT3ozS2JZT3huRDYKNEhFK29ObzZ5Wlp2aUo3N1hHc0huQTc3OHAyMWYyL1k4T3p6NlVsanhveE5INE5FUkY5NjRWeEhFRjFUZVgyVzlzTzV1bnNnZzZmQQpBSUJBcGlqdUFLTk14OGFCNXNvdmIxYWRZZXMwWmlQeld3SklyK1VCL1doVVhDWFVEMHVnNXBLazZyV0NsbW1pcTgvSjcwNlZYSmttCnV6TlJlbk95L09wTTlaWEo2cHNUVmJlV3FOOHVLRzh4Nk5YMVdsNmxuRlVzUDdwRThSWWMvdEhlbWFGcEJ3Q2FvLzFnbXFZOVYvMnUKd0ZEVFVNTTVWc052K1VFQlpGUkIvV0J0b0NHQWxESUlJTmdGRVFLSXd4Q3pBWUM0UE5vUklYOGRwM0VoNTRXMTNJb0NIcnVVeXlqbQpNNHRFcEJJUmtjeW5rbmdrcW9ERUZsTkVTcVpheHpVWUJkV1ZrdG9xQ1pKam9PTVpCaUJXT01PNU0wSk01Q1VtN21LakJBS29rZzMwCmsxVWh6emFhRnVoYk1uVXZaV2gvUEVkell6WUUwSTI1V0JFMEFCQmNCcSs3c2tKMWZqQ0FScHNDS3haQ0FCRUVqd0FrVTMxWEFGRUcKQUVRZFlpQUlvRkV5Q0VEUVFCaUFDS3NhaWNXVlpGVUZwOEVnSEF5Z1U5WHlFeldDazFYeWUyVXl4M0psOTBxalkwT1ZaMTJsYzJ0Vgo5N1lhM3c1b0lPOXVPQTRFRElRRHlKM2YzTE9uR2FESHNSOWlDQVJjZ3g2KzhQSks4Z1RZT3ljT2Jod1FFeE1SRndON0pjT0ZWSkh6Cms1Ly9lbTl0ZDhtNTNnTnRubjNObnNOdHZVQS9RRHdEbDlCREIxcng0OSt0Rk4yY1czWmpQcXlEaHZySklsM1BKTnljVHhxTW04RzUKc2FBc25QYjVqd0x1NFU0bTZXWm0yWlhNa2cvbkVTeHJkZWlPQmdDZ01IMTZ0a0w5QlBQcWVqYkRvT3ZyYmV2TmZWc2EzV3ZONk9wYQpkRVcxYlUwRnVyeTJKNittZWZiK0dRbFBBY1loVVZHeGtYQ0hlSENTaUVPaWt4TFQ5cVhQKzJxWkRGMWVCUURrWGFRS0x0Y1BudllhCm9BL01rTWFHUTBwOGhyZ25USi9PcFVvUW5ENTR3dGY4dXdFRTlCTUdrR09EQ2VnSEJ4QkFUM2VlR2NTM0dTYTQyZWplVXVQUDAvblcKVlJjdzNucE85dWtpM2x0YjJIWDVUTnBCR2ptZlJkakJPVkxBT2F5UzBFNlZpMDRieEdkTkdtQWdBQ0M4QUNnTW9BdlZ4akNBVGhuVgpBRUNOT2xtZFZsS25FbWlVb2tMeDBXeit0WW1pWDArV2ZESlRmR3NHLys1cS9za0RBZ21KZDVBc1Bsd3FMQzFsbFY2L2M3a0hEVzNmCnZqTVJRWkxISlVWR1JzcDJUQTI4dmFidlBoSHU4elhzbFArZmlRM1dBTkZSTC92aDMwalRwendEbmlJN2RrN3BDYkI3c1oyLzRONFgKY0lWWGYwL0YvMkw2M0pRZUwvZmcvbWx3TGh0SlloeWEyK3NsK2wzUUt6OUlZUEVOWmlEWWhOcEpoLzJCQUgwY0xGOEgxZlBaWWZldApQUGNyeTN5dEMwT25GNFphczBOdGkyd3ZMUENlQXgvTzdHdWUxMzF1OW9QWE41ZXRtWmdjODkwQlpLUEJVUjl3WlJoQUxzSGYvM0w0CithZFRrK05qc0JHZ2lNU1l5UGZmT3doSGdFWUhrSzJyek91bUE1UUViS1JRQjZHbml4QzBrengyQXV4WFpHZjdPeWtnc09XbWhkcHQKSTN1c3BORUE1TEFDK2xCRFhiRDVrN01UeUl5SGZzWDQ4b00xcnJhRmZ6MlorOHo0Y1VnRXNtL1BITDlINExhVWVoOE1kYzgvQlpEegpJWnhEL095dFRiUEdKY1FtcFNhT1NSeVRIRDhtTlNFcE1mYTVjVW0vLzJNUmNLZjdJUlA2NWdFQUVHczRmY0t4ZDVBczkwdUFsbXdXCmtlTi9DN3BlV3ZlR2VDbEExZGh4cWJFeEVZa1Rudi9mei83NHlmOVpad0ZTbEVNQURha0JHcGdDZ3h0MVRWUGVuYWk0TjEveDQvM3EKSm1tNXBNcEFINlFmQ0tEQitoa05RQ0lsbmF2bUZZdE5LL2lYcGtodUFnQk5sMXlaS3IwOVVkSStTWFpsbXZ3cUhBcVN0K2VwTG5ITApUWFZhUVkyYXA1UHk5c2hPTFZCY3psRGZtQVllb2ViYWREVUVFTGhjcFg1WGJLeHFyR1kzVnZOK0tBQVpWSUwrSldCSzJBWHhNUUJKCldSaUFlQ3dKaHkzZ2NBWDBRcUY0TmZmVVRNN3J1ZHlqZTNtQ0kyeEdJWWQyV0FBQVJLWUlXU1JnSUl4QkZCNlpLYVR3SkRTcGtxM1EKY0FHQW1PRXNOckxDK2U0QW9pd3g4akFBQ2JDU0lFR1d3WmhkZm1LZTlzVjUycmN5Tk5lQWZtWnJyODNXWGdILzF6TFVONGNEQ0c0RQpoZ0ZveENKb0FLQlNBWWtvcE5IRVRBQWdrUUlDU0lIcFozUUF3Wlh3b3dEb01RTU5kODhnQUpFSEFRak9oZUVBS3F3a0tTbzQ5UmlBCmpsWmhVMkFWa3ROVkVFQW56TEo3SlZKbkxnYWdkZWJ1TlJYMnZFcFBYbFgzbG1ydjl0cnVIZlh1M1EzdXZZMXV6RUMyZ2hPaDNTY0MKKzA2Q1kzaFpjTXArOENTNnY2VnpmKzMrcERsQVFGSFJzVkd3NkJsdURSRWZIZk04a3RLV2VhanZZS3QvLzJsdmZvc0xObUp1N2Mxdgo5Y0doSTRnZWNBQUFCT2lESC94am0rSDJYRUo3SnZIcVF1S1ZMRGdPQkF0OU1vbkQ2Zk5rQUFFMjNacFBnZ2Z6UzMrV1JRT25hblRiClVmL09CdUFlbkQ2OWVVZUJlMEtiYWtGNk5vTExvNzVWNXQ1TjlmNjExZWlhV25SelkvZUdHblJWVGMvNnVyNk45VDlid3FjL3YvSzUKK1BIUnNDdzZNaFdKM1IwL3MySE9IaFRJYVcxVjEzSjFLRmZmdTdheWQybjVRTVhQSS8yNGNzdWR1ZVc0Zm9ZVU9JY0JGSFpQT0RoMApodWpuUWU1alYvNjdBZlJJUHh2aFduZjNwdjZ4SDV3K2VQeDVlbmRlZmM5bVE4L2F5a0xtcTA4cFBwMG51THllZS9JQWkxRkFwZVN6ClNEdTRKZnM0aFNJeHRRbjJnNWEyR2RWUEJ0QnByQXpvdUFIV1FRTUExV3JFSmlXWExxbFl3WDkvcXVBWDB5V2Z6SmJjbkNIOGFCTy8Kc1pEUHBmRVBrRVVGOExuR0tqM1YxaFJDZ3pXVlpuQnFURWhOakkyTDJERHJhZXU1ako3UDhudmR3dUduL0I4Mmd3dWZnNE1Lb29OZQpQbXBqb1E5SS8vaG85NXh4NHlNaUVLbDRIWXIyTDBySEFUUzRidnEvbFY0YkFRMXl6NXpjR2duM0xZNG03NTZPdWloQkYyYzRaYjVmClVEZkxheVU3Tzh2QUplcGtvUTlwNko4T0J6L1pacitZYlQrZjVUNmI1VDJUNVd2TDlwOWQ1RG1YN1RxWDVUeVRhYnVRWlQwL3IvZmMKVXZURlpaMFhkK1V2bllOOFh3REJ5UzhNUUNFYkorUVMvZVYzK1JQU0U1UGo0eUNBVXBIa3VLaXJWd29CZ0h4ZHNBWm9TUGt6UGdYbQo2MlIzMjlqV0RqaCtFK2dnOTNheXZCYVc1UUV0WkFWZlJjSFgyQWNjREt3RkFMaVRVVWVBNExoWEJ3bnVCbStodXkyTTREZDAxOTBkCjk4SFBmbTdSbjQ4dkhUZG1MQUNRVExRUjlmTUFnRndkUTkzelR3RUVjQlB3Y2o0NXZlVFp4TGk0NUxTNHNZbmpraExHcHNVbnhrWXQKenB6Nm9JUGt0cExnSHU4UDRWWmYyTDRaUTkzVHI1K0hkT2NEaXZWaGtlMEIyV29WMlQvZTRUeXprYmJqZVNRMjllblV1T2dJWk5uVwp2VTZmNzlUbFh6eW52RGRMZHp1c24xbnEyK0hoSHdnZ0Jld0pORTExYjZMeXcyekYyOFdhR2wwNUVBOXRrSDRlQVFpdmdNWUJoTzhDCmhnTklyZVJBQUttb0xCWC9rTGhtR2YrMWlkSmI0UHRPRTEyZEtyNDVTWHBqaXZUYU5HbjdaT21IbWZJYmh6WE40SDRhMUt3S2xWQW0KRlcrV1haaWp2SkdodWdvQUJLZkpjQUJwcnEzU3ZDazFtWnN3QUoydVVuMC9BRlhwVlJYbGFvTk9DUUNrbEhLR0EwaU5BVWd1NFlwawpES0ZReUJQemNRQ3hoZlREUXRrcXpwbEp2TXM1L0JNN09PSkNKcU9RUlNua0Vrc0ZGSXFBUnhOekFJUGdacWc4S29sTEpmTm9WQUdECkptVCtZQUNDbXpWQ0FJa1dtM2h3L3F0Q2xLV3ZXYWc3bDZGNUkwUDlQcHo4MHQ2YW83czZwL3dEREVDM0JnTm9sMWlIQTRna29ZeTIKREQ0TUlQb1BCcUJIQnNxdHB3eW56eU1BTlZCR0JKRGN4QVlBT21wNkRFQW5xL3NCNUZpbUFLZHQrOXBLejJyWTVjVzlxZEs5MmV6WgpXdTNaQWV1QlhIQlJHRFJRMTRHbTRLN2pnVDBudlB0UEFnbTVEalZiRHAzczNYVUNMV3g3ZlJNN0JZR2RidVBCU3lnQVVCSmNRclg1CjZVeDAvd20wNEF5Nm85bHg0TFR6VUN1NnR4VldFZTF2Q2VRREZiWDQ5cDJHVzNRZE9BTU9RZ1Z0MXZ5akg4NGo0UUM2dkJCZTNscEEKQmdBYWpKdkhSbnBHQWRDMWVXVUFRRGN5UzhIMXYxM003dDFlMTVkWDY5dlJQK2VGNndkbUk2YWZEVFh1UEVDWmVzQ2QwSnBxNzJxegpaMzExMzZwcTU4YnF2aFcxUFN1cTBYVkgwZlVOdGlXYTN5eGcvVTgyNHpmTHVLNTFSblJsWFUrT3RudGpwVzJWenJaVzcxeW1jYXpRCkRnRVFyaCtRSVFYT1Q2Q1BaYW5TTXFDZndRQUMrdm1QQVdqbzhNOUc4UGNBRTlhUFA2OEtKQUF2ZGM2OGh0NU5KblN0cVlqNXdqalYKSjdORlY5Ynd6dTVuTS9KcEFFQ1VIWHppUGw2eFFFUTlwcE8wR09WbkRLcmhBRHBmYXhnTlFEVmFicTJhd3BNcDF3bC9CTnd6VTNwegp0dlR5ZE5HdGJlS2pSd1JzaHZBQVNYamdpS0NzaEYycXFaQUhVZCs5YTlkajQ2UGlraExqRTVGSmlhbC9QL3FVKzM4MkJsei9OUUNCCk4vcmUzKzIxWFZueThjbFpjK0tTRXhEa3pJa1N0TGU0Zit3SHkzOFNRUGozR3A1ZUd3a05zSC8yTVNVbE5UNGFRY3J5SnFKMkN1eFAKUFl3eTN5L0FCQ0VQRXczd2VwME0zMThQTys1czZIcDVZVWZ6RElpZWxvWEI1Z1c5SnhmMG5zNEt0R1YzbjEva3VKQWRPSlBqYjgxQgpMeXhIWDlqOFJkMlVocEswNXhOaTRsTEhmdzhBd1Q1QUZqTGNqc1BDQUFBS09vWC8rNnM5WTFNU3dnQktpWSsrZnUxSUdFQkRnbzhBCm9SYjRMYndPT0lQV2ZaOFd0TEM2clhTSGt3RnVBUGVVc0ZHZE5vckRDZzdJN2s0Q25DQWJIVUN1K3lXQVlxNU80RXVlNTgvRi82OXQKdnE5bHNlL2k0dC9WTHhnelpseE1OSEtzcGdBTmNGMWRKVzdMZDU0Q0F3RHllWmxYYSthT2pZNk9UMG1QSFpjNExqRnBYR3A4UWt4awozcG9jajUvdXNoQWQzOUFBZ0Z4ZHJLNzdvOVlBV1I0dzNQZXB0bzdERCsrWFdtd2kyN1dOcnVPYmN4YkVSQ2FNZVM0NUF2eUprT1g2CkFJcnlUNzR6UWZVVE9GVXlERUJBUHppQVppa2hnSjVYZlp5amZJdW9xVFRxMlRWRzZyY0VVTG1HcTFGeEFZRFVjclpJUldhb2VBZEUKUjVjSTNueGVmaGNEMEhYZ25xblM5bW5TNitBMVlhcm80eHpaRFpMMjJIRUQrWmlTcmxjS1JXTHBHdmxMNFBGa3FDNVAxZDNMeE1aKwpBSUJtcXErdDBid2xOVlUwVlRQL1RRRFNLaDhCQ0hZQXdnQWtFQWt4QUxFQWdBNko1U3M0NTU0WHRXY0ptcmV4SllWTVpnbUhEdlJUCnhxZVNPR3dpbDBuaXNTZ0NEbFhJSll1NEpDR1BLT0FTK0J3a3g4Z1pNWXRIaTRrYlJnOTJTMjZPUVpoakVPZVVpeFliK0ZqNXMzQmgKaFhhQm9TbEQrL0pjMVh1ejFPL04xcncvVzNONWp2YktYTjFWZkJVWW5BWFRmVEMzL0dhbXBuMkYvRVU0QWdTWUppU1F4UXlhaUVLRAphOEg2MThOai9hQ0JnVWlsQWdKQlFDWUxJSUE0TXJaUXljR0xvQlZhcGx6REFGRm82VElkakVSREVhbElQQlZOb0tUeDVTU21uRkNzCktOdWxJNnl0SkMrdHBRM1N6K2dBR2lnQWdtTS9nK3FCQUgzQ0thaWl5Q3E0RFFaaGswRjByRUxTVkNFNUNTNXJaTTFWY0Fyc09rbmEKdlVnQ3p0L1d0VVp3NXZPdE5YbzJtTHMzVm5rMlZYdnlhcnEzMVhtMkgrM2VVZCs5Qzg2SS9YL1UzUWQ4azlmZEwvREhVOWJ3WklNQgpnL2ZlQ3pCN2p5VE5ZSHB2eTdMMjN0NFRNN3dYRUNDRUdUYVlUUWdKVGR1MGI5UHhwbW1iWnJFOFpjdmF0cDk3amg0amhDVUk5TjczCjl0NzA5MUVmUFFqSnlJTG42Ly81bjNPd1FURVE5VHQ3MWUvdW04Zzc5ZHFkVGFkak1pT1JxWWlkQStJSTE4dlo1aEVPbklSRjgyN2oKNndSOWQvODNNWXk3QVJtWGcxUFBoYVJjRFllRFg5ZjhkcHBENTNYU0hiRHJkbFJXZDNBYTROU2pwYUx4RFhXajYycjA2NnBON2dIbwpnVmxlQ2FKZlZqRzZkQ0tHcEhJc2NDT0xsMGU3NlBrVWQ2ek5HY3Z6TnVjWFN6NkFSeUJZZzdONWp6UEdIY3M4aWVXWjEzNU00Z0VHCndzUmpIa3YzdkJHQVhsajRaNG1zTDBtTzZVZXh2SGhvUlRGVysxR3RMRld2S3RPc0t0TUMvYXd1TmF3dUF4bGRVNDZ1ckZDdms0NnQKa284dXJYcUxmTW1iZjJNKzkwWjAwWlgxNU5LM2NuTjM1RzNmVnJEclhVcGFCanU5VkZ4d1FNeHNMUmEwbDRxNktxVG1heUVhRDBxNgpLdVFkWmRMMlVrbHppYWhSTHRnbjRlNFJzYXZGN0ZvK1E4aG12OE9zRFdCZG1jMzZneS96WGhUaktORFBka3BXR2lNam1ibzlrN0V6Cmk3WXJuNTcxZVBEbkgvcWV6Smp1N281RGNDNjRxUTZFejB1Q1ZaOHNHUjlKR3gzSzF2YW53eDFEaDR4N2FRM2w2UHN6d0FIYW4yTTkKQTlsV28xVm1hUlVaby8zcEtOekZJc3N3a0tGUlpLaVVtWm9CY0p3NXBnQy9tcVlleVVJMUZQUlJ6dkJ2M2pFY2lCbHM4a1lQUmordApEWjdsUWdBL090Kyt1Y1dBd2ozcVh4YlQ2Qmc0d0hhQUI4Y29lTVhCREZTWnBSdEtCOUVQWitnR1VzZUg0U3RhalFhQVJnSCtJRm1qClFGcktiUDFnQmx6TFVmbGNYWk15M2wrQXF0T0g5SVhSSWJNY2JaRTFVZTdvay9SaFRaNUdrZmxHMFE3Q2RoODQybVgwQnlDWGNlbnEKQW5SNEY5cWJOdjcxQjhObmx3NjJCV2xhL1BXZFFlcXVRTzBCUHhCVnUrL1lnWWl4ampoZFErUjRTeFRhRm9aK0dLazd0dlRUNmpqeQpwcmx6WE8zc2JYRjRQTTdGSFhFbDRVak9UaTZ1QkVjRU9YdGlIYW92TlBUbjZ3YlM5ZjFaVnFQclQ5SDJwNm43NEhyY296Mlp1cjUwCmd6Nzc4OCtTd2JONUVIQ3VKQWVpcTV1VEUzTHY5anVvaGdaTUE0czN2eFR6MldGdm5NRzhnWjdzMFQ2V3FtZm42Tk8wdm1OcmgvY0UKYVZwRFJvK3RvSDhRNU9TSUl5RE9GNjl0R2RObHF4NFdQdWxQVVQyRis4WmpHWG1TYVlyeUtVQk10bVdVdlpsb2I4RVphckNkZzdzegpDZWZ1VENDNTROM2RTRGFJT3kxM3pwaWFvWHhDR1htWVB6aVEvdWhwcXZxbnJLR24yVmdVVDR4dDBZOHpzYWdmd2lhaDd4VHB3MytICjZ5NnFqbS8rclNTWTVPenU2dW82QlNnZVJ6cDcrb2pLb0Vzc3VUWmY5RVdnK0I2bUh3eEFKdjNBYWZEOHE5NjhXL081bjNuejdxd1MKZERIRjdHcFpkcm1jVWxWTU5ZWUdVaW1uR2tNSHFaQVZWY2hvNVRJNEJVd21vWXJFVkw2UXdoTlF3QVZVd00rbGNKanJXSHNEMlo5NApjMi9DMWFWWk40T0w0TnBDczRUblozTnVCN00vUytVM2xFdklwU1Z3UTY1U2JrNHVTeEROK2RoVGVCYzI4b292ZWtLb1haZ252T0hOCjc5NGc3WklDOTFSa05wYVI2NnBMR2l1NXhyVVFSVzExNG9uVVN0dnJaTzI3SmNaVkVDR0FXbXBsVGM4QVZGOHNxSkx3QUlDd1dXQkMKSHAzSElrdUZFd0FDRXNKNmdJVGNJbXdJak0zT3B6QUJnZWhVZWxFdW82aUFucitEem8rbGQ4NWtudmVqSGsraTFQeXFNRCtsY0djNgpPUVBRSjVXYWxVYkxBY21rNVdmUkM3QmtBd3pSM2h4QU1jVzBtT0lpa0dlUHBFNEFDRWlvbUJKWndvZ29FWWZKYTRNa0hZR2lNLzc4CnE1aCtNQURCaUs1aUFRRHlGOStjQktBTVJ1Ny9DUUJsdnd4QU1WWFp3RUJXaTBDVG00Rk03bm5SUStZQVlsc0FhRjgxdDdrQ05rRmYKeVdDUFJMTDZFMFFEU2NVRFMyWHFKTGx5ZVJrd2tISmxoWEoxcFdwdHRibUJzRXpNRVRNeVNQV3J2ZnFOdGVpN0RZWnRqWGVXMGVVKwpHeGl6azQ0RTd4amF1dGNFb01rR0FuZXRCUUNvZDEzWkhmOTBBS0R1cU95THdTblhRek9BWml5SjgrcDBoNlRjQ012c0RrajVLcnhBCnZiNFMzVkNuV1Y0S0FEUXg0R1hVajk1SUh5d3YwNDl1Y2FuVldPb0gxbnNzbXAxTkpSOUY3QVI5VEFBeXIvZFk1bjhhUUpNS1B5WUEKQWYxZ0ZhQkJNd0NaOUdNRVVPbHpBSzB0QlFEU3JwT2lxK1M2WlRXYkNpK0JmK3k4ZUxlanFGZldVYXJmenFkc3k0Y0ErbFZoYWpvcgpyVmlZMXlHaVd3TG9XU1lEYUwrVXQxZk1xUmF6QUlBa0hOYjdyS29RMXZtNXpLLzhtSGRqR1VkMkZ1WHRwR2FsTXpQVG1jblpyT1NNCm9oM3BoYnQrOC9VREhUcVdsSmlBczBVSVJEdFhlOEpGZm9qaFpPeklqKytPcWZQMVFEL0tYQjB3eW1BbXVJVVQxSlc1V21YMkd3V0YKczZrek5jTlphbFdPUnAwTG5oUENxQzhiSElETHYwRlZNS1lwVkQ1TTc3bTNmdUJvUExpYzYxdGpOUjB4aHM2b3Z4dC92cDg1Mi9YNwp2MlNnSTZtV0JERUZ0a1cvS0NIc2pBbHcyR01taHMrTVo2d0dmSjJqZytBQndFeVpBRUJ3VzlZaHVNdUgxV2g2QWJaMmFRMFVjbGE4CkhZS3NESnVDZnJzTlZSVkJ1N3hKdE1QNSt1R0NzWkZDVkUxRlZWUjBJRi96VStyUXQxdDdyci9WY3p4aHFNVmYweFNrYjQ5VGRTV08KSEloVWQvbVBOVWVPdHljb1cySUcyc0lIRG9RcWowVG9QbzVYSFlydFlQaS9GMmsvRFVHSWRvaXpxNjJ6RytMc1pPdU00QUdBaUVZRApUUUJJUjhZQU5Eb0lPNTFOTVJpbjNCdFhHNEtieFdyNkN3QlZ4M29CaVRJTXV0dzd0N2JqY0E3dWVFY1hvajNCeFJXUHQ3bC85OTMvClN3RHFTZEgzRnozdDNhRVpvUTFkMjl6WEh2T29LeDV0ODd0WkhPdmxBVmNPbWVYcy92dmZwWXdxVXRHSFpIWFB6cEdCWEN6S2ZqaG4KL25uNjhrQ0dlM01uUlFGUS9uTm1RNllYNHVEczR1N2s1a29rT3NNZUlNU0dXRk1lUGFaaktKNFVLQi9tOS9hbjlneGthUjVDallIMApQODNDMHZja0U0dnFwNXloeHhtUEJqTzFEeWtQdjkzNTZQaXFmWm56RUR6T3pjM04xUW1aN2gzNHpkLys5RjNmWUxUMHNtL3hiL3lGCmNCRWdURDgrZ3B2bUFKclBnd0R5NHQzMzQxMWJKMnhqU1FDQWN2OE5BREVFRkM0dmo4eG1yV1UxQnJMT0FRQ0J6T1BjREdEYzllVGQKbXNPL3ZJQjlQWTU3SlY5UVhTWE9MWkV6Z0QvazdQd3NoamlLZGNLVGR6dFEwQjBwUE84bjdQYVMzcHd2dWgwa3VQQ090RlZTTG13bwp5MmtvSmRkWFNsNEJJS04rZmdGQUlqN2ozd1BRTE5ZRkFLQkZsTjF2VVNnN0MzZWxrelBUQ3ZPQUxvQiswdW01VmdCa1NaeUp5Q2xXCkV5dGp4c3JvMFhMcTg1TWxORGo1cTVRU1Vjb0tMNWFGU3ZlRWlBOEdpazdCMWJMNTF5YmM4NkorSUlERWdFUTNnNFRYRWpnZmJxYUwKalFCS3pXQmt2d3hBcWZUMFNRRENab0daQVNqZkRFQ1pWR0V1alo5RjQyVStBMUQ2MHRMc21LcmMrT29jWTdJU2FyS2ZKUlBrcFFZeQpPellDYU1KQTcxVkNBTlhLYUxBUHV1dzVnRm9xNmZ1cWVPZXpXSW9vSmdhZy9pU3Bjb2wwZUZrcENHQVFaaURsMnFxUmRSTU13aVEwCnNtbWlJQVFrQkdMWTNqYTB0bWJzclFaMGE3dDZhN04yZXl2Y2ZIUVQzSVhVVWprZ3VuZXNSLy9PSHYzV2hxOWlpaTc3SlYrUHlyNFMKbG40bEpPMWFVTnExa0hUcnNhQVBscXZoR1pjRGt1OEVwUDI0aUlkdTNJMnVydFlzTGRHdGZlWWVMTXNxZEV2THNieU1QdHBGSlZoTQo0akdQaVQ2WWZtRE1tcDB4L1dDVm51ZjBpYlV5NEdXWi8yc0FlcUg4QXdFRU0yQUVrRWsvSUZiMUF6Syt1bHkvVGdZQXBGNWVzNzdvCmt2SGZ2dHNSOU83VnRIMWJ5TXl0K2NrQVFPOFZwaVF6VTBTQzdHWWhyVVhPYnlzUmRwWkxyQUtvczF3R0FOUlNLbTRxRm1JQXFoSFQKNm9SMEdaZVJ3aTZKWVozd1l2d21rSDU3TWVQZ1RtcE9LajA3bFpHYXdVckpZYWFtVTdhbjVHOC9ldnJnT0lxeWFTekVGbkZ6aHJ2WgpGcjgvQnowU09mTDFGblFvZTN3d0UxVmtZYmZnN2hnQUVKeUlEbVh3K29IN2d4cnJLeXB3V1ZWQVNJRzd1cjcwRVUwK09rSkIvNVdoCnVyMng1MGg4ZjB1RXZpVUtiWW5UZEVacTI1WnBXMk8rYjQ3R085bjVCdU9WUFlWb3owc3JRSmh2TVBTWWw0STBvNVNCb1V6VmNJNWUKQ1J0TndLMTJPRmMxa3F0WGd1TWMzWEEyRnUxUUZwYnhQcmpJRURnRFpLWlZaSUFZRkptd0dtVHhpaE5Sa3RHaFpGUlBQbnQ4dTYwTgpraERnM245NXFmYnVtc0h1RlcrVTNqdXJlMit0R3JpNWF1ajZxcEdyS3hWbkZ6LzVLT3Fucm1CdFM0U3FNMEZ6TUdtME14WnREVVNiCkFuU3RpY3F1OVgxdGllcjJhTFRWRnoyOEVEMFovc2VtV043MmhmNHpiZkNPTm9nTlFwbzIxZEY5Q3VKQVJCQUhBb0lrQlBwTTgzQjIKY1FWb0llQVJ1L09uTmdBQTZYcHpBWEdlY2VkWjRRZjg4U2VTQm43VldBRktIKzNKMVBabTZMVjVseTY4WldkbjQrWUVBZVJFY2lhUgo3TC84NGdNVWJodVhZOGtkeTB3MnpadEUveVIxK0ZGcW55RmQ4VzJtb21uSmNIdkV3NDRvOUhoQytqSlB1TDhPaWVpM2NQcVB2ZFFoClRVYi8wK3greFk1SnZobnF5VEdQNG1uMnBHaUh5U1AvM01WNWJ6cGk3MFNjNHVUbVRpSzU0S2U3T3lNT3RxZU9iUnBYNVE4OWdwdGEKOUQxTlZRemtxWDdJSFg2YU8vUWt4eFRURU5pVHh3VlBlbmIwOUtZWitvb2Vmdm5XdzZOTFU1Tm1PK0FKcnE1dzlISEY1bmQwS0hycAp0MzhMNHA3emtYL3B5NzlwS3Y5TUFwQVh2eHYyQS9IdWh2SXZ2Q1BjejVVeUt1VzVGYkkzQmhDY0ZzNHJ5R0h6VnJDYS9kZ1hqQUNDCnU2c3VaTU50NStkeXJ3ZXlMNjhYSEdaTCtMV1NUTG1VSWVOUnBHeHlPcU00bkhGcUJ2dmVQUFl0UDA2M0YvZU9KLythSC8vU0VzRkgKNmJKOThncngzb3FpZmVXMHhpcng2d09vb1VLQ0RZRlpBa2dpb0JZYjh3b0FGZEVvSmdERjBEcG1zYzU3MDA3RlVobzJVSmpiQ3RQVAp5TmtZZ0lCK0pnRW9pMG9HZVhNQVNXaXhNbW9zT0RZK0xLcDRBa0FScFlKd2VYR290Q0ZZZUNTUWZ5NkFmOW1mZjlWWFlFVS9jQUs4CitIcVErSXFmNkdZQTcxb2M2OUFtR2xZQlNzMWs1cndhUUZuMDNEeFd3UXNBRXBGaEc5QUVnS0NCbmdFbzJ3eEE2WnZGbVVrbFdURlYKZWM4QU5ObEFMNjBEbVIwL0F4QTAwRHNWbVl6U3dtbzVCRkJkS1JNRFVFTVZCTkRlYXQ2WkhGWnZOS00zUVlnQmFIaXhaR2hwQ1FhZwo0V2QxSURnV1ppd0ZXVElJNU1sYmRUMXY3ZGE4MzZSNmU5L0lwbnJkZTAycWR4c0czdDZqZlh2L3BHRFFzVHlQUmJPNTN2QkIwNlAxCnBiY0Mwb0dCYmtibFhBNkd1M3BOZHM5ckFPaVN6NDZ2SXdwSFZwZVByYXdjWDFZK3RxcEdzN0pTQjlDRHhlZ2ViZExrc1MzenFzOGsKL1pqNmUxVHhzaGVudU11d1JoL0xadWZuTTd4aUJWZ3MyNXl0NWo4SUlFdy9pdVVRUUNNclNsU3Jpa0dNQUNvQit0R3ZnZ0FDOUJsYgpBNE91cVJoYkowZFhGdyt0cUY1TnZiS0FEN2MvREdQZVdFYnYyRUFXdkorZkJnd0VBTFNUdm92SHpkd25aRGJMZUszRmNLMzNYd1JRCmc0eS9UOEt0a1ZCcWhmUVNQaTJQTFZ6S091akx2QjlDdjdhSzNtTDhOeUlydVdoWEJuMVhGajA1dldoSEdubG5hYjEwekRCKzl1UjUKeEE0dXR3TitudDRVU1JydmpCeSt1Vkt2eXRFcXMxU0tkQkJ3REs2Q0ttV21jaWpkb014K28yRHptR0IzczdIUloxU1pQNjRpajQwVQpqUHhqKytDbjYvb1BSbW4yaEtCTnNXaEhuSzRyYktETFgvdGhoSzRwZnJ4OVlWOUwwQlJiWk5NV1R4U1ZHdnJKay8zeEVnREI3cGJCCnpIRmxydUhXV3NXcE9QV0orTEdQRS9TSFkwYVB4ZXRPSktoUEpSZytqc1dpUHhZRG92c29Hb3Y2bS9mSGgvTFV5bXl0OGFuVWcrbjYKWVlnL3kxZkVvaG5KRzFja2p5dXpmdm9tZStvMFhJaW44K05ETWJCZzB4eitSaGx1Q1ZPMmhvKzBHTzgyaGhrYXc5R21TTFFsUm5jdwpVdFVXcEd3SkdtNFBHKzZJR21tTDBMY0dveDBCNklGbzlGU0U2bFRZNTdWQjdFMXpBOXp4OXJZT05uamlGTklVRjVJejNyaXRtNjBqCmJ2V3E5WitjT1BQVmd3Y2VyZ1NzQWdSKzRjTHBqZGdRMk9oUWxrWGhaMEpDaGdINFI5WU9rQUdBeHZ2ZytURjk0YW5qRzRBMkFJQmMKU1E2T0JLS2JtK1B2ZjdzVFZlWERaYWt0dUdNWlM5YThmdlNQY3djVjI0YVVGTVdKcEpHR2tLR21NUFRJOG5NVk1XNDRXL0RWMk9FZAoxaXoyR25vS0thYjRJUnRvU2YwMDF6S3FKM0JMRGZPWWhzRFFIN05WWDcyWHRSb0FDRWR3YzNSMkpqb1JjTzRrSi9zNXhQczNkNDQrClRSNzZMblg0SDVsOTMrMFkrRGxEK2JkTXhYZXBJSVAvVERGbDRCL0pJSVBmRnlyKzlaN21teDJhYjNZTlhsbno5YjdvZ09rZUxnNEUKVnpjaWJOT1d5RlVvV25MeVByRElBdkZuQVhBUFZLZ2Zxd0R5NHQveDVkOU80SjNjSWF3V3llaVZ4UVd2QXlEWUFTMmhDa1ZGUEVFaApsMS9JNXBOWjNNSjB0aVNKM2VYTHZyS1FkOTJIZDIwaDkrWjhRZmRjL2gwdjlxMG85cm1ka3IxbHNvTGQwalM1bUZFdXpKYng4N000CnNoaldzVm5zVzdOWWQrWnhiczdoM2dubm5GakJQWkFzMmlNb0xhdXBFTzZwNE93cjV6UldDRjRHSU94Z0VvRDJsWW14bGFCTkFCSUwKbUh4MjRTUUFpWGpVU1FDaTBXZ0FRRGwwaWdsQXMxbG5GOURPaEZQYlYxS0U3NVB6VWdweUFJQ1NxWm1UQUFRUHFPVE1vZ0xFa2pnVAowSGxacE9RWUdUbFdqdW1IR2xGTWo1Q3pJb3I1b2ZLOUlaTFdRT0ZIQVlMemZyeHVxQi9oUlYvUkorYjZNWGIvUVAwRVNtNEVpcTZDCmJ5MVFaRFM5YTBPUkFIeUoyWXkwTE5aTGg4QitBVURDZ21jQXlqY0JpQzdJaGdEaVpBQUFiUkpsSkpYa3hGUVd4SnNaS0tFbTE4eEEKRTZVZ2tNVGFyRVJqKzNNaXBNL3o5cUNFM1ZrbUE3MWRtVWt2Z3dDcXN3QlFmUzMvWkQ3N1VRd2RYRno3RnN2NmxrZ0dGNHNCZ0V3RwpNdlVEcVZZYkRiUzJXcjBPTWtpOUFhNFpDTWZGTnRZWk51NVZiYXdmM2x5djNMaGJzMzYzZGtQOTBPWjZ4ZnNOQURRZzJpMTdKa1gvCmttaU5pdytwMzkzM3B3Um10L2V1YTBHd0FnU254QWUvSkNFcFZuUEZiOWY5d0V4d2dSOWZVNjFmWER5NnBCeGRYYXRKS3RNQzlEeWoKRDdadE94YXI3Z0ZSTDRaUkxTb0dNYS8zV05KSEVTY1pqSmRZMHFmZk9LRWQwNCtwd1BPOHh6bUdaelgvMHdEQzBydEVnc1UwK1F2bwp4d2dnMmZBeXVYSjU4Y2hLdVZFL2tENFQrbGxUZ3VsbmZHM1orTnFTOGJVVjQ4WUtVUC9xNm1XTUswQS9DM2ozZ2xtM0V1aEgxaFRLCjM4M0xOQUpvMTNiNlRpWW5jN2VRMVNUbFlnQjYxdnJ6SEVBSEtvc0JnRHJLcExBVnVrUUVBTFJmeXFzVFUyckVySEpCRVlOTDM4UnEKRG1IY2pHU2NYMCt2U2FPblo5TFRVb3QyWWdES3BLVmtGaVVYOGZNR0J2b2Uvdk1KenQzTnd3bkJPNU84cHRnK3JvOVJubGs4T3BpRgpLdUhTTzVxK05Hd0liS0pTQW5qeEpnSDBnYnRaamVScTFQbW91aER0eVRaOC9hN3kxb3FSVG5oUlY3ZEZqblZHbzEwUmh2WkFiY2RDCjNZZSttcmI1YUVjNGVzcnZ1OGJJV1E2T2VUbFJDZ05WcmQ1cFNSQXNrOGEyVENkSFR5Y3Aya1BWTGJCVDJMQXYyTkFZcW1zTlY4RjUKNDBFZytxWkFFRjFqQUJadGczL3ZqU1JVVWFCVzVzSm1vT0ZjMVVDNllTUUhOV3JBYXBTS0REZ1JiQ2diSGM1WnRuem1UQUx5dURNZQpoWjNJa1c4VVEzdjBhRWNNaUw0OVd0TVNBUUpPZ3VPQk5oL0RvVkRBSFUxVHhIQnpwUFp3clA3alVNMVJyNmNkNGFjby9sc2paazBqCk9NSDExZ2tJeVJrM3pSWHcxUWFISUZPY2JWWXNpenB6NWlPdFhqT0tvci85cnorNU9UdmhDUTdBUURqRTV0eko5YWkyUU5lYnF4L00Kc0tRUFZnR0N4NE9aNnI1OGJXOHFyQUQxWktHampFT2RxMnhzYk56eE9EZG5Sd2M4WWRvMDRsLy9sRDZ1ekFIdmtpVjNMR1BKbXRmUAp5T01jelNpNTcrWVdWV1B3Y05zQ2ZVdDRmL3ZteUhCSHhBR1A4M0FCYjBER1VxK0J5eXNIUGs0YU9yTE1jREJoNkVpYzFTaU94RS9LCjRPRTRrSjVUaXg1OUhQZDJxRHZCM3RIVnpXbUtoNXV6S3dtbzBkTU8rVzFWdlBxUWYyOXIyTk9tcUtjdGdlQ2RIMnlKN1d1TE5LVzMKTmNLVUg5c1QvdFcrb0xjdDlJY0RvY09IRmgzait0ZzdUWEYyZDNOeHhkc1JuYS9jdlBsNEROMng1NFkvLzVxMzlQTWd1QU04MUk4bApnTHo1MXhZSVBnVkNXaWs0bEMyV1MrUnd5L2RLZWRIckFFZ3FMaklCaU1Ncm9IT29PempGOFp5ajN0eHViLzROY05VR3QzTkYzZUNICnJvWHN1d204MDJSWlNYMXh4bTVwaGx4TUw1ZG1sb2h6aXdTY3QvaDdFN21IRTNoSGx2SVByT0FmM0M1c3loZFh5dVJDT0F4U3p0cGQKeHFrdjUrNHI1NzBtZ0pxcjVlWUFxcFFMQVlEa0VyNUV5QUlBRXZPTE1BQUIvVXdDRUl1Vlp3NmdmRnJlZGhyUENLQXo4K25uQTJsSAprb3JLM2lJWEplZm5wNUp6ZDVvQnlKUUpBRTMyalNreXF0VUEvVVRKQ3FQbDFDamdIcGtnWENZUGsxYUdTR3NDeGNjQ1JhZjhoZWY4CkJaZDlCYkQyNHlNNjV5czU0eWU4QW1MU2o3L28ya1Q0VjRFM3ZabFhvMmlkYndvZ0NyZVFJYUJNQnBDSS9BeEF1UXhCOW9zQXl0Z2sKeWtvcXlZMnVJQ2RVNXNGVTVXQkpyTTVOck00R2VabUJqQUNhTUJBRTBETURiYW5Nb0phRFR4N1ZCS0JHREVEbHROMTEvSThMT1QvRwowSDZPNWZZdmt2WXVGdmN2RWltU2lrRk1CbEl0TDFldnFBQ0JCbHBkaFZXRHpCazB2clpldGJwR3ZXbVAvdTJHc1ExNzBYVjd3SzErCjh6NEFHbE4wbSt0Tk1UOXZIc1BtUFpxTmRjQk1BeHVydndvblgvYmEzaDJjZmdsYUIrNERieVVXOU1GeVowSHlkM0ZzN2FxSzhlV3cKdVdlaTEyY0pSQThXelpMSmJUMldKUjhRakQ0bS9aZ3lESXM5eitrRE1oQW5CakhYRDFicG1kakN3bXg0NnhYdStYOEFRREJEU3lHQQpUUG9CQWZUQjlBT0MxWDZNK2lrWlgxK09ycFdoSytWUDFsUWxNcS9PNTkzeDV0NFBZTitKWnB4ZVRxbjhWVjRPQU5EN2xPUnR0RzBVClZrYUZnTlVvNGJUSStSMWxMMHdFc3dvZ3JBMm9Ya3l2Rm5NckJWUXhsN3lWVXhQRnVoaExQLzQyVFFyZHcwekpwRUg5Z0wrSklBQkEKYWVRZG4vL20vcmdHVFZ5ZVFMQkJuRjBKRHJiSWVYcVk5bmppMEwrMm9ZTjVxSktNRHVlUEc3ZHpOd3pualkwVW1NYU1Kc1UwcURRcAppcUVjdUxTMGlvcitrS2I4YkYzdnlSall1ZElST3I0M2ZMUTVFdFk1RG9VTXRmdXAybUdUcjdZOUVEM3VQZmJSNXZ0MUs1anI1dG9qCnlNSEQ2OGJRSXMzQUI1WUVNVm5IQkNEVHJiWS9YWHNzWWFnalROc0JnVFhhRmpuYUVhWHJqTkowUmhvNkk4eWo3d2pIOHVSSUNQb28KUTZmTUF3SkFCM05HQnRPMXFseTBmL0xMbWFJZGdyMU40d041cUNHbm9ucUp1d1B5emQ0d3RETVd3dTVOb20wTDE3U0dBWm1wMnNOVgpYWkdxZzFFakI2T1VCeUxSamtCOWU2Q216Ujg5RUl4K25OamZ1ZUpJVWZpdXhSNStucENxQkFSeGRYQ2NUcHJoUnZTQTJ5cmJJWEdKClM5czYydi82MTkralkwTW9xdjdoeDMvcXhrYnYvUHFCQzlHUlFIUjBkc0hqRVR0WUFUTDJBQmxIOXl5N2Y0d002b1ZkNUhEdDV0NWQKWTcxWjJwNGMxTUJxM0xNWUFNaUQ0T1R1Z3JQRE9jMlo0LzdkMzNQSGxWbHd0eThMN2xqR2tqV3ZINjJpc1BmYjdKR21ZR1Zqa09yRApVUFRZNnB6MW5vZzk0Z0xNNTJ6djVJQ2t4azhmUHBZd3VEOXF1Q2xPWFI4KzBCSm15bUJyK1BPMFI4Q3VxUmZUM3dvZjA5Y1J0ZHgzCnFvZWpvNHVMSXdBTGdZUjNKamg0dVJPK0xJdlR0ZnNwMnFJR1crSVVyV0hnd1lyR3lNRlc2MUUwTGVvRGt0NFgxYnNuWVB6UVVzRlcKVHdSeGRpYkIxU1g4SW1ONysvdSsrRkViSjdrTXhPTlgvQ0JBMEczU2p6bUFRSHdFMStjTFB3c1dYTnNzYUtaS3VQSVNTbVVKcFVxRwo2ZWVsQUNxVEdxZUFQUU1RaDBmbThncW9IT3I3bktwSTNrbncvSUErNElvTWREVlBkTVdmZDlPYjgya2kveFJETG1tUVpkZEpjb3RsCjlGSlpicGswVnlvcFpJclpoVUlKVlN6aGd2OUpHREo1U1ptY3M2ZTBxS0cwWUg5eFVYMEpjMjhsZjErTjhOVUFhcTJSdkJwQVVoRmIKd0tHSWVCUVRnSXhid1VNQUFmMjhBa0NlekZPZWpFdHdGSXhhdDVuTTNKbGZrRktRQXdCa2FvTCszd1ZRdExIbGVZSStrcHBnVVhPUQo4R0NBNENod2o3L2dJcXo2Q00vN2lJd1JYdlFXWHdJU3dnQUVGMElVZGdNYitmQ3ZlUE91ZXJNdnoyZmRXTWk0RWtVN3NKRXFUS0ZsCndCNGdadVlyQUpST3o1b0VJS043S004QkpJWUd3Z0JFRStWTUJsQngvbk1BV1Jqb1pYV2dad0NDQnBvQWtORkFteW96S0dYa1NRQUMKMzNVQW9McDZ3VWRGM08vaWFUL0djbm9UeEQyTFJBQkFnMHZrSUVOTGlvZVRTcFJMUzBGR2xwVnBsc0ZTa0JLYkhXWldFQUxSYkt4UgpicWdhMmxDcFdGcyt2S3BNdmJaU3Q3RVduTkZ1cUpzVTNjYmRJSmJuc2VnMzdOR3Vxd1hSYjluemFHWHhnNURjYnYvVUt5RVc3dmtsCkFIMFRWZ1JucXErb2hLTmF5eXQxSytBK0ZhTkxLb0Y3c0ppN1I3L0lDbjFNU3ptYlo5THFQaGg5VFBvQk1jM3dNdWtIcS9SZzlPbTEKVU00cjhqOE5JRXY5WUFEQzlLTmNJUU1BVXEvRUFDUzNxaDkwVGNrb0FOQnFLYnBDOXZPYXlqaldsZm04VHdHQS9EbDN3cGdYbHhYVgp2NTJYdHkwLzlmMmluZTlUUDhpanA4aDV6QVl4dTFuRyswVUF3VTNCNUlJR0dYK1BoRlV0RWxYenFhWGNuRFJPU1R6N1RBTHowSHMwClpnWnRleVo5Unc0ekZlNUl3MGpMWWFabjBYYWxGSHpRZXJnRjFhRWlNZFVlc1hWM3g5dmE0V2pyNTZxNndudisrdDU0VHg0NlVJZ08KRnFKRGxOR0JnbEVGMlRCWVlCaCtXZktzQnUzSk5meGxxK3JhaXBIRDRHSWZxbThOMWJXSGdlY2ZQWmd3MGhhbTZRbzJkQVZybXdOMQpuYkc2WTJzSFQyejhiSGNzZjcyWDExUjdIR0tMd3lPZjMxMnYxK2VpQ3RqY1l6V21xby9oV2ZjUE9CaDVtZ3lNcFdnTkd1a01Bd0hICjRIYW9MUmdjcUR2RFRGRjFoSm95MEJ5ZysvcFg4QXZ1aDN1dHE0YXpScFN3TWNqeUZTY3ltQWFzb0gyYWo2clMvL0IxaHZkcy9CY1YKUHVOZFVmcTJpRGZLV0NmQVdRUjRUOENiQTI1QmdNYkFyZUpBZ3ZaUTFQakhjUTg3RnJXVEExWUZ1cmphMk9BUW9pM1J5ZGJKM3RYZApoVVJ5c1VNYzNBa2VLZHUyWGIxNFVvdHFOSVp4VkkvKytOZHZqeCtzUDM1azkvaVk5b3RmL3dWbmorQ2M3T0M2eG9ndDdBSFNGNDROCmtpMkh3RXpSOWNMMUJlQVEyRUFxZUN2MGZYbm9LSyttUE5vRUlGdEhCL0R0ZWZoakVRQ1FhakRGa2p1V3NXVE42MGYzSlBmSG8wbGoKallIRHpZSEtJeXRQQ1dPQmZsenhVNmJnQ1c0dXRvNEUvSlpvdCtGVDhVTWRNWThPUmZSMFJndzNoMk5SdGtTWVo2ajFoU2hhd3JHbwoybUtldGtRR2VVNXhjM0lndWppNHVVMVVnS2E0T241ZUdtdm9DRmEweHc5M0xGRzJSeW5hSWdhYXd2dWJJcTJtdHkzdWNYdUVvaWxCCjJSU3RQN3gweTdMWnJnUzM2VzV1TnJaSUZsT0FvbU5OVi8va3piN2lMYnpqTGJ2bng3OWswbzl4MmNQbkFQSVYzcGduL0N4TWVPVjkKNFI2dWxGWmFXbEJlU24xOUFBbUVGQzdzL2lIek9MbUZiTm83N0xvSXdibjV3cnZBVlFIOHk3NkNhOTZDSzhIYzZ6N2NlL0dpMHl5WgpiTCtFWEMyaGxaYkFpZlNWTWtxZEpMOWVVbEFqSzZxVzArcExLTTJsT2Z1SzJYWEZ0THJ5d3ZxeVFuQm1ieWx6ZnpWL1Q5MnJoc0NBCmZxd0NxRVltTUFGSUp1WllCUkE0Q2ZURFpWRUFnQW9aTkNzQVlwMll6Ymd5bjM0K2d0cXduc3pkbmtjR0FOcFJsSkZLelFZQXlxRG0KbVFNSTlnQk5kczh2QVNoS3hvSDZrWmFFU2VxQ2hhMUIvR01CdkF2KzNHNGYzalVnRzZnZjhTY3dvdlBlNG01djBRME1RTVpBL1hqegpMaS9nQVBwY0JGK2lKNzE3QWYxeU5QM2dKcG9vbFo2WlNVdEpvNmYvV3dBcWZBMEE1UmdCUkltdnlMVTBFSWhsV3pRV013QTkwNDh4CkdJQXFpcWx3RkF4ODEwc21BTlJjUnEydEZ4eWhjdjhSVC90WExMc25YZ1N1bXYzUVFOTEJSVElReFdMSW9KRWxKYXFrVXBDUkZlVlkKVEF3YVdRTUxRc0E5bXZYVnVyVlZvK3RxUmpmdkhsNWYyYitoWXZEdFdzMzZGL0xjT2tibFdNbnFXdjJhdXZFTjlWQlhtM2YvYTRYNAppdmZPN3JETXllNzVKUUFOSjhrTnk4dFI0eUNYYWpsMEcxemhjRW1WSllEMHh2M2JyZXBuMG1yTzVqSFJ4MXcvL2JHVFI3NU1RMTJBClBsaE0rbmtjd3dXeGRNOS9FRUQ5UzJXS3BPY0FVcTNBQUNUWHJpN1dyeTQyQTFBeHBoOTBiYWxoWFJrR29CL1hWRVd6SVlBV2NqNzMKNDl3TlpYVXZwZTE5dTRBTUFQUUJkZGQ3UmU4RG9FaTQ5RmNEQ0dzRGFpdVhtdHFBOWtwNDFVSkpEWjlhd1UzTDVrZ1NPU2NXTXp1MgowZ3JUcVIra1U3Y0JBR1ZRNGZnWEFGQTJJeVc5YUFlbmxJbU9vVGV2SGJPM0lSaUhGSEJMQTBuYUEySDlIMFpyenk0ZlByRm80Rmo4CjBLbkZpak5MQnM4czZUdVpxRHBoUFNNbjRxeEdlemhXM1JHaGFRNDFOSWVOdFVZWVdzSEZIaTdmTjl3ZUFWQ2lPeFNpYnc5Q3UrSkgKajJ5NEt3Nm1KQ0JUN2UyZEVBVHhzTGR6ZEo3dWl2djI4MlJVeDlNcVVpYjd3eUxQdTM4VVdVT1BkaGphd2d6dDRhTmRrV3FqZ1RSZAo0RklYWXVpTXdCWVB0SXltS1dqdzNobzRCYjAvZCt4eHVtWWtaM0FvZmF6L3BRQWE3VThkSDZib0J1aG8zeTZWaGhZVE11dFdxWmZoCm83aEpGYVpmekhCbnNQcGdtUDVRaE9FZ3VCdG02QWhGdXlMUVE5SDZFOUcvcllrUXZ6TS9mS1lURGtGczdSd2MzSnpzcGppNjR4R0MKQTF4YzNjWE5OU1V6OVhlLy8zSjhmQng4QjRmNkIvN3l1OC9PSDZvL1ZDTStVRkh4U2RkSHFNRncrKzVsdktNTmdlaUlUWU0vZVhTbApWcEdoK0RHbC84ZjNoMzdlYVQwL3BTb2Zwd3c5emxJKzNxWjduRGI4YzVwR1NSVnhmZUgzNUJtQXZMMW45RHhob09vc3RlSi92QUxVCjkxOGZETzMzQS80WWJ3MTYzTGxoamhlQ0o5bTQ0cVpQeGVOYzNXd1JIR0g3TWkvMVIxSGEvYUZEWFlIS2xpQ01OZWJXR1c2TEJBRjgKTWNXOE1xUm9qLzVuWS9EMDZRQ1U5Z1FQQjNkM2QyZG5vanZKaWVDQmUxQzNGSHhUSGpkRlBXbE43RzhONisrTTdHMEgwSWsycGE4OQp4cFQrcHVqSExURlBHeE5IV3VKL2FvK2VHK0xxNEk2em5VSzBkMEJhVDEwQUFLSTFYUFJrMy9TVjNGOG91aE1rN3NiMFl3a2dQOEd0CithSXZBSUMyQ1hjTHBVWGxwZVIvRTBEc0hES0x2b1ZUSHlxNDZDVzZod0hJaDkvdHk3MGN6cm51eS9zMFRueUdKWlh2RjlNcUphelMKOHFMcVl1NXVHYk5CV3RRa0krK1ZNeXBMaGVYbG9wb3libU14czY2TVVWWEpySzVpMVpiU0FZRDJWbkZxcW95WHd0Y0RVR09sZEgrNQp4Q3FBaE54QzJBREVMM29qQU0xaWRNK2xYd3FudHF3bDg3Zm5VVXdBZ2dzQ1dRR1FqQTRTSjJmRXlWbHdocGVVRlN2bGdDUUlLUW1TCndqZ1FHVFZhaHBWOHBHR3lFbjlKcTUrNHkwOTR6RWR3MXB0M2NTSC9zaGQ0QndYbmZmaVhRQ0IzakpQZVFTQ0dCT2Q4NFlqWVphenEKc3dEOGc4NjhNbzl4ZFM3OWloZmo0ano2TlcvR3hUaGEreFlxSjlXNGFWa0dNeitYbFFtU1kwd3VPd3ZjR2dHVWxtWUVVRFlqTDU5TgpwZ0lBOFFyWmZHd3oxQW45WUQxQWJIRU9TNVRORkdiUytWa0ZmTGdWQm9XVG1jTE5XQy9QU2F3cWlLK2t4SlZSNHN1TDRzc0w0eXNLCkVpcnpUUXd5MW9FbWhzT015UVJaVlBOY1B5Qnh1eWNTWDUrOW9US3pvSlJjQ1ZlQ1ptRVZvUDNsN0QxVm5NWnllbDBkdTAzSytWc0MKK2NkSXpzL1Jva2Z4d3NlTE9YMkpJcEQrUldMRll1blFFaGtJSU1WSWtoeGprSHBwMmNpeWlkNGcyQ0s5Y21Kb0RFUzlwdG84MmwrSwpibTBOaU9udStObzZ1RUR6aWlyOXlpcHdkMlJkOWZlTGhBOThzaTRHSmw4TVRya2NtbllSSkhqWHhjQ2RWNEoyZFFjbFh3dE52UkMwCjgzeDQycVdvelBPQnU2N08zLzUxVUw1eWFiRnBxQXNiN1RJRjYra3g3K3pCb2t5VW16SXhud3VMdFYxTHdWM3pwWnhmUFo4THk1Tm8KcnRWWU5SQ3d6cHNDNkhHQ3dKUW5SdmVZWWhWQTVoM1FmVXRoK3BkSlFiQU9hTmo5czZKRXRhSkV1NkpZdDdMRXNMcHNiRlVKeU9ocQpDQ0RqeUZjcHVxRU0zVml1MjFDSmJoQ2p5MW4zdHV5YnhmOWRNUDhtTUpBL0Z4am9laHp0NkFheTZOMkNIVnVwMjdkUzBsTUtVMW04CjVEMGllb3VNMDFuTTc2d1FkZFlXZ3dBSkhhMHN4Z0NFRllGTUFHcVVDNXJGUmVWU2JybUV1WnVmSjJDeDNtVldiNlNYSnRQejBtbkoKR2ZRVVFKK0pDaEI5SWdWRmFVOSsvdVp4MzZNcE16M2NuQndKaE9telNNam5kVW5vZ2NDeHRxRHhsb2l4cHBqUnhtaDlVNmlteVUvYgo1anZhRkdJMWhzWmdxOUUwQjBOZUhJeFZIZ3dmUEJBNDNCV2c3Z1RvaVVaYjQ5Q1dJUFJRc09aUTRnVmE0UHVoTG00NFc4UU9oM08yCm0rSkNKRGtnUklMSFhFL2s1eC9lSFIvSUd4MkNFOUNzQmgzY0NYNVYyNXVCOXNKMkhKVXlIVlhtYS8vd0h0cmdnN2FGb0I4djFYVkcKb1VlaTBmWmc5RWc4MmhhRGZoZ3gzaFdDSGdvZlB4Q0tIbzBHdDZPZHdlalJLSEJTM2Jsa3RMZEFPNUtDQXZkb01rY1Z5Zm8rbXVVcgpUcnh1enc2NGV0QlF3WkJpSjZvdnJLYk8zWnZpOC9QUjVZTnRVUU90a2VEMjhiNGc4RWQ3dWo5NHNEV3l2em44YVhORVQwc2tTRzlyCmxDbmc3dmRONFk5YW9nYmI0bm9iSWgvdGozcmNrZlRuL1RIbjJiTzJMUGFkUmtMc0VjQWRtMWtrKzVsRVc2SWpZdWNBVHVBQ0E4SkUKQXZHM2YvMExPcVpIRGVyK243NjkxLzNKNmNhcTQ3dExqdFZJVCs4dE83YS84dHhIQjFIVTBIMzdOdUtFT0xuaUNFUm5WMGZrdW5DaAo1cU5sdzNzaTBjWW9kUXRza0xJTWdLT3l6Yi8vVUp5eU14cnFvZFZQZHlTT3ZXbUtyUTF1bW91VE0vQVVEamRuZ2NPVDIrK00vSFhuCnlGK1RSeDd2VlBXa3FBZHl0RU1VamJKSU8weUdiZStEeG8xVSt6TGhYaG05R2NiMUVxR0VOQU53QWlDSXBpL05QS3ErdE1IZUhFTlAKcnU2SEZQMlR6T0dobktmOW1VUDllYnJIZWIwZkx0ZnVqZFMxaGlwUExDZXY5N1p4Y0NNNTQ0aHVCRmNTem5XcUMyTGorUDZpK1QybgpOeWpiNXFrYkkwYzZsZzIxeGxpTm9qbk9ha2E3NXQrcldPNkpkeUNTRm9DUDNEUVhlL0R4SStCbkFBYmRyazFRZC9vTXRZWDN0RVlwCkdxS0hHcUlmdHZ2MnRvYUI5TFdGZzJESFBTMmhJSSthRnFsYUZ3L3REUnc0dU9oS3hkcVpqZ2ljVHVidU9IWG1ndThmZnZmblhtV00KN041QzlxMEk4U2V6Slo4RzhlLzZDdTc0OE0wV2dPWmNuOHU5N2lXNDVTdTg0U1A4YkluNGRKNUVXQzdOcUpJWFZzaVpWU1ZrakQ3UApBQVRwOHd4QXRISVpBKzRETDZhTHhGU0JvQWgyUVBNb0FnNDVsY2RlS21nSkV0endFMzRXSUx3Q0x0UGVndnYrNHN2emhaL09FejZJCkVGMStWN2FmQTY1dXhUa3RzcHppVW01bEJiTzJnbDVmeXFpWDgvYklCZlVsN05wU1NuMEZhM2M1RXdRd2FFOFpYQkI0WHdWN2Z5VUgKQUtpcGl0ZGNMWGh1b0luV240a0dvSWttNkdxSnNRSWtxaXNWVjhzRlpSSmVzWmdybDNERllqYVB6MlJ6YUVBL1VqN0ZxQitLc1FHSQp3dVZTUVdqTVBES0xDZlJEb1Jia01vcHk2UG52VVFYaHRJTmVyQk96bVJkbU1hOTQwNDhtVUN1MlVLaTd5RG5wQmZtcFJia2dhVlR3CkR4M3NnOFlNQkR5RXhFaUxUSW1XVUV5Smt6SmpKWXhvTVN0Q3dndVZTRU1sVmNIaVBVSGlScWdmMFdGZndYRnYvdG1GL0l2R25QY1MKbnNYMEF3Tkh3Y3hpMU05QzdpVXY5cVg1ekV2ekdKY0JnRUFBZ09ZenJwc0RDSzREOUNZQWVyWVhtSFVBd1hXK3JRSElxSjhKQU1WWApUQzRGV1JvSW15Qm1hU0FNUUJVdkFxaStrdDFZenF5dFpZRnIwcCtUSUlCK2loSUNBUDI4bU4yYklNUUFOTEJZWWpJUWlHcHhDVllOCndnYkZzQlpwRVBXcXlrblJySzU2UmJTcllIU3JxMDNCenFpV2wrdFdWR0pMOVdoV1ZtclcxZ3l1cm5pNFJISS9KT2QyWVBwVi8rVEwKQWNsd2JueGsrcVZ3U0o5TFFic3VCYVVBK2x6eTMzVW5LT08vbytuZ0N4NWJOdEhqUEVrLzVnQXkxNDg1Z0Y3UVQ0TE1VajlZSnEzbQpiQ21lLzE4QUJDdEF6d0JrYkFDU0taYS9BQ0JzMnBlNWZ0QjFSdjFBQUpVYU5wUkRBSzNnWEhtN2NTYnZ5d0RlOVhuY3UvN2N6L3k0CnQrSm94OVlYeW41VnNBc0RVREk1aGNGTDJTMmlOY25ZSFhKZVY3bW9xN2E0b3dZdWhQZ0tBRFZKcVpWU1hvVVlBa2pNWm14bmxMOUYKRjZkU3N3Q0FNUDFNQWxCcXpnZjM3MTB4akkxdTJyTGUwUWJCNFZ4eENOSktEaGs3RVQ4RXQ5V01WTGZHcUZ2ak5CMEo2dlpZN2NGNApUWHVVMVdnN29xMUczN1pJMnh4dGFJcEFXNk9CUDhiQUk3dUNOUWY4dEllREI0K3RPOFpmc3RpUENGN1J3YzRlYjJjM2cwUWcyaVB6ClhGeG5FWjF3aUZPUXI5TndmeXFxS0JpMWFEa3l4VEM0UzZYTUhCbksxU255VklyMGdlR1VzWkc4d2QrOTlkODFZZmVsQVJjRi90ZUwKSTI0WGgzMVJGbkdkNTNkUEhuVk5GUEJaUmZSMVNkQU5hZkJOV2NqZDBvZzdKZUZYSllGL3JRblNmcGlnK25hSFFaV0I5cVREcFJRSAprOUZlbW1ZNHkycDBJNWxhWlRaY25uZ2tGVFZrbnovNTdod2lFam9INXp1WDRPT0o5NXRIREZuZzZqdmJLV0F1MGQrVEVEaVA1RC8vCmVjQ3Znc2Q0ejNGYU9Cdm41elhWYXlaeHdReWk3eXpuaFROZDVzNXljM2NqMnRoQit1Q2Q3TnluZUxpNnV0dmJnUk9JaXdzcFlWSGkKb1ErUFBIbnlCQjBmUTdXcWg5OThmZnZNc1pQTnV6K3Fyd0FBT3IydjRwUDlGZWVBaFBaWGZuS2tDd0xvNWkwOGdyZ1NTZTdFYVRNSQp0cjh1OWpWOEZLTnJEZGUxQklIdnB0Vm9tbUtVelNHOWJiR3FsbGhOV3p6NEFPaVBybUJ0bVlmWTJydTc0RHdJVGxQdzdzRlRIUi92CmpoMXVpdFBzait2dkNPOC9GTk4vS3FuM3l0cmVlNXNIdi9xVjZwdXR1bjl0RytyTkdCbkkxZ3psR1pSa0VOMVFQdHdmWXlCblVKRU4KQW9pakdzeFI5V2VyZXpMVlR6SkFGQU41SXoxd3p5OU5iOVpBYjdwYWtULzZVODdqVzJzZTdvdlVkY1NqUjRMUGlHSm1PQ0pUSE93SgpibzVFWjZjWlRxNXVCQUlCc1VsYjRxazR2UUU5Rm9CMmhlbmFRMGFQaEZ2UDRRaXIwWjVjZWxxOHhNMGVjWEJ5ZG5IRlQzTkQzRWdJCm5randkRVQrc0RzTy9UaDJyQ3R1NUVBOGVtZ0oyclZJY3lSYWZ6QU9pK0ZRdk9sWWR5QjI1R0NVb1ROQzN4azhjbUoxNmRZNTArMlIKNlZObUl6YkkyKzk4b0RXTVhQejY1eUQrZFcvZTNXREoxWVd5ZXdIOE82OEFrTC93N2dyeDhRTHd0MWlXV1NVdit2Y0F4T01VcFBENApTY0sySU1GTkU0QjhCZmNXU3E0c0VGeno0ZDBLNVhVdkZ4eE5sdFFKU3ppN3kvTHFTdGwxSmR6YUVrWk5hVUZOV1daZFpWNWRPYk9tClZMTGJERUM3alh0aS9uc0FxaTBSQVFDVlMva21BUEY1VEJhYktoTThCNURBQ0NBT3B3amtwUUJpbmdRQW1zbTQ3RTAvRmt1dDNsaEkKMzBuT1N5K0ErckVPSUhQMFJFcWZKMElLMENNTkZNaDllZVcrdkQwKy9IWWZ3V0VmL3NmZXdvKzhvWDQrd2NvL0dJQVdDczQrcS9RWQo2MERQOU9NbnV1VE51NHpwWng3ajRsejZCUUNnK2N4dUw5YTFCY3hMQUVCK2pFdHg5RllBb0hUcWF3RW9oNW4vK2dBaUN6TE5BYlNvCm1weFFoZWtIQWlpdVBCL2tsd3cwTVJ4bWFhQjFGZ0JxTEdQdnFXUTNWYkRxYXVBZUJWK3RLZncra3ZrakFGQ3M0S2RGSE95eWF1d0gKZ2dZYVhDSUZEQUlaV1ZROGtTVlFRdWJ0UVpPaVhWNEJBaEh6OG1Eb3dZS2RBVThGZmhjQWtINTVKWnl1dGFKU3Y2NFdNS2hudWV6YgpHT2FEZ016cjNqc3YrZXdBM0xrUXNPTmN3UFpMdmp1dkJhYmVEVXgvRUpqMTkyaUdjbWt4MEk4K1R2cWE3akYxTjA5eUQ2UVAxdU5zCnZvR1hjU0VmOHpiblNlVWYwemlYWlN6cDgvOENnQ2FHd0o3clIycWEvd1gwbzE1WmpBRm9kSFVacGg5czhPdForYWNVWkhSakJicFIKZ3E0V0hQNmdZeGIzQzMvdWpma2NDQ0IvM3QwWXhzbDFSV1h2a05NQWdMWVZwZ0VBVWRqSjFTSnFneEZBbldYQ3pobzVCcUREbFJORApZTmdvR0FhZzVoSVJOSkNVQVFCVUtXSFZDL0psYkdvR1U3eU54c29zTWs3N3Npai9nQ1Rudjd0L2Y4M282SGhOZFRtNDZMcE5uV1p2CmcreGNNbDF6SkhDb1k2SDJnTTlvbDcraEhTUlEzeHBzYUErMzdHSjVkY2Jia2d4dE1ZYU9VQkJZK09sYWdoNUlOTFJIdGpNaTF3YlkKa213UXhJYUV1TTdBVFo5aTU0QUFDVTBsNFYxdGJHYTZFZ0NLb2lLbkRBK21Hd2J6ZE1OWlkvMlpWZ093TXRhZmJSZ3NHQWRPZ2pQWQpNOUJoc3VhTExWczNoVHM1SUhpU0hkR05aR2VQNEIwUlYxY0hQTUhXaWVBQUxwKzI5Z2o0K2R3Qlordm9CRGZpQTc3WWwrcXBQUlRWCmQyZTVYcG1ES25JMGcyVFZTTEtoSjkveUZiR005TzNROWFVWm51U2h3N25qaWgzS0oxS3ZtUTRJNGtWd2NzYmpTRVM4QzRpOUxRN2MKT3Ryam5SeUplRHNjd2Q2SjZJQW5PUktjY1VRczRKam80RUJ3c0NVNDJNQ3YxdEdHNU9RQUVFZ2lPRHU2dU9HSUxnNk80Qkp2NytUcwovdDcyWktDWmNkU0FqbW9NYXNXM2Yvek50Wk5IampmV0h0OWRkcUd4NXRMK3FuT3RkZWVhYWk0MTExNXFyVHZSVUhYQldBRTZmL2tLCkVRQ0k0T0xxUEhzR3lmRlBOU0c2ZzZINmpzaWgxZ2hWVzR6VjZKb1RSanVpaGxxakRFMlIrdVlZVFV1RS9zTlY5QTBBUUhBS0dBbHYKU3lUaS9UMlJuNXFEaGc4RXFWcjhsUHRqbEkxeHc2MEppcmFFM3Rhb3A4MGhUMXNDKzFvRG5uNFkxWHM4dnYvQzBvRWJhd1lmYkZIOAo2UVBsUDVKVlAyWU05ZWNNRCtTT0tQSkJsSU41NEJnNzB6ZVEyL3MwZlhnd3U2OC9vNmMzYld5UVBQWmZPMzQrRksxdVRlaHBuUFg0ClFNSVNQM2VBWkU4WE94ZWlvN01iem9ORWNuWnhBdS9nMHJBWmJZeTQ0MFdCSjZsUkg5R2lUMUw5M2loSEdSRzBkd09jQ1FqQkZlL20KZ1p2aWpMZzYyeERkQ0RQZGNWVnB3YWVMZ2c0WFJuVlFvNC9Sb3o0c2lPaWlSWDlZRkFseW1CcGxIbkRtQUMzK01EWG1DRDJ5ZzVlMApPSVFJUGxyNHFkTVJCNlIrZCswWXF1Y2QvL1U4MnZrRmdrL2hCbHZTMjc2Q1R3R0F2SGxRUHlCd0FXak85WG04R3dCQTNxSWJvYUliCkc4VUhhVEpPUlhIV2F3S29XRXJEQU1UblV6QUFjVGlGTzNtU1JmeURRYUpiZnNKN1dKc0tlTjM1NG1zK3dzdUJ2TXNCbkJ2QjNPdEwKaEtlMnkrdG9aYXlxa3N5YWtrSndwWU1HS2lQWFZoVFVsTk9xeXRtQVFYVkdBR0dwci9oM0FMUy9YRnhYUEFFZ1dBU1M4cVNpRndBawo1cjhBSURhYjhqSUF6V01CQUoyZnliam9SZnM0c21qUG1rTCtWbklCQUZBS0pjY0VJTk1vR0FSUXBJUmhEQ3RTeW8rU0NvRjd3aVd5CmNFbXhIMyt2Rjd2ZWsxRS9tOVk0aDlrMWwvUHhYTzRuODNnWEFYMEFkNHp1dVR3QklIQlg4SW1QNEFLTXFRNzBERU5ZeHcrbUgwOGEKdUwwMG4za0ZBR2doQXh4MEF3QWwwRnJmTHNJQWxKckp6UHRGQUJWd0NrMEFNclkvdnhtQUVpcW9DUlVVQ0tBeXNwbUJqR05oenlSawpQaHhtYWdhYVpLQzFWWmw1WmdDQ1BVRFBBTFNubXRWY3lybi9OdVh2a2JUdm8zZ1BZL2cvSkxJZkdTKzA1Z2JDWXFxVW1BdzBNU2kyCkJFYVRWRFlwc1AvR1dqQWVnUURpZ0pqdVFoV0JBMEFmczFVS3RVbGw2Tm9hemNyeXZpVHA5d21jdjBSVHZ3b3YrSFZvN2hjaG1YK0kKTEFSM3djbStKUkxOMHBMUnBXV0d4V1g2aEdMem9TNXorcGdBWno3bUJRcy9pUklzcGczYnNVemF0WFNTZXl6MVkwbWNWK2MvQ0tEbgpEVUJMSlpoK25zLy9lcVlmT1A2MXF0aTZmamFYZ1l4dnJFUTNTYlhySkpYSlIyZHo3dnR5Ym5weFAvUGozL1BuZmhwTlA3dUdXdmNXCkpSc0FhQ2NsZFZkQmNpNXpaN21nY0orTTFWYk02eWdWd0cxUWErQmVZSzhBRU5CU3RaUmZMWVlBS3VWUUtBeDJKcFdjVTdUVlZQNHgKMFNmUG1BemFCMXdCVXpPcy9jMkRlelkyY0ZkVXZKTzk5M1RIZ2JZbCtpTXJWWjB4cXRhdzBZNkk4WTdZOGZaRnVzWUVyRkgzOWRQYgpNUTljZE5FRDRXaW4zK2pSd084NzQvZW5CeWZOSUFIckVHM3RwcnE0d0tWbFlKTUxNbVBXMUszYmt2T0w4dkI0SE43VkRuSEVyVjdqCk82cktRMVYwZENnWFZSVmFqNUlDSGpBNlFodFhGNkhhQW5Ra0d4MG9BRmZjalFrTGdhSEFaWkxvU0pydTdPSGg2T1RoaENNNU9yb1QKWFRGNVlBY2VlQmQzSjJjbnhINXI3TlN4dzRucWMvSGpmZG5vTUhobWptNDhkM3lZUFBubFRESGtHbFFab3lxNlJrblZETzFDOVl6MApaRS9FbHVSQmRIQjFzcDBLbnRvZWJrUktzRU53dG5CUlpoY2NZalh1T0tjcFJMdzd5UW53QWdROGttaURBTFVndG5ZQWgzNEw1dkZZCnpGOS8rZFU0Q3Y0ejlELzY3dmUzTHA3cDNOOVZMVDFXWDNKaWQvR0YvZVczT3ZaYzJsdHlwV1B2eFpZNkRFQ25tMnU3VDMyRWpodU8KblR6bGlDQjRON3dkd1cybWgrTjNqYkdhMWlCZFM4eFFXN3ltSmRCcVZBMFI0KzBCNmxaL3RObFAyeENvYXc5Qmp5MW5iNXBoNjRoMwpKZGtSQ0xaMkRyWitNNUdleG5CZGF5aTZQMFRmR3F0cmlkTTB4NnFibzFSTmthcW1jRTFMcEs0dFN0TVVBU2Z3TjRYMU40YjBOQVUvCmFRbnA2WXpvT3hqOStIUkN6OFdsZ3pmWERqMTRTL25IRDlUZkptdC95Z0xRSEIyazZQdkp1aUd5Y2poWHB5elUvVFB0NlpuRmp4dmgKYUtuK1ZBanpIVzhDNHVibzdFQjB3VTEzeER1NzJucUFkOWpGenM3WjNnNlBlTGpZT2lHSW95MmdJdDdlZ2ZDUzRLMW1Ob0xNSU5nNApPQ0lrTjFkM054ZndnWEYxZGlHU1hCQ1Nuek5oaWd0aTcyanZpdGc2T1RqZ0FHbnNIRHdjYkltT2RpUVFuTDJ6ZWV4eEpEc2JPRXdKClBzeVFzVk5uT0hxNE9VOGovT0YzRC9yVTJzMTFOeGR3NFFUNE9hSUh3WUtyQy9pdy9HTmM4Zm5aRGhoR0FDMFEzbDRvdmhFclBMOU4KM013QnVDbk9yaTZtVnNxWWxjV0Zyd0JRbVpRT0Z3RVMwWVNpSWhPQW1CenlWbTVwQXY5WWdPaU9yL2lPditpcW43RGJUM2dYVnBoRQpWLzNGY0Q3YUF0NzlJTjZOUk9IaE5iTGR1Vkk2bzdSSVhrMnRyV0RDUzU2Y1hWMUNxNmtvd0FCa01oQUFFTGdJWWdBeXRnRk5CcEN4Cis4YzZnT0JlWUJLK2NVTjRua3pNQVFCaXMxNEFrRkUvaFVBL1RGYmh5d0YwR2dCb0Z1UDhQT3FKa0tLV3BZWHlkOG5VTkhJMkFCREkKSkFDQkFBQ0pvSGpFSldIaTZsRFJuaUJoa3orM3laZlZNcU9vYzFwaHAzdEJoMGZCd2FsRkg4MWtuWjdGUFQrYmQyRSsvOElDM29YbgorakdXZjd5RjU3ejU1d0dBc0RFdjA3RFhBZzUwejdOY0FqRldnR0Fua0RmejBrTG1OVC9HaFVSNjJ6czBkam8xSlp2MkN3Q0M2MFEvCkF4Q1RUM2sxZ0pqQ0hLc0FTcXdzZWc0Z280R01ZMkZZUDlBRWd4S3I4cDhaNklVSllvbTFPZkYxRThFQVZGWU1BYlM3bUlFMVFRUDgKTmxkdzkxWkJESFh2b3Y0dGl2eVBhUGJQMGJ4L0pyQWZ4dkZBc0tzcE1GRHZZckZ4ZXJ4NEtGRUdNcnhJRHFKY1BHRWdFQXhBNXNFQQpwRjc2MGxnV2piRHpwaWZFVm1xRzdja0p4WnA0dVc1eHNXNTVtWFpGMmNpS1VxeEVvVmxWQnEvWlNkSUorb0RmbFNBSHlvSHdBdUpaClhQSzhYbVZ5enlLcGVVenVVU1NLemZPTDdqRnZjRGFmMW01Sm5GZm5Qd1VnVXdkMGY1SzBQMmtDUUJQdHovQzloZTNQc1B5elVqNVoKUDRBK215QjlqQUhIRmVobTJkQkdlV0hXSjU3Y2V6N2N1ejY4ei8zNG4vcnh2b2hrWGxwSjM3K2xLSDlyMFE0TVFGbU1uVEorZnIyVQowU3JuZGhienV5cWtHSUFPV1FBSW13bHZuQXpQcTVQeGFxVE0zVUpLSlpmQ1pWRUthRms1UlI5WTFVOHUrQ3RKZXk4ekwvM1AvL1ZICmxhby9NTnpYeGc1eGR5YloyU0lQYU5NTVIxYWdSeFBSUXlIb2tXQzAweDg5SElWMlJhSUhYNUpEVWRaekxON3dVY2pna2VBdnF5TmwKYi91SFRuZUR3em5PdHROSmhDa2tlSkczdFVYQ3cwT3pNL051WHIyTmpxRUhqaDRDbDFnYlBCVEFXMGtMRkw5ZmI3aS9aZmp1S3NWbgpxNjFHOWRsNjFmMHRQWGZYOTl4Zk0vVGxtcUc3eTlTMzEzMS9OTVp2SG82SVIxemRYV3p0Y0VBUzlvQVVOb2c5M2dHdUUyZ1BTejdnCnJvTWp1UExaVEp2cTV1aGdzOUROOForNzR6U2RRVU0zVmd6ZlhqM3k2VnRQZjcxS2VXL2w0UDNWVnFOOHNGbng2YkxoejlmMjMzOUgKL2VWR3cxZXI5L0xuSVhZSWdVQWd1VGk3dUxuT21lczVhNjduVE04NXM3M21UWjA5YytyVXFSNGVIbkNTa2JNemtVZ2tQUC9QRm9kRAo3SjBRQnp4aTZ3aXV0NGlucDBkU1lzUmJiNjA5ME5idzlQdS9vYU5hVkRQOGp6Lys5dkxIQjQ3dUx6dGFJVHBSS3o5ZFgzcXBwZnBHClIzMTNhL1cxdHBvYkhYVVlnQzRiYzZhcDlzWW54d0dBdWo0ODdHaUg0TjN0YlJ3UjM5bjJ2WjN4b3gwQm84MUIydFlnZFVlRTFmUzEKeGcxM0JTbzZnL1Nkd2YzTkljT0hvbFRIa2lqcjNCQmJHeElCOFFCU3d6c0h6eUgxTmEvUU5pNUJHMWZDR1hidElTRHE5bEJkZXdUMApTbXUwdGpsYTJSdyswaEtoYm90U0dUUFNHcWxzZ2YzSW8vV2hocjFoK3NZSThJRCsxckNuSGVHUEQwWStPaHo5NUh4UzM3VlZpZ2ViClZGKy9qMzZiTW5Kci9jOE5BWnFHU00ySEFkM3k2Sm11VSsxc1hJbXVDR0g2MUtrdUh1Q1RNNU9BbjRKM211cE9jSE56SXBFSVRpUWkKem8zbzRPN3E0a0t5SHVOeTJGYUNCOThURHcvd1JLN2dtK0lFOUFQN29GMWRjTk9jQ0M2SWk0Y2RjUmJCYmhyT2ViWVRhWVlqNGtwdwptdUtBbitvSVFwaUdNNCtUbXdmUjFXWG16SmxFZ3B1cjZ3eVBLVFBBUjI1TjRtS05ldWptWDU0R2k3cDlSTGNYeXU3UGxmd21pSHZKCnl3Z2d1Q3doRjI0RmFBTFFRdEdkQmRJYnk4UW5zaVExSWptbG9pUUhpa2ZPcWl5WmFIOStmUUJSdUlYdmNXdGkrV2Q5eFovNlNHOU4KQUVoME81UjMyMTk0MDB0Nlk3N2tocmZ3bGovdnBuRkp2L09MK0I5dmtEUmxsa2o0WlpUSzB2eTZrb0xhVWtwTlJWRk5PYU8yREFaagpFQVlnekVBTlZkeW1ha0Z6amJDbFZ0UmFKMjZ0azhJODY0QzJDcUJLS1N3Q2xVcGhFelFHSUtOKzRIUXdJZmpLdVJCQVFEOE1KdmxsCkFKckxPT1BKUER1TGNXNE83WXdmNVdBaXVlWnRNaU8xTURPNUVCb290U2gzTW9EQ0pQVkc5elFFQ3RwOWVRY1hzSTdNb1I2ZFVYREUKTGVjajEreWp6dUEyNzJNUHlza1p6Rk16dWFkbjgwL1A1MThDQmdMeEVoajFZd3dBMEVJZU5KQlowODhWT096RmhGVWZyUEJqb284NQpnQUtZRnhQcExRQkFHYjhFb0hSR2hnbEFOQURZMXdCUW9SRHVCbThDME9LYXdzUnE2cUlxcXNsQTVua0dvQWtHUVFOaGVXR1ZvT2NHCldsMlZrVk5hTUFsQSs4c2hnUFpYc2hvcU9KL2swUDhjbWZ1M2FOWlBVZHkveDdOK2l1T0NtQXlFbFlLTTFTRHB3T0tKMldFZ3dFQlkKTUhCZ01XY1FWaCt5akdYRmFPSzNHSC83aElHV3dnNGVBS0RSSmVWalNjWlZmQmJKUnhLbElPb0VxU0ZSTnBvb0EyY0FqUFNMaXpVSgpVbFc4REJKbmNUR2N0dmFTU3M4azkwd0NrTWs5cG1EY21hU2ZQZ3YzL0h2NmVmS2ZCbENmRVVBbS9VQUFMWmVPTEpkTmxIOVd5Ykh5CnovanEwckYxV08ybkJPcG5TN2t4WlRCd0NFeitkSFBwTytTcjgzbWYrdkErOCtWKzdpZTQ0OHYvZFNpamV4bTlkUk90Q0FBb3VTZ2wKbVp5U1J0MGg0T2JVaUdrQVFIQVVyRndDQU5SVkxaOEVJR3hiZUt3SUJBQzBSOHF0bFRCclJkUXFYcEdZWFVCbHBHZlJkb0MvZlNEbQorc0VBbEVQYnVqTnQrNGNIMmxCVVRlR3hnQldtRWZIQUJhSlZqdGRsU1hmTEUrK1doSDllSG5wVDdQTlpTZGk5NHZDN1pUNVdjN3RrCm9kWGM0NGQzWm9XOUd6UGJsV2hyN09tMUp4QWRYWEVPT0R0Ykd4c2tJTUJyNzk3OWlvSFJNUU1zY2FEb2NGZGJPM2lVSzhuT3hkWXgKUGM1cjhFUzRzamxFMlJZODBoUm9OY01OL3RxbWNHVkR5R0JMb0xvalVOOFlnSGJHLzFRVE1uY0tEdnc0RHE1bkxpVG5qV3RXdnJWdQp4YWFOYTVOV0xGKzdidG42RFN1V3IwamN1SEhsdXRWSjdpN2dKM3RraW91VGd3M3lZV0U0Q3RjS0NnS3ZxR3NNVVRTRjZCdjlMRjhSCmkzSnY3T2llZ0xGOUM3WDdnZ3g3Z2tiYmc5dnl2T3hzY1ZNSmVJQzN4TWp3Uno5OHAxTDA5eno2NmVFUDN6MTUvTlBmL3ZYM3YvN2oKbXovKzk1OSs5L1h2SDN6MTVXZGZmbjczaTN0M1B2LzAxcjNQYjMvMnhlMzc5Mjk4ZXVmcTNUdjNmdk83ZnozdTBhR29BUjNUb3VoMwpqNTUyWDdyNDRkN3FBMlc4d3hYOEk5WGlpN3RMYmpUVlhHdXE3bTZ1dVgxZzM3WE8rZ3ZOVlpkYWF5NjI3Z1lBdXQ2K0J3RG81UDZxCm0yY2dnTnJhT3gyQk5nRUVIWkFsd2U0L2R5UnBQMTZxUDdKazlIZ0NlaWpXYWthUHJody9FcUU3SEk1K0dLVS9FRDkrTEdIOGNIVGQKQng3QWtSNHVEaDZ1VGdDT0MrY2dqdzVFRFI0T0dXb1BIRDRRTnRRQkFCUUVhMHR0d2ZxV2NGMXpoTG94WE5jU0JhSnZqOUYyeHFvNgpZNGE3b2djNkl2dmJJN1N0Y05kNkVIVnpoS29wSEtzWWdic2orME1WRGNHOXpZR1BXd0tldEFiMk5BUXE5NFdoWGN2KzNoYmc1K2FBCmQ1aUNJemxPbnpuTnh0RVdjU0c2Z3pmYXlkYkJ6dEhKQVNIaEVaeURJNUdJSnhEQWg4dmVpZUR3Um5Fa0VYQjRlMmNYSjRLenZTTUoKd1RuYk9lSVJSMGZFRFkrNEVaMmNuUjF3QkFTSHc3a1FIVWtrV3lMSmhZQjNBQ0VTSE0wRHpuZ1FuRHdJT0lLTnJiT0RteXZCSFp3RQpmNVgyNzI0Y1JRM2kwMytlemVqMkV0endFdC94bFR3STVGMERCOTY4V3lZQVFmMXdycy9uM3dRQVdpaTd1VTV5aENhUkZoZm5sWlZDCkFGWExHYThESUttUUtoQlNBSUE0UERJQVVBR1AvQTVuYnpTdjIwZjgyVUxaZFFDZ1FOaGRkRE9TZDh0UGNHdXUrUFk4OFRWZjBhVWcKNFZWdjRaMjV3Z2NMaGZlQ3VkZVdzRC8rUUxDSFVzSVZWeGFVVk9XV1YrUlZsOUZCYWtycG1JRjJWN0JNUlNCTEFMWFVRdjFNQXBCeApGcGg0VDRrWUExQ0ZCRmFBNUNLT2tNZmtzR2tpWGlFSTBJK0FWL2g2QURycnlUd3ptM1YyRHYyY04vVjRUT0grVFlYY0ZISzZDVUJwClpoUEJJSUNDUlljQ2hJZjgrVWQ4QmNjWDhFNTZNazlOb1J4M3lZWDZBUVp5ei8zWXZlREV0S0xUQUVDenVTZm04STdQNVorZkp6Z0gKTWwrQWpZV2Q5ellPZm5uenoySkZJQjgrN1BzeE5mMTQwaTZEektWZnNRYWdxeGlBZmtVMUFvaWVuTW5NK1Q4RklKWW85MlVBTWhuSQp5S0NKcnFDRVNySXhGZ1o2M2d6MGdvRXdBSlhDbGFDWkVFQnlabE1KQkZCTE9hK2hndFZReFQ1ZXhQZzZNdXViR01hUGtaeHY0MWcvCnhuSkFmbzduUFV6Z20xOVRueTZTOUNSS2VoZEplMThpSVN5bXlwQTVqQ3p6QXBXTVp3QjNkRXZMZ1pDd0pZaXdaOUFtbFVIY0dNZmQKVkV1TDFjdEsxRW5Gd0VBajhTSndxMWxTckRHS0Ivd3U3ZklLd0tiaGhNbnVlZDdaczBoaUhyT1NqOUE4QS9FQ0xOZ3lodVo1Tlgydwp5ZTJXc2FUUGZ4eEFtSDR3QUdHejMwR1V5eVlBQlBTalh3a0JOTFlLem5nM0FxaDRZdVFMNk9jdExHWG9obEowdmZTSHpXV0xpbTU2CjhlOHU1SDhPQU9URHUrSEQvWFVJNDJZUzg4QUdHdDBJb0YwQVFNbEZPN21jckNveHRWbk9nWDNRWlJLZ0h3aWdha2dmcXdCcWx2SDIKU3RrQVFOVWlacVdBS3VQbTBWbVptWXpKdForSlVGUHppN2FsNTZjVWw3RFZvNHBUMSs4NDJUaE50VUZJTGtRN0JEL0ZaUnJCM3NrSgpRVHljY081NG5ETU9UM0owY25Hd0hxS3RnOVVRRUFkbk8yQWZHM3NjNGpiVjBkblpCZzdLSUxhekZ3U1hWZFkvL1A1bmRCUmM3VWQvCjkrRCs3Ly80YXgwNjB0bmE1b0RZdUpEZ1duOTVNZk1OeDZQUXh2Q3hacmcwanRXTWRJVVlXaU5HMnlLMW5lQlM2ai9hRkdZNHNPd0wKbWJlTEhkN1p5ZFhPMWlrNE1FU3JWS0RqZWppR2hCcGZEVVdOSTBxb1htdG9iV2doT09DSnNQeUN2THRvNXRpSGk5QzJJRGhackNWNApyRGtSaFZXTnlhK0lSZHVlZ0xaRTY1djlnTHAwTFNIbzRaaUdYRi9FZHFxN0U1SG9nSXNOajRTdk1UYXUwV2pBLzZ1MUdoUzh2aW5ZCjF6Rm1qQUZjSXNmZ1hXUEdEV2hQdi9xclAzL1gySDAvcmZyZ1NuSlpOcStpb2J6a1RMWGc4bDc1NmZxeXEwM1ZJTGM2OXR3KzBIQ3QKcmY1cTgrN3JiWHV2ZGV5NzNGWi9xUmtDNkZKejdZbDlsYmZQbmdUUHRiK2h5UkVoZWhEdFBCeVErVFBkeUN2d0JXdmNjNWE1NVN5egp5Vmd4eDJwU2xpL01XT0d4YytYMHpPV3pVMWY1WnF5ZFU3aktJMmpCVE1RZU45VVZENjd4TGs2azZBWE9QKzhQMXg1YmhCNU5RcnRXCmpuY3RIVzJQMTdhRkQ3Y0dEYlFHOW5XRzlnQVZkVVlPdG9jUHRvUU9ONFZxbXNQMUxaRmp6WkZvVTJUUGdRaVl6dkMrOXJEKzF0Q0IKbGxCRks5d01STE12Vk5NWURpeXJhdzVUTllZQ0h1azdFelFkQ1hXRnNZNDJEZ1NDazlzVUp6c2J1S2pqVEgrdkJYUG1UUFdiUG11Qgp6Nnc1cytjdjhKdysyM3YyL0lWejU4M3luaGt3MzNPRzFjeWJiVDNUNXJwTW4rSHFPWFBhbkRtenBzK2RObTMrMUZtZVV4Yk1tK0U1ClkrcU1tWE5kWjdsTm5VMmFOMnYrbkdtelpzNTBBeTgzYTlZTXk4eWNPZDNWZGNiY3VmTm56WnpuT2ROdjJ0UlpydE53Y3dObTMvM3QKSC9vMTZnMzFYODRUUHZBUzMvQ1czQXdWM3ZiajNwb3Z1Z2tiZ0RpUVB1WUE4aGJmWFNpLzliYmtBRi9DSzVObmxaYmtBdTdVRkRPcgpTdW12QnBCY1FzVUF4T1BCVlJBQmdITDVsTGZZcllBN0N5V2ZlY3V2K1V1NkFZQUNqTHR6QmdodUdHZmdYOGNXOFBNRFg0d0FOZ2w1CmMyLzZzTzZHYzd0WGlEN2NKcThvTEdIeXl3dXJTbWtnd0VDbU9oQm1JQXhBalZWOERFREdTRjRHb0lZS3lRU0F4UHh5TWEvTUNDQVIKbjhWajA0UmNNZ2pRRHdZZ052Y1hBT1RKUER1WDlRbkliT2FGK2RSejRSUzRnOUN1d3RSZDVDeGdJQ3NBOHVlZDlPT2Y5T1dmOWhHYwo5UktlbmMwNTdVRTdUaW80N0paNzBDUC95TlNDRXpNb3AyZlFQcG5GUEQyYmZYd081K001Z3JOeitXZm1DVDZaTHpnREhnOE1oS0hIClIzQU9hd1B5NWwxY3dMazRuNFhwNXp5Z0Q1WjVqS3NZZmJ4WVYwRjhXWmU5V2QwQVFJdG96d0dVeGNoK2ZRQmg5UG4zQVBUTVFGUk0KUDNCdVBCd0ZtMndnWTB0UWxxV0JRRlpXVHdBSWZQN01BZFJhd1crcVlPMnJaaDlsVGdEb2h3ajJOM0hNZjhXeUFZQitpdU9hRERTUgpSV0tRSjRsaUlDRmdvRWtGSVZNQVg3QllvbWNpaTZ5MzZSaUh1a29Cb2NEVERpK0RTL2hBU0MyQ3p3TU93QlAyTDVGamwrMmhwZkxoClpjVWo0R0dMcFlPTEpOaktqWEJnTHI1WUhmZlNhZTFXOVRNSlFDYjlnTUFsZkY2cEgwdlFXSTBsZmY2ekFPb3pBNURDR0JPQXNQRXYKRTRER1Z4Y2JBU1NmQUpCSlAyOGJzNzRFWFNmNXg2YXlNTm9kdUNZOS8zTi83dWR3cHg3dWI0S1l0NWN3RDIxZ3NBQ0Ewb3FTZDVKVApkbEYzTWxrWjVlS2lKaG03WGNiRkFIU2dCcTRHTkFsQVdCc1FOSkNFdTAvQzNDMW1Wb2xZVlVKR0NUZWZ3YzVLWTJTWUFKVFBTTWYwCmswOHpBcWh3YXlZNXBiQm8rMDhEMy8yOVgrUG42VC9iQnU2dTRBeCs3Q1lpenM1MjdpNE9ycTV3UjNIdzR6Ykp6UlgyMUZpTE0rbC8KVVhjWDhGRmRhZi9BQjBKQ0FnU3JvUWx4dzkzcnRMVFFGbzhuNDNwSHJ0KzVNcGFKR3hKQ2dFSnBpMXZjQmErdTlOM2RicmN1MEc2RgpscFlLbXZtZk16Y1pRaEpvdSsvdSs3Ny8vZncydlJrbVpKaEo1bjd2YzU1enp1QitNMndZK05za1E4RmZOVHd3QUZ4WlN3Wk5tekU5CnJ5RDdxNjgvZ3lqcHZQNkhjNjNscFhZQ3lhemFmOEJ6MVZOV3NWM2lOekRvM2tGK0VrbktySEdYRGt5N3NXUG1MOXQ3OTFiNzh2T2UKS2RmS0Vqd1ZNMi91bW41bGE1eW5ZczZWM1E4Zk5JNGVLUEViQ2JjRkhiRDBzZm1kbm0rLysrR2p0ei84eTU4L2V2K3Q5OS8rNndmdgp2UFBKKzMvNXg5OXVlRzVlK3VFN2NPWUxDaG9jR0J3dzVyNUJYKythMjFrMjZmTE9tYi9zanZ4bTErS3ZYb3p2K3gyN3Z1L3VoR3ZiClozMi9lOW9YZTZkYzJoM25lU2wranpiVVR6SVVMdjRiTUdqbXpPblhiMTc3ODkvZW9uaUdFQmljcDVPTG5XSlNTbHdnNG5GU2tTTjEKU3c0NHlDak9raGJucE9ibnJDM0lmZFRsVExDWTRuWFpzWmJ0Y2VaZDYvbWRXMHMzQWYzVWw5aVBieXFzS3N1cDNaWmZ2NjBJUUtleAp2TGg5UjFsN3hlYm1zcEttNXpjQkFEV1VGMVp2eVR1OE9lOVV6VEh3M0JZVUZrc2tRNGNQRHhnVlBHVGc4QWx3Z2FWQndaSkJEMGdDCmhrbjhBdnFQSkNqSWY2QmtrTDlFNGkveEd3R1gveGtna1FTR2p4ZzJlTXhJZjlqRVBUSk9FakE2WTdaRStkaHdhM0xjWWRNRDdYekUKTzZWVHY5MDU5OXFMOHowdnpmWHNtZVhOdkp1N1pvTVg3c2VLcVQvc25QYjl6bWtYZDB6NWFudkNUOXVtLzFnTzl6NERCL0M0b2lzWAp0MC8vNGZsWkFFTS9WMHo3dVdMR3BSMHp2bnBoem52bGt5ZU1uamg4aUdUSWZZUDlCMG1teEVaVk56Ui9mdUhqRC81NS9zUFAvLzdGCitlL092L3ZwMTErYy8rajhGeDk4K2NHSEYvNXk0YVBQUHZ6c28zN3p3U2VmOXB1UFB2dnJweDkrOE5rL3puLzgvbGZ2ZlB6WnU1K2YKZi9mRGp6Nyt4OGNmZmZEeDN6Nzg0ci9Pdi9QZStiYytmdS9Uajk3NStKTlAzLzM3KysrOCsvN2YzL3ZnSFRIZ0dPUWY3NzBOOHRZbgpmMy96M1RmZS91RHR2LzNsblEvLzhmYkhINzN4dDcrL2Z1V2E1OXpiYjRmaHpaUFkxMFBaNWdpdWNScFJFNDYzaHpLTlBnRDU0Z1BRCktuNGJ4NkZ1ZStaL0IwQnlTcjhDQUlnOEdjNmY2UUdnNW5DK0ZoaG9HdDAybGU2SXNiWkdzTTB4VE4xa3NtWUdXUlZuclE0UkdzZmEKMnNERG00UHZYMHR1TXZEdUhLY1IxcCs2RGRUVkQzUm5BSlhud1hXQWZBRGFtaStJQUNwMThVVjJheThBMFlTWkliUWlnS2dlQURKagpkd2FRcFNvRVBSYUNIeCtQMW9XYWFxY2FkaitoWis4R29IRHJvWERya1hEbVdCaDlkQ0o1YkJ4MitBSHpvZnVNaDBickR0MmpQM3dmCmNtU001U2pVRDNZWUJqODRrYXdNb2FwQzZjcEpURlZYckZCT1lkWmFHS28yRksrZFlCRkh2bURoWjVLNUxzeFNMeVljYlJBRDZCT0YKMVlBWE5SYXZmTVJVbUdoQU1oRUZuT1dPWllyb1VhQlMwVUFnY2d2Y3BVaUJ5cFVXcGRxaTBlRjZNMm5BR0FUUWh3TDBZZlEwMEErcgpvM200SFJqRnFid0drdU9NRW1GaEg3U0drS2JTc21WMjljSnMzWUljMDZKOEJHUmhuZ0ZrUWE0ZVJIVFBQTGRwYnBZUlNNZ2JuWGRRCnJNdERDM0sxQzNJMUMvTzBNUGxxa0FWNXFvZHpaRktuMm01RDhoM21BcWVsMUc3WjdDQTJaVEdiY2l4N1dMT3psQ3B6V0U4OXJINW4KRnZMdURQVGRXZlNIYzNGZ0lKRkI1K2ZBc2JEUDUxSytzNis0eUo0NFZWN010d3M0RUFnUmI4UXBZeUNYRjl0NjVrZnZZa0l3aTJ5LwpLK0tYQSt2MGpyY2JTWXpZbjlTVlBzUzUweUNYbUw3SzZaVit1ZE0zZmVuenJ3RUlQTlg5cHE5KzdnNmdMeFphLzdtSUZkTnpCNHl1CnFlOUxZTDVid242L2hQdGhLUS95NDBPMlh4NEM5SEZlZjloNTR4RlkvdWxjbHVWNXduMWp1ZVBHMDg3cks1MDNuczBTYy9OWnArY1oKNS9WbmlaK1hPeXJYYkIvTG5MMkhBOWRidFJIWTYxSE1xVWxrUnpUWk1oOTk0Vm1FU0RFa0p4bzNKQmxUTW93cEJuT0dnekZzRW9qdApObnFuaTROOTBMbTJudnVDZ2VPZUFQSnRDMS9FNGJrc2FxY1JBbE1oeHN4MFUycFhIY2lZQm5KckNFeWZvZE9ucEthdnFUOXg4cXJICnMyanV6TUVTU2ZDd1VjT0hEQmd4ZE9ESVlYNmpnZ2VCZ0FQd0tiaHg0SWo3L0VlTUNnb2VIandzRUs3Rk1zeC9XTEQva09CQkk4QWQKdkJuWmZUeDg2TURnSVFPQ2dpUkRoL2dQZ0YzTy9nOHRlZXo1SGJ0KytQNDdidzNrOGl0bjJrb0xjbkJFYmRhbG0vUVpkZFZIUFoyZQpiYy9uQlVrR0J3NlRTQUtHcjE0NDVzcmhlVGZMRTM3Y0ZYTnRHMXhGdW05KzJacmdLVnZhdVRIK3l2TXpyMjFiNGltTHVIWndpYkE2CkFYeS9lNGNFRFpKSTFFcFZwOGV6NzVVVGkvVHJWc3VmVzVmNTdFcE4waUtMZEJZbXEvL29MZkJJMGxhdENSamdmMCtBWkxoRXNwOSsKelBQaURNL21DYitVeC96ODR0U3I1Wk92YnU4L3Z6eS9wSE5MakdkckhIZ0FOeXRpUEx0bmIxTlBrZmdQSGpVcUNQeGo1ODlkNElGYgpjYjIyT24zMXN4bnJucFdsejhPVjh6RDFiRXczRTBObW9JWlpxRzRPcHBtTHF1SUo0MHhNdndCVHprZmxzMUR0Vk13NkRTMlpZZGs5CmxXcVpURFhIc1dlZjVJNXRMeTZ0TGJVZktzbXUycGhWdjdVQUtLZXBvcmg1ZTBuTGpsSVFjQUErcmQ5ZTBsQlJVcitsb0haejRaSE4KeFczSGo5eTRlU1Z2VThsQXdObWhBYU9HQncwZkdqQmlTTURvSVlOQjdoa2FPSFRZOE5HQkkwY0hEUjgySW5ESWlNRGc0R0R3bWtwRwpEUlY3c1VjTkN4Z0ptMnJnbmVIVTk2RkJ3VU5oZHpEZzNmQWhRU09IRFEzeWgwSWREUDRmQVBmYXVQK2VJVlBEaGo4OWU3VHlzUWVjCktaRTdUYk5mYzRTK1hSajM5Zk1MZnR5ekFNTG81Zm1lRjJaNDlzeTQrZnlVYTl1OTA4ZktZMy9ha2ZEOTlyanZLdUovM0RYdDByYkoKbHlvV1g5dzY1V2JGdkJzbGkzL2FIdlhQZ3c5cTVrUU9HQmdRT09LK2dNRUFYdmVjUFBlNnAvUG5hejlmL3RPM25yOS85LzJIMy96eQovbmMvLyszN20vKzQ2UG5xNjRzL2Z2M3VUOTljK09LYkMxOWQvQnprNjIrLytPYTdmMTc4RnVhYmkxOThmZW1ycjc3N1VndzQvdWI3CnIwSEF3WmNYdi9ucTBpV1FieTcrODl1dlA3MTA4ZnhYMzRIL1hMNzQzYmRmZnYvamhSK3VmQUh5M2ZmLy9QYmJ6eS85Y1A3N3ExOTgKZnhrRUhQZktsNWQrUG4veGh3dmZYcjd3N1U4Zy83eDg5ZU92THIvNTlrY0w4OTZJbzV2RHNicG9waTJHUFJuT25BZ2gyeVlTYlZGawo0eVNxZFNMZE1aWm9Id1Bud0RlR1c1dGloWllGYkYwYVgyZ1R0UGwyZFo2TktMTFRSVTZ6TzB1VFkrODVDbVlCOFFISXpadWRuSkZuCjRDcUlGR01BK2pFUldpbEJMdUplamhiYVk5bTJHSzRqbm0xTllPdkRoWTVvdHNXWEtHdXpMOUhlUkRGTlVVeEQxL1pXWEYwc1g1L0kKNWRJNWVINFdubXNuaWwzcXJRNUZzY09TbGMrVjVPQ2x1WVFQUU50NnpBTHpGb0ZzWXNyemhESUFJRGdFWnMyM1U3azJPa2VBU3dHQgo4RllDeDR3MFlXUklwSHNJVElmamtEMFlhalNnR2cxcU1WZ1F2Vm1yUlBVS2kyYTFrWnRxZmpuTVhETVJyUWxCSzhQTng4SXQ5ZEhtCjQ0dVJndlZhZVpwV21hNVhaQmprbVloY2FsVElUTjU5d1l3NkNkUlBGNENPVGFTT2pNZUJlQTdmYnpwNHIrSEkvY2FqWTh6SDRYQWEKZm13Q2NSU0dQT3dGMEhFUVlLQmJZWTVOWW1xQWZpYVJOU0ZZalFnZ3NmRGowODhkQUhSTUJCQjRUQkJBcUZRRVVNK0FHLzlEQVBJWgpDQVFBeUp2dVZZSjZBS2kzZ2ZLMFhnREpwUTV0SHdCUnBibVdYWUlsdDRBRUwycnJjdDA3TTdRUVFMUEpEK1pnSUxmcVFENEQ5VGpwCjlqU1FDS0NlREJJQkJCVFNteXhlRmZXOXNldVBibTlTdnRXdGZQdmRmRldjL3ZXendIWW45L1JxYXZibDd2cjV2d09nT3pIbzN3SWcKY2Z5ckcwRDJXd0Jhbm5YektlZk5GYTRiejdnZ2ZaNXppd0RxWE9ub1hNbmNlTkpkbHJSN0hIMWlMSGRpTXRrUWc1K0xZTTcwQzZCTQpKRVZqU3JNeGVoK0FkdVFJQUVBOTllTURrRGdLMXJVZU5FY1VzM2craHprWUk0bXFqQ2FwMUp3bVRvQUg2QUhSV0RKQnhCNGdIYkphCnBWMi9lZGUyS3g2UFRpa2RPM3lZbjJTZ241Ly93SUdEQnNCdTRZRWc0QUI4Q200YzdOMTBNeEFHSEF3WUpQRWJJUEdYRFBBSEo5cGUKOFJzSUE4Nis0OGZkditMcDVTL3UyZjNqNWU4Qk9MNzUrdk9tcGlxbmkwQk5HcE5PaFNOS2x0QVNGbVZkOWVHYjEyOXMzbG5oSnhrRwp6c0Yra3NGcGN4L3dISDdRczNtSzU0VnAxM2IxbjEvMlJzSFc3RDB4bC9mR2ZiZHRxbWRQeEk5SFptc2VIaklnWU9BOVFZRUFRRFplCitPVjY1OGJxdzR1MWF6ZG8xcVVwMXE3U3B5OGhOTk13Ulc3TndSdWVtNXR5OHlRU3laQ1J3eVFEQmlxV1Q3aDg0SkhPblZPdTdaMS8KY1djYytMNVhkd1VaeVc0QUFJQUFTVVJCVlBlZnIzZkZYOThkNlhreDRZZGRVNi92bWViWnY2UkNQWG5BUU1uSWtZR0RBd2JOblQzdgoyclZyQUVBWitvdzBSSjZNYUIvaThBYzVZaUZQemhPc0lQTjVlaEdITCtHd2hUeStsTVVmWnNnbFZuWU82NTdPYlozSzdwL0IxRXhsCjJoTG85amp1MVVldGxSc0xOd1A2SEM3TnFkeVVjeWNBMVlHVUZ6V1dGOWVYRlI4b3lYKzFwUTQ4MVl5TkhlQmRUd2dZZE1qZ2dTREQKQnZzTkRZQWZod3lUakF5QXZVRkJneVZEQnNPVnQwY09HaFE0Mk0vUFR3S2Yra0dTUUgrSmVQL2d3RUhCZ2Y1QlFRT0NoZ3dNSGg0dwpmTlFRWUtiQTRNRmlSZ1JMaGcrVERBMlVCTUkxb3NGM2d4UFkvUDBIang0Mjh2NWhRNmFHakZveGU0eitxZENjOU9oZHBvUnErN3kzCmkySXViSjl6ZWU5RDF3ODlmSFBma3F1N1p2MjhmWXAzQlozWTc4dERMNWRGL0ZJVy8vUFc2SXY3NTVWaGs4RWpIQmJvUDM1VUlQaDcKZVp2ZzhkdzgrZjdGWjNOckZyUDdaOXVyNXZPMTh4eVZNMTJWaTJ4SFZnc0Zjc0drRm5DcllHSnRadDVtQVJIc3FNMGJ3V1p4MkZBeApUanZtY3VCaXdMR1ZzN0FDeFFnVU9PQ3RlczZLb0l4RlExTVBjd2VXOHBVTDdQVWdpNFRxeFVMMWZGdmRYRWVMZUFzSStMUm53QzF6CitacTVmTjFzdm5ZV1Z6UGYzanhYYUl6RmpzU1FqUkY0WFRUVkZHTnRqNlRiSjFIdGsraU9VS29qakd3S0pWc21FcTNqaUJhUUVLb3AKbkd1SkZ0b2U1QTVMaFd5N1haVnZWK2Jac0VJYldlZ3d1VjIzVFlQdnBSOFJRT0NSMC9RdEFHWGd6QUp1Znk4QVJmSWRNVndyU0M4QQpSVUwzK0FJMyt1emEzWUd0ZmNTNk9aUExzV2VSaGRubXdpeExzY3RVbkcwcGRCUC9YZ0NKRlNDQzBJb0FRckU3QWlqY1V0c0RRTFhSCmFPVWlwSGlkVnBPaVU2YnFWVjRBS2U0SW9CRDZLQURRV0JRYWFKd0p0aEZOeENwRDhPT1R5S3BKNUhGd0I0Z2tPQm0rRDREb1NrQ2YKVUtJYTZBZDgrKzQ1WDdjQnFLZCtRS0x4ZXZBQ1F3Q1o4NU1OQnZDWXBCWkZ6OEpQVHdESkxabEtUS0ZDVlJwVUt3S29xd2VJMGZ4ZQpBUG1Hd0hyRk96MGV4Z2NnYUNDNGRZWTRSMHpuTlpBWTJCdjBZSTRzMDY2eEM2WThKMXdhUVFUUVJqZFZtSS90eU1LTHM3SFNmSzRxCjBmRDNxY3IzWnBqL01ZdDRmemJhdjRIbTBaLzNPQWVMQnVwWkNycTRFRTRXdXpWenZnK014UFRxeGZuWEFtUnpHM3JtQzdkeWgzcFAKeituclBmTmI5UE4vQjBCOURmU3ZBR2d4Qi9Xem1MKzBsQk1COU5OU0FlaW5hL0xYSXc2UXpzZGM0cktIblUrN09sY0M5RUQ5d0R5YgpCZld6d3U1WnpuWStrYU5WN0J0SHQ0ZGJUOGJncmZGNFd5aHoxZ2VnNTd3QVNrYTZBS1JDVWpoU1U4SmoyMnowZGhmYkw0QjI1SFNOCmdnRURpUURheUpNbEhBRUE1S1NOTks1QndiVkhkd2UwMkFZa0RvUUJBTWtSbVZhWExGTW1Lekg4d2s4L1hidjU0N3Z2dlBIR24wNGUKUHJMdjBPRzlCdzYrdEcvL0hoQndBRDRGTnpiczMxWi80UG02QXk5VUhYanAyTUc5aHcvdE8zeGsvNkdqKzQ0ZVBuYnN5UEhqUnlzcgpqMVZWVjliVTFkUTMxRFUyTlRTLzllYy9mdm5QOHg0UHdOWFBIMzc0WHkvdkxYYzZTYTAyRGNYa1pyUEtTcGc0R2paQ1lpWjVUYzFoClQ2ZG4wODZOL3BKQjk5OEQxd1JLbWpmcTh4ZVdYaXhiZkg3bnd1KzJUdTAzLzl3NTlldU5NeTVWVFB0eTkreXZ5NWRjZTM3dWg1dW0KSjhYQmVWNGpod1lHREpEczM3dnZxc2RqZjJublk4YmtOR09LUXJNaDBTeC8yR3Fad1JoVGlyTEF3M3JyRDI4R0RSOXliNUJrNUNESgpzbWpKZTFzV2ZsYzIrOXRkRDM1YU92bVhzdWtYeTJiMW13czdwbC9hbnZCdHhiVFB5dWRjMmozMys0bzU1Y2xqeC9wSkFCUUFnR1pPCm4zWHo1czAvL3VWTkFLQVV2VFRKb0htRVp4NFMySVVPZHA2VEJ3RUhTd1R5WVk1OGdqYzlZY1dXTWZ3U2E5RXMvc1VFb1RxT2I0dmoKVGsxbVR5U3dwMkw0MTVjd2RZN2M3UWRMODQ1dHpEdStLYjhYZ01CSFh3VUlBS2k1b3JTaFlpTUEwSm02U3MvMVh3cUs4a2VOSERibQpnWHZHamIzdmdmdEhnNEJqTVNQSDMvUEFtSHNlR0R0bWRFakkvWlBDb2laRnhvZEZ3djlObmhvZVB6azBKaTRrSW5wY2FQaDk0eWFPCnZuL3N5SHNmR0Q5cVpMQS9IQ0ViNUEzUXpyREJRd2NOSER4cXdJQjdBL3p2Q1F5NFoyalF2U09HalJ3Qlo3a0ZqeGcrSU5qUEw5Z2YKQ01uZjMyK1FaRUFnSEhzYmZLLy9zQW4zalpnV2R2L3k2ZU1VRDQvUFd4OTIyQkR6bW4zR0IwWHpMMjZkYzIzL2pCc3ZMYm41L0FKUAo1YXcvYko0NUp3UXErOTU3Um9CdnVtRCtyTzh2ZmZQbEZVL0s5bk5CK3RyeE5Cdy9pc0pQUnBDdG9VempWUHo0Q2t1V0VwVWF6VEtNClNBUEJ5WFNDeXFCNmhDVzZ3cEdaQWkwRDRTa3BPQ2JRRFBpamlNbE01blNMS1JreHBzb00wZzA2MVZUTHZqajhXQlRaQUVQVVJ1UFYKa1VROVVFczRBVGM4NkpWSldGMDRCcWNFaWFzQmp6ZFdobUMxazRqNkNaYmFTWmFhS0xJUktBUk9PeWRhUkFBQjk4RGdUU0FUaUlZSgpkRXVJdFMyQ2I0Mnl0UzNuZG1odHZNdXB5SVBqWDVaQ08xNW9OOFBkTVBvQUNPaEhCQkFjQXVQTXZRQ1VSTmpuc1ljZ2dMaldLSzRECi9GQkJBQWx0c1h5YnowQSsvZlFCa0hlemMrOHlOM0hVL3FYNEMycWJ3NTJMWkR0SnQ1c3B6cmRzY1poN0FRakVOd2UrWHdDVnV0Z0MKQjkwVFFBSkxBZ0JST0Z6N3h6ditwUU1Bd2pDdEJUVllVTVFISUoxSmN6dUFhc0J6RzRwVlJWaU9Bd0JGb3BYempadFc2U3dwT3JYWApRT0tHR01vZUFJSzl6REFpZ0NZUTBFRGpzTU1pZlVJSklKdGJVNzFBUXBrdUFQVTBFQndVdzRHOHFpZFk0SXgzNzNMUGRaUE1kYUdtCitqQzBWa3c0L0NHQWdWdSs0ZlVBUU9EMWppV09QbXJLVFViMFVwTk1EZ0hVdS96ekh3WFFvanlUTCtDUHhJZ0xCZm1taVluRFliNE8KSVIrREhzeFdaRGkwNE5JQkFDamZKUUlJQXdES3owZkxjb210ZHJTd2lOMnJNYjgxWGZiK05PTTdNL0YvekxLOE94c1ZHU1FheURjVwoxalZEdnNkcCtLdDVqTWlnbmhqcWtoQXdoemM5SmRRTFE3OFJSbjNIcys1VTVvSFE2WkZ2NWxsOTZUblVkWmRocjE0OXpyOVJQeUpvCitrM2ZlL3J1LzY4QnFKZUJmamVBRm5NK0FQbjBJd0xvNnNNMlgva0h6bjUvMHRYNXRCdjJQai9qN256TzNia3FHM3owUEpNRjlmT1UKemJPTXU3UzgrRUhUOFhGVWF4eHpLZ0x0bUVvMFRHVE9oWk1kTWYwQlNLWlBwSEJsRVdzcEY2Z0twM1Y3Tmc4QXRDY1hib2poaXc5QQpJRnU4NjBGdkVpZ1JRQzdHSk5aWGdIWFUzUUJTZFpkL1ZFaGF1aVpUajhoa0d0V1RHUWhSZHVpUFgvMzh3WS9YdnZSMHQrajJ5VFd2ClpYN3B6alhZNi91engvTjk3L3QxNThhTkcxOS84OFhKMC9XYnQ3cFFNa05qV0llUlVwSlIwYXlHb25Vc2JXSUl1RytSMlpoUlhYMEkKZk52dE8zY01rdmdQSHhvUUZEZ3lkUFNRaHlJazg4Wkk0c1pKcG8wZDNtOWlKd1pOZVdESTFMR0RJc2NNakw4L2VONzRnTmxSby8wQwpIZ2dLR2p4aStKQUFQOG5wamhNL2VqejY0cHduRE1tWnBsU1ZOakhKckhxVUkrYmF5Q2RaOHAwdnp2LzA4L2VUNTA0WjZEOXN3TkQ3Ci9Qd0d6QWdkUEd2OGdLZ3gvbkVodzJhTUQ1Z3lmbkMvaVo4WVBIbGNRTnlZd0xBeGd5ZUgrTTJMR0JneGJxZ2s2TjdnWVArZ3dJQloKTTJhRGY4dnJmM28xV1pXY2FwQ2xtdlJMV1h3cFR5d1NpQVUyWXJHQVAySzFQRW1abnNZTmEzRHBjeGJOVXhiNklYVHpUT3BZTEhzeQppbjAxa25sdE1uYzZnWDhGQUdnMjNXVElldUdsalVXVm0zS09ieW5xQ3lCd0xGYUFHaXBLbXJhVjFHNHRQcnlwb09YUVM1NWZmZ0JtCitQaWo5eTZjLy9qekM1K2N2L0R4WitjL3V2RDVKK2U5K2ZienozNzg0cFB2dnZyaXdyZVh2L2poeDhzL1hMd0svdnZEUDY5ZXVmenoKVDVjdVgvNzY4cVV2TDEzOC9Lc3ZQdjdpMC9jdmZQenVYLzd4ajFmZi9FTmphOHZlL1MvbkZlU2F6UHJWcTFiT256Y3paRUxjL2ZlRwpCZmdIZHkwMU1FQUN2QU5Ybmh3WU5Ed29lTlNJa2NPQ0E0Y0VCd3dkNVI4MGFtREFDSW4vMEtGK1FVRisvb01HRGZRTDhnOFlFVEQ0CjNzQWhEd3dOWGhRK2FNWDBRTzJ5Mk95MEdlVllqSEpGcEo5a3FHVGttTUFoUVpMZ2U5cFB3ZkhaL0piM3gyajNSRHRQajdPOUV1bXEKaWJHM1JqaGJKN25hWjlvYTFyS0ZHS3V5TXlwQmtJSFliSEs3WGVIb2tTd0I3bllPNHJhcFFiTHRHakZ1bTlZaDZEbFdhNlZVTENrbgpLYldCTkVveGJDNWZOMTFvbmV3NE05bCticXJ0eEF5K1pScmZNb1ZyVCtEYWVpV2ViZlhXVjVyanJVMEpYTXRrdmpXV2dXTkpNWENqCnpLWm9waTJXN1lobXV5YTloek1ud3VpTzhWanpPTEpqQXRFRXp1VWhaSDBvM1J6S3RrWnlMZkcyeHZWY0htckhzbDJLUEpjV25Ib0sKd1luR1lYSTd3V25JTEtZbmdOeUMwUWNnbG9INklXakVRdW1OdUc0MWtUdUxQeFlOeE1NMVFnYnhiZkZjZlJSNGJFSkxETjhNRXMwMQpSY09KWUkwZ2tkYUdXOE5oM2s4am1IcHhLUnc0T1IrcmU5aGFqamhJaHhOMXVhbWlYTHdpQzA0RUV3RlVsc2VJQU9wdWYvNFZBR1h6ClVEOGlnQWpjUkdKdzVwZW9IeHpYV0RCTlR3RHB6UVlmZ05hWStHbVd2ZUZvVlNqMFJsVWtkZ3lnTXh5cm5tMnFlRnJISldrMXljQkEKQmxVYUl2ZnVpZ3AzaHBjYk5TS0FZQyt6Q0tDSjFCRVF3S0JRNHRnazhqaElULzFFc3JEakJ4cUlQdG9Ob0dxZ240bGs1VVJVSFBtcQptbUNxRWZVanBsLzlnTVJpRFFCQWNmamhSODA1eVloV1pvUUFVbHJnS0Zndi9ZajVUd1BJZCtPQ0hLU2JRYkFhSkhZRjNSb1hBemJ5ClNtaXBXNWx1MC9HQ1dRUlFzWGNtUEFCUVFSNit1WURlTHBpTGkram5LZnlWaFlyM3B1bmZubTcrK3l3ek1CQUlNTkNIczZHQlBwbDkKcXhUa2sxQy9wMlJ4ZEV5TXJ6TFVxejdVRXlqL2NnQm9lbjNhYis0Q25Wdmk2VzQwN3NzUk1iMU5NNVBvUDMzbzgzOFpRRUEvSW9CKwpYQUlCOVBPRHRpc1BDU0tBT2greDNYelUzcm5NZWZPcHJNNlZVRCtlWnlGOU9ydktQeTZvbnljRnp6TCtqNnZLd3NsNmNCVTdsVG9UCmhwNmNTdFQ1QUxUQUFnR1Vwb2NBU2pHbVNBMHBHZm9ObUVXV3o1aktCSEtiZzZsd3cxMVJBWUQ2clFDQmxEblp6WFptbzBDVjhtUVIKaDJjelpvSFVXM0dOM3BTcE5zTEJMd0NncnJFd0pFMnRUMVdhVjJ1UnRWS0Q1Z2xEWG1UaXhrV1c0NC9nTmN0dEhhdUxHa0RXRkRldQpMV2tDQVFmaUxTa0ZyY21GSGFrRkhabjV6ZHFjdzRTN0xDc3JxOGhsemM3bHhiaHp1S3hzMXVXMk9yTVloNHVtYWRKczBRSjI2RTJKCkZpS1paTk5ZbTRKM2FGaEJ5M0lHQVZ5NTBnYU8wZUFvckFCMWRuYVdsMWY0U1FZQnU0d1lQVFpveUFqL2daS0FJY0dTNFNNRDd2QS8KLzRBaHd3WVBEUjdpSHhnMFlGamc0Q0FKWFBRNWFPU1kwY09EQXdMOUhyaDN4QmVmbmYveTZwVmtubnpXbUE0QnBFdGRxODFjeGhJTAplZnhScy9aZ2JhWEhjeDI4NXd5V1NJWUhEeDBKMTJXVURBMlFTUHdDQmcyOVo2Q2YvK0RCUWYwR25QSUQvWVlNR1RSODhPQlI0R0VNCjlqYkVCQVdQQVFEeUh6Und6cXk1WWc5UW1qWU52QjJETjhDbG5PVkIzdndJWjF6RzZsZFMyaldZS3RrRTM2elRrY1FVZmZvNkhiTGMKV0xBSU96S0RPUnZQdmhuTEFnQ2RUUkJlQndDYXlyU2xPQTdzTE4xVXZ5bnI2Sllpb0ovR2JVVzlBTlFJZTZJTDY4cmh4NnJOZWNmSwppbmZtdVE3dTNOcHc5UERwOXBiVEhhMGdKenBhMnRxYjJqcWFXMDQwTjdVM25tcUZOemFlZXVQbGM1L3VmdjJyUTMvNDVPaWJIKzUvCjQ3T2piMzV5NUkyUGp2M2hrOW8vWDJqNDYrY2dqWDg1My9UWEMzOTQ3L3hIMy94NDhjcU5YMjU0NE9hcmtMNC9lVHAvL09iYnovNysKenArYlcrb09IdHI3OHNzdmI5cTB4YUEzcjF5eGV1cUNHV01peGt1RytrdkVRVlEvOEtvQ0dRV01IQm80UE1oL1pIRGdxTkZEaG84SwpIRHhpNEtBUkF3Skd3MFd6Qi9yZk8zRFFLRUNvNFVNa1EvMEdCQWVORzMxZnlLQUEvK0xONVlEYSs5LzhJa1QvVWlSZEg4OVVod0pQCjJHc2krTllKOXRZeHpoTnhmTk16YkNuQzZqaXJYaEJVTnB2YWJ0YzRiQnFuWFF1U1pkTzZCSENzQjNIWWRHTEFjWllUY2J1TStVNVQKanNPN2tyTFZZS00xVnRwZ0puRUZSZ1B1eE5yT1JEcmZCSW0xdnpMWmRuS0swSkVnbklqamJndkFqWmc0RHE2dkU4dTJ4UWtkTVZ4SApsTFV0d3RvV1JyZkVzSERSWjFFL1lUUzRFVTU5Q0NYYnhsTW52QUNxQ2FVYVFzQTkyZVlFcm1ZT2YxVE5zNnpka090UzVyb1E4TUNLCjdDWXZnTEE3QWNqRm0xeTh4Y2FhV0xnSkJ1SUZFSUlRdXBYa3B1bDhEUUFRZEkrdERTU0Jid0FBOHRHblYwUUp3WGhyUWhGMFl6alYKRUViV2grQW43NlBhSjVGVks1aGlxOHVjN3pZVnVPaU4yWEFwb044Rm9JMVpYRThBT1hsS0JCQ0c2WEhjcXg5U2l4RmRBREpaREQwQgpwTERvZkFDS3dDcTk5YlpxQUtCSmVEWElkUE1Mait2Y0c3VGFEVG9OQUZBcW9oUUJKRGVxUkFCMTZVY0VrQy9oMURFUTcrVDI0M0JQClUydVZtQWkrS296MUdxZ2JRQlBKNmdrRWRJOXZ5Wjh1K2xpOEhkQjNCVkE4Y2VSUnN5c1ZVY3VNbVY0QUtmL1RBUElheU96TG9qeUwKbU50SHhNdzlETlN6TndneVNLd1BMY3BTcGRzTVBHL0pkZUkrQUpWa0V5QWI4OEcxT0xveEQ5L21wQnFmVXI0elRmUFg2YWEzWjVxQQpnZDZaQ1Jra0draGtrRmdLK213MnJBYjVHb044Nlh0dTdsc1p1bnY2S3VkWGZkTXZkUHFtTDNwNnBxOUMraUxtdHZTbHovODRnSG8rCnovOENnTDVkQkFGMHFSdEFRRCsvUEdpNytxQnc3U0ViMEk4SDZPY3g3K0tIM3NFdnFCOHZnRVQ5ZEQ3dGhQcDVncis1ak51ZXV2dCsKYStNRXBtTUtmaWFNYUU4Z0cwTG9NejRBclRKQUFLVjBBeWhkdjhGb3luQlRoaTA4VVc2bnQyV3hRRHplZFlCdWpZTGROZ1RtWkxjNApySnZndHZBUVFMbFdpNE5DZUVKbk1zdDBSamptQmZXRFpvb0EwaGpTZEhpS1VyTXVXWTA4WW5sK0tubHFncVkxek5BeFh0TThUbE1qClpxeTZHc1QzNmIycXl2dlVWV00wVmFHS3ZWTXlTeDVPdFNRbXJsY21QcEV1ZnhZa1EvRmNwbktWVkxVYWZCUWpsU2NxMWNsYVF3ckYKS3F5QzNHcVRVbHc2NTVCYkJiV1Yxd21jaWFFMERLMUN6ZElxYndXb1lzYzJ5UURKa0tHU0llQXNPQlRPUVFzZUhoQTRmQkJjbTdlLwpqQm8yR3M3UER4bzRZcGpmUGNPSGpCb3ljRVNnWlBqUWdjTURBOEdwZDliMEJNKzFHMzgrLyttVGlIS0RTWnBoU0pick0xZXBNcDVpCkxBL1J5SlBhOU53OGw2ZnpXbTE3ZllEL2dDRHdUWWNHREIwU0NLZS9qUXdLQ2g0T3p0RERnZ2YzbTVIRDRYbDZlSUJmY0ZBZzRCbzQKbzQ4TURCZzllT2lJRVhEZFJYRUk3SzIzLzVTdVN4Y3JRQTl4NXNkWjR3cGF1eFpYcGxwa1VpUkRxYy9RNkRKa3VqU3BPaVZWTFYragpGUjYzdkRDZmFwM0dua3ZnWHdFQWl1ZGZpMlZmbVd3OXRkSld1YTFrUy9OR1cyVlo4WjBBMUx4elMrUDJVZ0NneWkxNXRUczM3ZDljCnVObkJGd3Fza3lZRkVtTkpsQ2JNS0lhWU1RT0M2clZtalFwRjAxSHo0MlpYaEg3dmFGM3QvZHJERDJnT2pWRFVEWkh1Qzh4NGVaajAKNWRIcVEvZnJqNHd4d0l3ekhwdGtxazJnVzZkYlcyWmI2eDl6ZDZ6YitJcDY5MzlaajM5eThOeGZUNzMvNWZ1WHIzL1hDVXVEd0VhZApONjk0T3E5Y3YzTDVxeTgrL2NQcloydU9IZHBTVW1EV2ExYXZmR3JKbkZsalFoOFlNaXBvb0Q5Y2lCSllKMkNBWk9nZ1NYQ0FKSGl3ClpOVFErMGFQdkdmb01NazlJd2VESjNQOHlDR0JFc25EaStkN3JsNTY1M3ZQWEtGeEFsWWZ4WFZNQXFTd3RzUXo3UW5VMldqcnFURCsKeEV4cjNWcW1BTFhLN05aTWdkZmFCQjJJM2FaMzJneGlISUxlWVRlS3Nkc1FNVTZIeVFWSTRURG1PbEczZzNEYkxHNE9zVnVOR0lHcQpVWElCVnptRGI0aTFuWXF5bjR1em41NW03NWhxYXdjQkRCSXptVy92bVNsQ1Z6VW9sbXYxRG1LMngvTHQwV3dyNEE0SUhQbWk0TTVmCmNNOHZISGIvaktmYndUOEhBb2h1RG1GUFJIQ05zOW1EeTdoZHBHQUJZaXR3YUxKZFp1Q2VJanNDQWc3dU5BUUc5T1BnTGVCQ3dyc0UKSWdRUU9Ic2FjTzB5Y3Z0a3JnRUFLRUdvamJLMVJOaUJ6QnJ1cEorZUFPcldEMHdZMlJCaGFiM1AyajZhUERXTDJLOTNXdk95alBsMgpNdGVOaWdEYW5FUGRXZ3JvMXdCVTZHVHk3RXhQQUpHRVdRUVEwSThQUU9CSDFOeWpBcVExcW4wQW1vN3VFd0VVaWRYRllFZkRpS29RCnNtNHl1dThoWGVrNnJXNjlEbHhtcVFHQXhGR3diZ0I1bDNJV0FSUUtKN2ZEVExJZWk0VHoyMkdpckZBLzBXeTFtQ2dia0xXM0R0UTEKL2dVQk5CNnZIRytzRmFkOWhacHVBU2pjVWgrRzFuZ3JVVEFSZUowdnNXaFRPQUFRZVdpWkpRczhKaGw0NXpWRDRzZ3RtVDBOMUswZgoyYityQ2JvWGdHN0YyeFBkWFEyQ3R5eklzY3pQTnM5M3c0L2RETG9sb1VWWjZsUUI0UVFSUUpnSW9HSTNYdWFpTnVhUjVkbm8xaXp6CmxqenFVSkxtYjFOVi96WGQ4TGRaL1J2b2s5bmRwYURaUFJqay9lZ3JDNGw5UXIyNmhYckcxem4wMjNOSDVjeWplK2FydVZSWDVzR0IKT1pCZU04bjdhcVBmOUJWTTcvU2x6LzhHZ0h4UDcrOEZFTkNQRDBDWEYzTnc4QXVXZit4ZUFQRzNBUFNrQXdEb3ByZjhBejRDL2R4NAp4blZ6aGRQemxBTUM2RW5oeXBPTVdyMS9qTFVseEhvMkhqMDNpV3FPb2VDQ1FCRkVSeXpSSDRDUVJJTXAzWWxyTjdIWVZoc2xBbWhQCnR1MkZQRGdadmkrQXRyaTZBTFJSb0lwWlBJOUZYWXpKUmhsd1ZJbVlwQ0tBRkJnRWtOcVlya2N5cE5wMGpWYWFxcVBtcUxjbFdGOFoKWnprQlRpcWhlRU1vMVJGQ3RrOGs0SXdWTWVCVGVDUFJLaDVFRWJXenpEdWYwbk15VFRxbVdhRTNwZXVNYVdLMFNDcUl4cEFDZ3lRWgpMR2w2YzZxWmtGcklUTWFtcElRTTFpbWxCWVdWMXdnMkU4OGFPRlpyTW1jZVBiYnZSdWZOalJ1Zmh4dGdTU1QrZ0VHREFnZEovT0ZTCmZnTWwvcEtBZmhNZ2dTZlRBRC9ZdER0SU1tQWd2SEVRK0JJUVNkQ0ExYXRXM1B6bGF1MGZYbHVtbDZkWmxLbmFEV2s2NlZxOS9HbE0KczV4UXJOVW1rNGpxKzgvUGYvMzlkMlBHVHZRZkxCbmtOMkN3ZitBZ2Iyc3dYRDg2UUJMazMzOEdCOERlNGVCQmtrQS9PT0lESDUrZgpaTmdBV09rQVg3aGswZEp2di8zMnpiZGV6OUJuSk9zeVU0eTZSeW5zS2R5OHhxd0hIcEpyTTVTYU5MazJUYWJMU05OcU0xUVo2Y3EwCjlXclRjbVRqUXFKcXV2VmtISDk2Q25zNmpqOFhhejB6bVQzM09GOWZWbHpXVnNwVWw5MmxBbFRjdEdNek1GQk5lZUhoMHB6OXBia3YKRk9Wc2N6czJ1NTJGRGo3UHpycnRWa0VnV1lHZ0JSeGp6VHlEWUt4aExaMDFHVDA2QmoweEFXdWNhR2w0QURrelhOY3dSRlV6VkYwOQpHcW0vMzlKOG43bGhqTGxoSE5vMG1tZ2FqVFdPUXV2dnRkUStnTlhlYno1MnJ3RXVLWGUvcmlZY2JaaHViWGdzdTFHNnJjTjI3TTJLClUrOGMvYS96Zi92b3kzOWV1bjc1UnRlYVIrTENTMWQvdVhMKzA0dHZ2UGJYQXdlcVhkbEZjbzF4MmNvMXNUUG1qaHczWWZpOVFEdXcKcTM1UWtKL0VmNmpFYjlqQXdJQ0JnLzBhYXlxdjNQRG90NTk1UUhjc2dqMDFpVDB6aGo0VHliVENJaEI5TXBSdG5jZzNUV09Qcm1JYwpDSmRHODJtY29PRnRXaEM3VGVjTHJQb0kwRU11TzlMbElXL0FNZENHMjJYTXliTEFuUjlzK216ZVlMV2F6U1QrQlB2Q1l1N1FOS0VoCjJ0NFJiVHNKRW1rL0hXWTdHeUdjRVJQT24rNFo4TmpDT1BEd1RvWmF2ZUZPZ1V4a1RvVUM5ekFuWU9NejJRWUNudWR4bG5yNGtXZ1oKajlWTXdHc25NTzNqdVpNeFhOM0Q3QXZKY0xZNFVnQUFaRGRrT1FtUVlxZWh5S0h2RjBDaWdVUUE4YXhKQkJCS0cwMFVCTkFqMUo0NApIblpWSndqVkVmYVc4RzRBeGZDTnZrUURJWFVubklVSnM5WlBvc0h2ZmxkQ2lNWkl0RGFFYkh1QU9obE5WcTFtUyt4T29zaHR6blpiCllCZnNmdzlBTm80U0FZUVJ0d0JrL25VQUhRTzY2QUlRZVh3aVZSZVBIbG1zcjFpck5RQUFiZEJyVXhGMUR3Q3B2QUNpcTNvQ0NPZ24KakQwZXhSN3owZ2NtbW9VQWl1RnFZQncxa1VKMUdBdWJnY1Fsb1NHQXNHb2ZnQ2FaRzBRREFmMUVvQTM5QWlpU3FCY0JOSmtBQUhLbQpJdkplQVBKTmh2OVBBTWlYT3dISVd4Q0NBSUxKUnFHQjNKWmVCbHJvVW5rQmhBRUE1ZlVBVUlXRGdxVy9QR3k3emJDbGtObWpNUHgxCml2elAwdzEvblduMEdVZ0VFT3dIbW9XS0FPcHJJRjk4VFVKZEJ1cFRIT3A1MnU0YkgxeDZwYmQ3dWlzNi9ldG5iaitMNk54ZE5yOVAKUDdQLzF3RFU5NW5zeW44RFFPTDRWemVBdUJzK0FEMXVBd0M2dWVJV2dJQis0RXo0cHgyZHkrM2VDcER3NDNKeW1mSHdCR3R6S1B0cQpqT1ZjR05NWVNaOElaMjREVUxvWFFLbUlkd2pNbUtRM3B0bHhUUW1Md2xHdzJ3RWtHdWkyQ2xBV0J3QzB1YnNOQ0FESVRac2NGRUpoCmFwTlpCdHVBMEV3bExnVWZOYVlNZ3pFelE3OUdoeVNtNm8wTGtlM1JCSGdrcjBaUko2TEl4bWk4SFNRS2EvTkZ2Q1hTM0JLQm5nekQKejBTaXJkT1JsNS9RdWpPVkdvdHlIZmpieElXRjROcENwZ3l0T1ZObmtjS1kxeU5vS2pBUWFkWFNuSjV6NkFndWpYVm1XdTBRUUN4bgpZQmtkeDZyTkZ1bXg0L3ZCYWZLakR6N2NkL0NGWTFYN0RoOTk0ZkRoZ3dlUDFGVlhWeDQ1c1B2STRmMzlCblpoSDN2cHBjTzc5aDNlCnUvL0k4YjFIbXc4Y2FUeDBjSC9WZ1lNdkh0M2IwZDdrdWVuWjNWejNrREl0QlpHbTZSS1ROTkpraS9aSlErWXplRWFHTGttYitOeWYKVHJTQk0vUWZYLzFyUStXaEUzVXRqZFVubWhwcm0rdnJXcHJPVk5iWE50WTM5WnVheHZiYTJ0YjZtdGJHaHRicTFyWWo3ZTFWcmZYTgpqVWRhV21yQUg3YzB0WUx6L2FsWFRxUnAwOUlRT2Jnd2ZaeGduckZnaVFaRXBsRXBWVktGR2p6ejBoU0RiSU9XU05Wb01sVHBpV3JkCmNrUCtJdnp3Rkd0N2pIQjZNbnNpamowYmI0V2RRQThKVFZ1S3RuU1VrZ0EzZHdKUVE4VkdBS0RqbTNNYmRwUWUzMUt3cnlUbndPYmkKM2ZrNTVia3V1QVNMazh0M3NWa08ydTZrZUJkbHRlTnVobUVGS3BVdm5zazBoRmhmQ1FQblA3cHFQTlkyMXR4Mm42SHBma1BEZUVzegpPR0dIRVMxd0V5dTZKWTV1Qm1lZGFLb3BubTJMcEZyQ3lhNmwvTUJwTW94cEVodCtKNWhxeHV1ckorcHJ3czJORVV6MURHZlRvd1V0CjBwM251RU52YktsL3EvNVBuNzN4NFhlZmYvUE5wWjkvdnVicDlLb0lMZ1Q1MDgvZmYvYnBCeWZmZUhQLzRXTTVyaXg1Y3RyVER5OVAKaUo0OGV2Um9QYUs1Y2Qzendocy9SZXIyVGFZYXcvbHpFNWt6TWRiMk9PNUVxSEFpMG5vMmdqc1JLYlROc2RZbDBpV29GZUd0RnRhbQo0dXhxM3FZVzdCb1FlM2V5T0hXMm9NMjE2MEhBZ1p1SHQ0QzRiREtYUyt0Mkkza3ViWkZUVmVpRXEvOWI3YVNhejAwVU5qOWhlM20rCmNIeW1yVzZxclNITzFocGxhNThzTkl0SjRKdDZKcFpwVE9CYUVyaTJHTFlGVGlsbldxTG81bkNxRVY3YnNLY0JnOFpqemVEaW9XdmoKZDd4cFBONElXMHJ3MnZGTXgzaitUQnhiczV6Ym9iSmw1L0ZJaWFBckJMS3hVeUtBUUFDQTdqUU5IZ0RJenBtOUFETENMY0JFQUdINgpCK205Y1h5YkNLQklSMnVFbzkwTG9NWllvVW1NQ0tBb3RsNE1vQS9VRDFNWFN0V0hrTjRRalNEUnhMRm9yQVg4QUlSUjFROWlMeElPCjI4WUNiYjRYUUNVNStHOEgwQ1kzM3krQTBCNEFRdUdpWmRvN0FXaXRXUUFBaWlTT2lnQ0t4WStGVVpYajZicFk3T2dDL1M0QW9MVmEKSFFCUWNnOEFLUUNBUXBtamNFbEQ2a2dZZlJURXU2MHByUHBFMDVVeFRGV3N0Um9FUFB1K1JMSlZzYmE2V0Z0dGhCWHc2a2dJZFh3QwpVVFhXVWduUWM2djJjNGRocjU2QmI1cDQweXpzcFpWR1d6cWlrcG5sbVNpY0JlYXJBS2x4dVFhVHExR1p4aXdGVVpoVkt2aHZWaU9FCnprekNwWnhJV2svQnhpNDliVFVBQXpHYzNnc2dEY2txQ2FzQ296SU5WcW1lbFdwSm1RaWcrZG1HQmJsbzc4S1BONko0N2g3dm9OaXQKVXRBaUo3cVcxMU9DRWRDbjFJNFZPSWdTRjdFeEM3SjNoNTNJTDZZcXNyRE5XYVlYV09MMTJZclhwaUYvbTJFRUFRQUNFWXRBNzg1RwozKzJlR3VhYklDYm00N2x3WEt3bmlTNzRNcGZwTjEvTXRmNnU5QVhOM2ROWEZXSnVQYkRmbHI2VTZadlBaeEcvSzdkOTdlMWppSGZ5Cm9pODlDMndYNW5mbDh3Vk16d0QwK0NJeVNGei9VTnpRVFZ3Q0VlcG5FUWYwODhNaVdBSDZlYWx3WmFudDZvTjJvSitiRHdzM0hyRjUKMjU5aCthZXJBV2lGL1ljMUJaNFZEczhUOU04cnM2NnVjSHFXa1RjZUoxclhiSTJtamsxZ1hrc2dUa3kwTnNSVHIwMGd6MFRCOTUyTwpDTEp4RHJyck9RUkxNeVNsR2hQVGpDbHlRMHFhS1VtQkpGTzRzcGhEWVIrMG5kbnA1bmZrMlhibk9zWDRsa1BjNmJidHlCSzJ1cmd5Cko3dkpScGNJWkRGUEZGalJITWJzcHVCY01BdXFBQzRScDRNQm1nQVBvVWFaVHF2UWFxWHI5UFFzeTZGUS9JOFIrQjlpaUk1SXVqRWMKYjR2RTI2S0lkbTlhUWFKeG1GaHpNM2hEQko5R2tNMlQ4ZU1QSVZ0UzFBUWlTemZwTmlDR1pMMFJ6dHRYbVZJQmczU0dkSU1oVTYrWAowaGExaXpBVWMrWWlGbkhSQ29HVFcvbE1tMU50NVdVMmg1Ymw0VmdZUmlwejh0aDMzbjN6eXRYTE56dXZlQmNLdXQ0SmMxUE1GYysxCmE1NXJOenF2M3V5ODZnSHhycW5jNmJuMms4ZGJYb0IxaGs3NE9XemZ2dW01ZXNWekU5em41aThlejErK09xOTJNcXYwNmFtVzlBM2EKTmNsNitScDVZcG9tVWFsWWJaU3ROYVN2eTNhd0gxLzRTS3hSaU90RVgrMk85L2o2TmMvMTY1NXIzdjd2Njc3bG5MdVhib1pmNTRzSApMdXpjNmIzRGxYYy8rOUNSSjZoMEtXa0c1WE1XNnlKOHp4SjA1NU9tNGtRdHBwTW5HUlNybE5xVVpFUUxPemU5U2RabzFtbnhaYWFTCk9WUnROUCtIYU82VmVTdzR5NzRTeWI2eGdUdXdiOVBtdXRLYyt2Sk5UZVZGemR1S3hRbndMZHMzTmxlVU5tNkhxZDhHVTF1K3NicTgKOU9qVzB2MmJDL2NVNSs0cWNGZmt1TGE0N2NWdWU2NWJjR1N4bkpObTdMVFZ3VGhZRys4MHBOdXlaOU4xSVN6NFVld0lKZG9uVXZYMwptWnZ1TVRiY1k2eDdBRzBhUjdTT0o5c21VRzBUNlhad0NnLzF6bUFLWTA3QUhSdTZFOG0yZzBSNFcxN0NtZFl3Y0tiMFppSlJGNExWCmpqZFhqVFVlSDRNY0cyczROdDVZT2NGVU5aZXBmTXpWbUZqYVFiNzBlbG5qMjVXdmYvTGErMTkvK00zVkgzNjVEbC95cnFmeCtzVnYKdnJqdzZYdlhmL24yNUVYUG84NkdTWGh6R1A5cURBdGMyQmJMdEFCU1JITm5ZL20yQ09GTXBQRG1RcllxbGJXam5JS3lhY1FlSUxITApSNHhMZ01teWlUR0lBYmM0T1FPSWc5TTZlYTNUcnM1MmEzTnlrSUljWTJFV1VtTFhGOXNNT1N6QzA2aVo0ak9ab21mWlhVdTRBelBaClkvT3N4MmRacTZkYTYrT3NyZEhXRXpIc3lWanVWQngzS3BKdkFvbmdHc081UnFESkVMWStoRzBFbVVDZEFBRlBJM2d5eCtJdFkvRm0KTVE4UUxmZFJKKzVsVGs2MHRzM2lqejNMbCtsNW00M3ZXdkRRMS9IVDNmUURiN2sxK0dVM3U3MmJ3R2NKWmhkcmRySVkrQTJ5Y0hxQwp0TENZeGtTb2t5bmJWT0g0RkZ0VnZLMHV6dFlZYld1S3NyVkVleFBGdDRGRWNxMFJiRXU0dFJuaWxRWkthNFM5Mk4yRm56RHlWaUtvCnVoQ3FLWXFvRGFmZytrQ0pmRW1ldzFDWWJSWUJ0REdYMnBRSDI0QzhET0s2MWtLRXNZbXJJSW9yUVlOc3pPS0tIVXllQUh1QTRJYncKM21ud0xJM2hoQW1HaEF4Q0NaMElJQk9xMTJCNm5VbXJNUnFVSnFQS3JGYVkxQ3ZOV2JQUXZXRkVWWVEza1hoVkZINDhCanNlaThJOApabkN2MTRLcmk5UjB2VFRScEUwendxM2dwWWhlRWtJZkFSSDE0d01RQ05CUHZ3Q0tacXRGQUVXeWxiQnQ2TmNBMUpjK2tVUURTQlI0Cmwrd0NFSitKS1BvQ1NBVU1oTUtvTEZLMUtSTUFTR2xSYXpGTlR3QjVEZFEvZ0hCYWlyQXlINEFldDZsRUFQVlQrL2x0OFg2aGQxRE0KeTZERkxteU4wQStBTnVVUUZTNnlLSi9hNnNaS3M0dzdCZkxFWTlvM0orditNdU9XZ1h3TjBUMm5odlV5a0FpZ3ZnWTZQNGZ1TjMySgpjL2YwSmM3ZDA1YysvMzhCNkU3NWR3RkkxRS9YK05jU3ZodEFnZzlBbmQ2bG43c0JsT1ZaYWJ2MlRMNEh0djVZcnoyZGZlTnBoK2RKCjNQTVFVWjc4UFBnZG5raS9Ga08waFRKMThjUzU4ZFFaQUE0dmdKcHZCMUNxQ0NDNUlZbkVGSVdzWlN0UC9pcUF5cjF0UUp2dFRLbU4KQWdBcVpMRTgycHhObThBN0kyWlI2SXh3SVVSZ0lDMHFSU3d5czBXdVF0T2xpUHhwZ3kzZWNuQWNkV1lpM1JGT05Fd2lHa1BKMHlBaAp4S2tRNGd6SVJQeTBtSERpOUNUaTdFVHlIUGlqR0xSbUNiSTVWWTJnc2pWNlE3TEJsS3BEMDdSb2hzWUNpMEI2SkFNeFpuS1l6azJiCndjUFliTU5MZUZNV3BiQnpjbGFRMjJ4S2pwUFpuVHJlcG5XNkxLeUFnUHR6Z2xtd1VWbHVQci9BWFZTY1c3cTVzR3pieG9vZFc3ZnYKTEMvZnMyM2I3dklkdThxZjM3WHRoUmUyN2RsVHNlZkY3YnRmck5pMVovdnUzV1hnOXR5ZCs5SHQ3Y3J0YjJwMy9CRjkvbFh6enROSQpSYXRpMDVGa2Q5a2pHdjBxZ3pMZGxDRXpKaWFEOTBkZGFpYVNLbFdzTWFtVFRhcU0xTFFOY3FOR2xadWpMc2hURnhkb05oYnB0cFFpCld6ZVp0bTRHY1paa3UwcXpzMHF6czB0elFQSTJadWVYd2hTVjVZc3BLU3NRczZtc0VLUmtTMmx4Y1pZemkwRjVZb00wVWFwT1NqT28KbnpGYlo1Rkg1eEtIbHFMYlZ4a2NVcVZDclV5VTZUSVNqZnAwblNwRnAwelRLbE0xcXZWYTgzSmp3WHppU0lMMWJCVC95bXkySlY1NApKWnAvTTkyKzc4RG0wcnFON29hdEpmOENnRFpuMjR1eWJBQkFUaGNFa05WR3MzYkc3Z1dRek9hZXg5Uk1ZazkyQVloc3ZOL1NEQUEwCkdxbTkzOUw0MndIVU42S0hKbEhOb1dRVCtIRUNDU09iUUlaYlRvMUNUNDQyTnQycnJ4Nm5QeHFxUHhoak9qU0RxbDdBVmEzZjhvcHAKNzEvY05YL2Y5OXFGVSs5OTkrYUhYLzN4L1F2U3JhZmlUWWRpaExOUjl0ZGlyTzFUdWZiSjNNazR4eHMrQUlIbnh3c2dBZU1CZ05SZApUZENDMW1lZ3V3UEl6bXJzck5yR3d5cVJ5NlhQemtJSzNBZ3dVSGEyTVR2TGxPUEFjdXkwM2NiU0FvZHdqSW9sMXd2bHovSGJuK0QzCkxPVVB6T0dQVCtOcXAzQjFrN21HQkxvOW5tbVBvenBpeUpPUjVLbHc0bXdZZGpZVVB6c0o2d0FKUmR0QlF0QVdNYUZZNjBTMEpoeXYKbkVJZVhrSy9zSnJkcU9Yc2dvRG0yN3AyZmY5ZEFISlpJWUF3TDRDc3VNWklhcE1vNTFTaGFvcFFFeWZVQWYxRUNzMlJBcHhsQm9uRwp0dlNpajg4OXZmUVRUaldDUzdKSXVoNjhnbEZrSGZnVVhLZXQ1VGRtT2N6L2l3QUtKNnNqdllraXFxT0p5bGk4TWc2RGVSakpYYWN6ClNiWHBQZ0RKRUMrQUpsS0hBWURFQ3BBNEg3NFhnSHJxcHd0QWZHMk1VQlBOVjBkWUs4T29TZ0NnY1doVkx3RGRxZndqNnFjYlFBMDkKQVNTdUE2UkE1ZDdKOEFvVjZvMUZyalRMRkNaWUFSSUJaQ1QxRmtyLzZ3Q2laQUJBNGhCWUNpVUZBRnFZYlZnSUFlUWQyTXF4TElUVgpvSjdwTFo2KzhYMHR5S0lzQ0NEU1ppeTBtNHU3QWJUWkJmZUJMM2RUbTdMSnplQW5JTXU0MVVWVXBwai9HQS9iZ0VRRGlRQVNtNEZBCnhEcFExNGhZRHdQNXhzVjhCdW9PMVc4K244UDhydlNsek4zVGx5bGkraExuN3VuN04vUktYOS84YW03NzhqN0V1WHYrWFFBUzlmUEQKSXJZSGdIZ2ZnRzQrSmdBQWVaYUxIZEF3MTUvaFBFL21lSjV5WEg5S3VQR2syL01VNjFsbXViNlV6bER2RzQrRGs4RnI4TnhBVjA4bQpUZ0YyaEJOTlBRQkU5QVVRYnBIbFdrMWJlRUlFa0hjcG9GOEJFT3dCOGdJb243SGtVaVk3YVFCdmppYXpETkJFTEFKcExIQ1VTazhuCkt5enFwNUhzS2VoaGNUWktOTGpndzlwaThHWVFjQTBEZnBFamNaZ0lyQlVrR20rTklFNkdFR2NuRUs5RW9ZMkxrYklramQ2a2VNNWcKU1FQUldsTFZSdGdBQkw0UlJXaDRCaW15WXBzRXFrd2d0OXFKSWhaeEVnbzdxNFRYNkE2MU9GdUh0U3BaVHVkMFlZeFZaMEF5REVhNQpHSzArVTZYTlZHb3k1S28wcVNJbFRaMmFwa3pPa0cyUUtaSlVxbFNOSmxXbFNaR3JrOVNLTlhMbHMrc1Y2K1puR01jbWx3WW1IUmlhCmZ1aGUrZDRReGU1b3pjNVlXZTRzS2YyMEVVOHk2MUsweVJtYWRldVVpZXMxaWVsSWNxWjZnMEtScU5aa3BxZ3luNUduenpBWlFLYVoKZGRNdDJwa2dKdlVjbzNxdVVmbDA1aXFRRmRMbm5zbDg3am5wcXVla3o2NlJQZ2VTcUhnbVNmbXNtRlRsY3lCcHFsVWdHYXAwcFRvcApLV05Wc2pvdFRadUJZT3AwSS9LTVNaakt0RTZsbTJZVFJ4OHpiZHlneGFRYWFZYjNuVHBESndOSjE4clROSW9rRGJKUzcxcGllV0VHClZSY2huSjBHaHpCZUJRWlNaNzE4ZEV0Ui9TYTREUFJ2QWRDUnNwSjltd3BlS01wNVBqOXJXN1p6azl0VzZPNE5JSUd6Q1E2anl1NVkKYkQwYWJvVUFnaXNVazgwaWdFWVphdTQxMVkvRld5WlE3VUEvdlFBVVptMzNBVWlzL1lDSTdvbmlPc1NFczIyM3dyVDZpa053d3ltcQpMWnhvQ2NPYncvQkdjVVVWY0JCalBCS05ISTVBam9UcURrL1VINDdDNjhIUDRVUmo1UlRUd1JpaUljRUZ4VE9aYlFmUFNTejR2dHlyCk1meTVPS0U5V2pnTEFMU1lyVXF6UWdBeHdtMEFFbk4zQU5tc2F0NnFaUmtkaU1EQysyZGxHZHc1cHR3Y2JYNjJ2c2hwMkdnM2JoVGcKc0ZTUlRWbGdsem50RnM2TzRqWndiNXVNejBybDhoSzV3ZzFjOFZQc3p1WE04MDh3dXg2bFgzeUlmSGt4dVc4QmNYQStmbWdSc1YvTQpRbnpmUXZ4bGtFWEVYcEJIcVYxUDArWEpUSkhXNnFCNXlta3o1OWlOZVE3RDd3V1Frek1DQUxHY3dRc2dNNDFyZEtSaEhabVR3TlhFCmM3VXhmQ053VDdnWWEzTzR0VGQ2dWthN3Vzcy9QdnFJK3ZFQ0NCNUgwN1hnSThEUUNyWUMvUHdVM0E0Z2NTN1luUUJVbG11N0M0QXcKM0FoRDZEQ3ZmbjRWUUtKK2VnSkl6QkpqOFdvZG5xN0pTRFhJa293QVFDb1pvcFFaRFpJSjVDRmdvSjRBaXFCaDdnUWdieWNRTUZDTgphS0J3dWlxVXFCeVB3d3FRci9mNVRnRHk2UWNrR21zQ1A4U3owVDNQOUFDUXNodEEzbzRmR0lWWkpqZEo0Und4ay9MM0FZaVJpd0RTCkV0SlVRcmFNVnkxeUd4Ym4zQUpRSHdQMTVrNS91WFgvUlc1OHRVMVBDRWd2QUcxMW9XVzVOSEJQYVM1UjVEWnV5aUZlUXNuWHA4dmUKbXFZWERTU09nb241K3d5VHJ4UWtHa2hra0RoQnJKZUU3ZzZndmpVaE1SZG0zeUY5YVBJL2s3N2krVy9xNS9QL1F3QmlmUUQ2WlFrSApBSFI5cVFEMDAva0lEN3QvdWdEa3ZMbkNtNVdzNTRrc3VCdjhrL1lyNE9OeXl2TW8rdEdqemlsNDdSajhaQ1QrMmtUR0N5RHk1SGptCmRCZ0IyNHE5QU5vdFRvUDNBU2pEbUNUVEo1cU5HVm0wb1ZUQXkrMzBqaXk0SWNhZEFDU3VCOTF6Sm55QkZSV0xRRFpDVDFoZ0s3VGEKM0dVZ0VBSlAxSmxWNjR6T1JlWVhZL0JHZ0pzbzlGU002V1FrMmh5Qk5ZZWpUZUZveXlTMEpReHJtNFREeEZ1T3gySU5FZmpwRVB5VgpTTFIxam5ISE0xcFVxbHlMNkZOTlNMckZtSUdacGJSWmJpTzBlYnlsMUVsdHRtSmJlWEl6YXltMm1ySndKV3ZLRUNpRms5ZmFlSlhECnBuRTVZRjhxejJrRVh1OXlvRHhySUNrdFFXb3dRb1BpYWd1aEJtK0lKa0pyeERWNlVxVkQ1UWF6ekl3cWNVSU5Zc0dVUmxSdXRtUWcKYUhxR1NmYWtEcHVsekU1UWxrM1hibG1FbEQ2b3ozMWM3M3dXb2Rkb3RCbG1UWm8rTlYyZm5LNVBTdFpzV0tkYXUxNjlGbnlhb1U1TwpVMmVrR0RWcnpQcWxCQXF5QkRjdHdZMFBZYnBIVWMzalp0VXlzMnFESVFra0VVbE9ScEpTak1tcFNESWdLWWpVdEY1bTNnQWl0eVFxCnpJbEtTNUlZdVRuRGhHZXF6V21aWm1VbUlsZWJBR3YwejVpY0NjekplT3RwWUtBbHdMaDZMbDJyek5UQlJhSmx1b3hNblJReVNDc0YKckZ1dFpZQ1FGcUl2eFFobnAvSWRFY0lyMDRTVFdNN3Vxcks4eGkxd0oxUUFvSmFLcmpXZyt3VlExZFlTSDRCMjVybTI1dHdHSU1GQgpjemFhdHpNOGI3UFpqUWE3OEFpN0x3b094SndJcFpzbkVxMWpzRllBb0pINjZ0Rkk3UmlzV1FUUUJLck5CeUJvSUd1N0wzQ1RjNllsCnpOb0s0aE5QQk5jT01BMFN5dnJ1MWdaRHRjYVNqYkZVY3h3TkhITXlsanNUeFo2SllNNkVXODlNNXM1RzRtMFJSSHVzRmM2SW5JaUIKYjNjUzNKNWdiWnRzZnpXS2Z3VTh5Qm0ya3pQNTluaitkQVQvV2h4L05sNkF6Vkl4WEJlQWNFNWhGYUNxUlFDSkVRSGtSVS8vQU9KWgpGYUFQVFhzM1pLQUF4elcwWFUrNkxJQStKUzQ5Q0d4RDl1NEltZWVrczEzV1VydXEySzRzdEd2eUJFMk9UWmNOL25JZWhoWlFVckJnClBHcm1jWVFqdEJ5dFpoa1ZCMnhsMDFnRmpaVVRvMlZaRUIzSGtWYUdZMGtYYjhrWGpBV0FQblk0MTkzcEpIOC9nQXhPQnJXeWVwVFYKQVFDQnF3NDFoVHhMNU1leGRURXNYTjBIdUFlOFFPREZCVmRjQURjKzhmUkt2L3FCQUtLYWdIdWltTG93Qmh3MFBrenZSbXdPQUtBaQo3MFN3WHdVUU5GQTNnRXFjMXA0QUVsaXlMNERFSnVqZkNLQW9vaks2T3d1TVc1L1JzNmthUllwT25vaG9ZTmNOQkpCT0FuZTNvSTVNCm9vNkcwVjBMQWtVeWxSRTByQUQxSGY4Q2llY2hnR0w0eWpnYlpCQmNHWWlzbW9oVml2cnBCYUE3bFgrOEFHcUlCZ0RDZGo5alpLVUcKaGR3RUFLUVMwU05HYnBHQnlNeFNxU2t6MDVqeEx3REk0RzJDMXVKeUFLQW5BSUJjeUdJM3VpamI0Z3Z3MEcrSXVVZHUzYjRnRzMvTwpwc2NFcE1CbUVnRlVta1dLQUFJdmVZV0RBaTkvVVk2cEpBL2I1bUE2SGxIOGNhcE9OSkN2RzFvY0VmUE5DK3ZMb0o0UzZ0RXJUZldiCnZ2UzVlL3JTUk16NTJjUi9OSDNSY3lmNlhKaUpnL1M5WFV6UHY3UG40KzlMbkx2bjN3Y2dxQitRSHhkYmYxN01BZ0FCL1Z4L2tMdjUKTUNjQ0NFREg4NVNqRzBEZ1dMajVGQUNRdy9PWTQvTFROczl5elBNZ2VYalZ4aEZzNjFqMFZEUjJGdlpCMDdWeFpIc0kzQWpzSkhpNwp2dzFBNEVSclRKZnJVMFVBR1pBMFFJcGlIaXR6d1BXZ2Q4Rzl3TzRHSUxnam1IY2lXQW5YVlFUS0kwMHV3c0JhMUtoUnBrZGd0N0xTCm1DWTNwcEdtVkNPcXlNQ3A1ZmlXbVZoZEdQWmFDUDVHT0hZcW1td1RXMy9FOGcrSStPa2t2RFVFQitlbmN4T3hWeU1zTGJPTnUxYnEKYUhEaFJXalRyRWFaRzljVldzMmxITGFadzRGN3lnV3FqRFlEL2VTVGVoZW1ZcEEwVEpmRTRqSVhwd05ubzJ3SEFqN211OUdjTEl1TgowNFByYjNBdGJ1T05MT2ZkMXBIUmsxWURialZnakI2MTZvMk1GaUZVSmt5Qmt4b2EvQkdseGtpbGhWQ1lLYVVCQisrUCttU0RZUzBJCm9rMDFhT1VHcmRLc0E3YlFHTklVcWxVNnczcXA2bGtwc2lGVnZ6NWR0ejRkU2R5Z1d3OGtsS1pKVGxMQlpZR2VVS2V1TUdsZ3pLcG4KemNwVkp2azZzelRSS0UwMVpxWWp5V0xBQzVGcFNwWWFrMlhtSkJBRmxnNmlSTk5WV0lZYXo5VGdtZUJLREVSRHlCRWlYV05KbGFISwpESU5NRFZmNk1UOW55WnJLdE1HT1pycDlQbjVnSlpLZHB0WEt0V2tLWGFwQ2x5N1Z5ekwxY2dDZ05JMWl2ZGE4d3VCNnpMUUp6cXptCjJzUDVjM081UmtkK1JlMFdkMU9adTNGclBpei8zQTZnaGdxNEMxaER4VVlmZ0E1dktkNjdNWDkzWWZhT1hPZVdIRWVwMjFhUUpiamQKUEFBUWI2ZEVBSEc4eldtM1lIYnFLVzUzTE4wQkFEU1JhUnhQdG8zRjIrNHpOd0VBalRMVTNHK0J0d0Q5akNkYnhZRXdrQkNtUThTTgpHSkUrZlFQb0k4WkhKVys1cUNPS09SVkpud3lIT1Ezb0U4bStHczIvRGhKR3Z4ckZ2WkVndkQ3Rjl1bzA0ZlEwYTlzMHBuazIyd0lyClBZNDNnSk1tMjg1T0YwNU10cmFDZzNqbm13bjh1U2xDVzZ6dFREei94bEsyS3QzS2s1eXNGNERFQ2xBM2V1NEFJS3ZheWlJMFk3RlMKWm83VUFYOGpEQ0pqQ1l5MzBVNnJQUmZMTGtEeThuVjVPY1pjTjVrSFR1RmVsT1E3elBsT3VFSVBDRGhCZ0d6bVRhVzhzVVF3RnZGSQp2ZzNKc1JteTdUcTNYUWVRMUNQQVRKcGN1emJQb1N0aEZDVldaUkduS2JSQi9lUTUwUnlIeGUyMC9Hc0E0cXdJWmdVQU1vS0xCemxwCmZob3ZqYmJXUjFvYnV2WFRHa0kxaGNDQnlON3U4ZFYrUlBmY0t2d0E5MUJOc0JoTXQ4Y3dkUUJBazZ6d2xybjBrUXhiWVc2MjZVNEEKNm1iUWJRQUMyZVRtNFc0WU5pWkhvTndDTFFLSVkvQytBQUw2K1ZVQWVmVURBZVRMTFBQdTVRWm5za2FUckZjQ0FNRkxDNlBpRm9CQwp5VnNHOHU3cjNyc0RPcDZyOVFFSUpGYW9Bb2tUYW1PNG1uQzZwaGVBZmxVL0VFQndNZWphbmdDU3cwRXVPTlVMcmdaa1ZzZ3RzQ3dFCkx0MUEwbzIvZXdnTW94VmVBQ2w2QW1oSkZnRFFiVm1jZzNXbkwzM3VDcUJjNGxtNzNpSVl3RThuQUZDaGt3UUEydUxDeXJPdzBqeHEKdTVNdXpjS0w4c3pGdWVZdE9kVGhaQzBBMEorNmkwREFRSkJCdDdkRit4ajBuamM5bTZOOWl3WjVlNE42MDBkTTM1clEzZE9YSnY4ego2VXVmZmdFazZ1Zi9Jd0Q1OUNNQ0NKWi9IdVJBZ0g0OGp3cWVaVFpvbmFmRkNwRDlCaERQRTg2clQ3bHVnb05IN0Q4dFp6MVBtQzgrClpOUEw5Z1l6SnlkWVRrYWo0SUlicnVJUG5CRkJuWmhFZG5nQjFBb0JaS0I2QWdpZWNmV0pPbjBLaTZrS2VIU3pBNjRIZlJjQWlidWkKbG5uWGcrNHFBbG14UWdZdFlsQmdJQ2V1dDVwVkZrU3FONlNyZENseVhiTFJrS2JCWkRKYXY0N2tsMkM3STdIMjhlUlpjTEU0a1R3MwprVG9MRzREd2s2Rm8reVFVam4rQmpDVmhQMUE0ZmlJZWJaNkxIbHVPVmNoeGdTQ1FIQndwcEMxYldISzdqZDRoME50NVlpdUxsbGt0CkpiU3VnTmJaTVRsbFRqZnFrNDJhUkJaWFpGbU5jTmF4eXd3dW5kMkNJY2RwY3R1UkxNRUkzdGtGemdUWHRLVjFCS1hGYVoyRjBwb28KRFlpQlV1c3hCUUFRdUIzeWlOYmdsQXFqVkNaYWJjRDBHcU5SWVFSdklHa2FkSVBlbkd4QTRKUTBneW5kWkV6V2E5ZGlXSXBHdDFxbQpXNTJwVzVXcFhTc3pwU1RyRTVPMTZ3R0FVdFFwaVVqNmVsUyszcGkrMXBTK3hwaXl6cGkwSGtrQ2QwalRKV2JvTjJUcWsyRU1pVklrClNRWmVpMjRBS1ZHcEdCVW0wMkJ5TFE3ZWlCUTZRcW13WkdyTVNWbzBUVTFvd0p1ZTFpRE4xQ01yZGR3TXFpNmVBZWVTVTdPSTQwK1kKUzFOMEZxVkdxdEtraUFES01NakZnYkJralhhMWxscGhjTTlnYXFleFRlREUveUJYVTFTNHBXR0xBK2lub2J5d0Y0Q2F0b242NlEyZwpsMHZ6ZGhXNHQrYzRBSUNLM1VKZU40QUVHOFVMdEdCanJJTERaY01ZQjdxSzN4WkhRUUNGc0kzamlaUGppUGI3TGMxQVB5TjBWZmNZCjY3eWpZSGNEVUFSUVdvL1JMaCtBeEZwUlY4V0k3b0R6SEswbkk5bFRDY3pKQkdzSHlHU21JNTVxQVM0RTFwbE1OVStsV21heUp3QVEKWTRpMk9QWnNEQTg4OUZxczg4OEFRQW1PMXhOc3I4eDB2aVorNFZUaGJMeHdickx3Q2dCUXZOQUZvRXdHQW9qbDRlaXEyQVR0NndINgpGUUJ4T29ZMVVsWUxUUnM0VW9QakdobU9yeUZzUzVrZFQzS2IxanNkcW13VGxTUFB6c25ZbUNVdHo1SVhabG5ndVQvTERBSU9Dckx3ClBCZVY3WVMvYUNBbEFsNWlRNHZzWnErTmtId25VaWhnM2xqRWdEOENnWDJsTmhNNHlIUGd1VTRTcnJUaU5KVTZkSnNjNnQ4TklGNEgKQU1ReUNMaE9JQ2dEK0tYSUpMRmwrTllJcGo2TWFRUnFnZXNNZGV0SEJGQ3ZwaCtRU2QwTC8vVFNEd1FRZFNLZXFZMjAxb1N4elpGVQp5eFNxZGhXL05UdmJLQUtvTkljRUJnSUE4dTZKd2ZueW53TlFOMzFnSXNsS1g2WmFEanhteU42Z1JaSzBxZzBHTmZpRmtpUGRBQUs1CkU0QjgraEVqQWloQnFJN25xOFFpVUx5dFBzb0tBSFRzVnZtblB3RDEwZzlJTEFiM1Q1bUQ3bnJHeVBnQXBJSmpYZ3FvSDVQY3B4K1EKdEI0OVFMK3hDZHJDM0FKUU9xRjhrdFVzZGhpV3VpeTlBTlREUUgzcDh5c0FXdW00QmFCaUo3blJCUUcwelkwWDVSSVZidXNXSjE2YwpieW5OUnNxenlhMkVHZWdINU04OUFlU3RBL2tpR2toazBIdmRjOFI2bG9LNjF3MGlmMWMrblhXbjRQM205bjZqVytsN1R6RjlpWFAzCjlLVlBYd0Q1OVBQL0dZQVdNejRBWFZ2S1h1K2FBQThBeE44Q2tGYy9FRURMc2pxWE9YOVp5WGtlWlRzZklUeVBJbTh0eTVsdXFoK1AKbmd3enQwV2FXOEtJdGdsTWV4alJFbzIxZUZmV0VRRzB4d3VnMUo0QWtodVNOUHBrR2xYazhaWk5kcmdlOUM2M2NDY0FpVVdnclU0VwpBQWp1aXNxVHhTd09ERlRDNHNWV3JJQzJ1Q2tqajJsSnM4SnNsQUlvSUlaRW5VVnFRQlZhaTJxZGhaK1A3WjZNSDUrR0g1MUVucDVFCm5neUhNK0ZiNHZDR0tYanRkTHhtRmxIOUNIbmdLZktsdGVTT05McE16V3drMkx4c2p0ME1aT2I5ZGx0NXVwd2p5cXpZUnNaVVNDTjUKbE42RnlXMjRETE9rR2t6SldrT1MzcEFLVGpQWm5EbEhRSEp0Um5BbG5XTTNab01yWnJzUm5KWUFnM3J1YWtRdzhGcklST21NakY0YwpBak5oU3ZDZUFBQUVydFF4UW8xUkdqMmwxZUlxclVtcU42WWhwbVRFbkdJd1oyaE5jc1NZYmtFVlJxTk1vMGsxR0RLMXVsUU5jS1FwClNXdE1CcXhKTTJ6SU1DUXJFRGpJQ0NTMER0bVFxRiszM3RDVkpNUDZGQVRjQWFJbkU0RWJrbVFZVXpKTnFiQUNaRTZSV1ZKbGx1U3UKMWJRdG1XcFVDcUxEWkhwY0RxSWoxQ1k4RThGbEtsU2xNc28xdWpTWlFiL09ZcHRHVk1iU2JSSHMyUVNtNVVIMCtiVjZQbE9qbDJzVQpjbjBtZUh0TVIxUVpCaVV3VUpwV3ZVRm5XYVczenNVT3pxVHJFLzRmZS9jQjN1WjUzZ3Nma2tlU3BxZHBFc2QyYkd0UTRoSkpVY3UyClJHcFlsanhrSjk3YW5BQ3g4YjdBdXpjMnVQZldudFplRk1XOVJXbzRqcDNFZFpPT2N6cVNwajF0bWpZZGFac21zWGp1NTMzQmx4QkEKTXBMamZyMis3enUrL2hjdUFDSXRpZ1NCSCs3bmZ1NUhIdCttWE41ZjE5VGZGT3hwcSs1cXE0c0YwTUQraGhrQmRMNjVGZ0IwdUNvQwpBR29zQzh3SUlORVhMUFhUL3BCbnA3ODVpeHRkSUl3dWxIc0FRRTl5bzQ5UmcxL0J1d0JBd0tESHFIN1F6NHdBV2lBT1FSWXJ3NUJGCjhsQmN0TkYvV3BieW84bkNXSXA0SFVXNGtTcmVYS2E4bCtIOUZ0cm5yNkNwajJuaVJIYmcvZVgrYjhGMXVGd1IvamFJSjEyNUFaZkEKblJYK1cxbktSSGJ3ZHJxRUxsY0dicS93VGFqM2oyUUdKcks4SHp3blh6VktQbDQyS1dvRGtMNExEQzJ3QnFQaW1RMUFQZ1VYRkRjagp1WUhVQ20rbUdheVE4WCtEYVZnczlLWUlsMWNJeHplS2pXOG9vU0tmNEFtU1FzVHRDeEtCb0tjODVLNE9ZM1VSRjZRRzlVMTdLc0pFClJkaWpCWEN2cHlyQVF5cjlYS1dmaFZRRnVLb0FVeDFrYXlKaVZWaE5SS2dLc2RWaG9pNkVnWUh1SDBBT0JDREJ3MDRCcUlCbnR0QUgKb3hOOXhMNEZJZ0lRVWc3Ym5jU2l3ZE54OU5FU2JYbFc2YVByQjBVWXp4STZBVUR3VTBiVklINW9tL2RvSklJQmdOQW9vQmdBdFZiSwpNUWJ5elEwZ2JSQmlMSUNvYUFQUXZRSklMUVZOQXlpVHZ2dzhWclBEN3Q3bHRPOTJBWUJNQ0VBZSt6U0FOQU5wQUVxUjRzcy8wL0ZlCnkvSWpBNlhMbDlKOVZ6TUR2YWx5MTBKcVZnQWwwZ2VDam4rYkF0Q2JBQ0M4SkJaQTZMcW54RGlsbjBJQzVYNjN3V3NBY2trV0oydWUKQXBCN1k0aklMWjNCUUNxRFpzczBnR0tYejlhcUFDTDhHRHhOM3dXZ2NyYW1uTmxmN20wSjByWFZWR01wdmk5TVZVVVlIVUM2Z1FCQQpLRk5Gb0ZnRDZjM1JpUWI2eXpYc2pFbWt6LzhGMEYzUXVYdWxienFmRllBMmlQKzZNYXFmLzlnb2FRRDY1RGtBa0JJRG9FQU1nTW9uCnR3VC81UTFwOGtWaGNpTTl1ZG5WLzQycTMyUEhVdkhScFo2QkpFL3ZVbXI0Q1dIa0tiWS9uUmhZeUEzUEJxQVNUeDRBeU9iY3cxSWwKR29EYUE4TGhpSGNPQUIwSXp3Q2dXcEdxMHhnME5SMHhJT0F5Ny9KeFJpK0hoV2lzZ2pJTHJEdFBxbnRkT3ZNR2Z5RlAyQWZFS2VJYgpyVUtEUzZnbXBVcGVMcGVVaW9BWXFKREVSaS9UNXFQYUFteTdqei9vcFkvTFJJUDZkelVvYktNRWZ4RlpKV0JCMXFiUUpnSGZ3M2oyCk9OMjdiSjdkTnM5ZXpGUG9GL0VLZUtOY3hvS0JhaU5vdGxaVm1Ld3BSYVBlZ0VFaEgrMVRDRWx5Q3hMT2lXNGRRQmp2Y05GV2VINkUKcHdYZ2tYcHNrSVZrclhiV1pXZUtNWG83NFhtTHh2YlF1QkhRZ3hGR3pyR1RzZThtSFlXNDNlUzBvZDMrTmtkaGlXVzN4Ym16MkxIVApUQllnMmRoMk9NQkFxS2RuUjdGN1Y1RjdWeUcrTTkrOXV4RGZEVHd5WW5rbDZBZVJCeitMZkU4ZXBJREl6NmZ5dEZoSUZDdVY3NkFLCm5IU2hpeW5DbUNLY0xiYVJWcHdzZHJvTGpMalJRWnFkenNKaWgvVWRYRnJPWGtrR1FIamZUNVhHYzVuVHIyTmxlUTZxeU9ZRUFCWGoKNWdLM0hiNVF0UWhrMmV0d2IzZnk2NGlUVDNPZHk1WHJyeXVYampVMERqWUdlMXJyT2xzYk5RQU5IV3FFekFHZ2svVVZBS0Q5WllFWgpBZVQzaWJ3L1dPWmxBaUY4ajY5aE9Rc0F1cjVBNlhxU25RQUFxVzFBM1FDZzMzZDFxbnZCQm1NQmhBdzBwUjgxQXpObU1UZTZsQjlMCkZnQTk0Nm5TQkJBblhib0J5WlJ2b0tWQStjWXlZU0taRzBPVEhuM3ZBWU9XZVc5bCt0OWI3bjh2MHdjZk03YkNkMzJsZnp6Yk83ckMKTzdyU2V4MitEeXVDNzZzZmN6dFRHbDNwRzlNQWxPVy9DMEQ2T1JpNmZ1NEZRTHlNazZLVDVVMHlaMkpZdkpBdGY0VTl0RWkrdFVpOAp2WVMvbmNaTlpQRURxNFVMNjZSRDYrV1dYZDVBb2M5cjk3Tk1rUENGWEtVUmUyWEVWaFcybFpVNXkwdXg4bEozWllTQXgzTjFDSFZOCjFFSkNSRzNJUFJWTVMxMFlyL1RUMVg2eXh1K3BEcUMzQVJVaHBqVE1oU0xpcHdCUVVLQjFBTkVJUU54bStnaWE2SVBTdTBEc2UwcWQKYlpqRWR5VUNTRGVRVHA5WS9hUUpBNm5DRFFEUUVoa0JLRlZFUDlNdHlvbGcySFh2QUdxckROd3ZnTnlrY3pZQXBYTFh0S1R3a0t1UQpwUUxLTXJwek0xYS8zZTZKQVpBSkFTaUp2cUpsRVgxbE1kT3hoT3RjaWlwYTNkUGI0T1dyeTVST1NJYjNLaVRUMjUzcDY5S0tRSEFuCjNFd0hTNUlkaThscmtNUU44Q2xNcjVvZTFMZlA5cUp3M1JENDNjaW1MMjUxTis1d2NVVWVNOXI5VHBndGhGUFREem9hekdPQmY1V0YKc0pzOWpoSzNYYnR1cHh4UkFBbE9UbkNDZm1ZREVDTmFHTEhFSXhxdFF2RnVvZVJWeWZtY2oxMFhWdFpIQ0RWb0cxY3VwSlRNTFVXeQoyVkJLSldaam1iNUFGcCtjY3ZLMUVPSHllaUkrcWlHQWpzS29DVE0xcFd4TGhHMHQ1WnJMV0VoVEtZTW1BNVdTa0xQRjJMZXpUQjh2CjkzeC9KZk5ScHVPRGRjNGZyTUYrc1B5dVVwQytPMHh2Q2RLM3lzZDZTQitpcU9VdlZsTi91V2E2UkJRWCtLUEU2QjFGaVVra3p0d3cKU2lUTzNJbjN4MVFTUDNMdS9OVXM5a3FrajE3cFNReENqM3JseDJ0Uk5QMzhWUTdLajNORlBYZExTUHpiOWRMZnJaZCtzZ0VBSlA3agpCZ255czQxcSsvTlVBNUMyL2dYNlFRRGFyRXkrNEovY05yWCs5V3J3eml1K1Q3WjVKMS8wL2VJMTZWY3ZPKzlzRGt5K3lQL3o4L1lpCnkvRkh5SThXRWRjWEVhTUxQU01MaUtHRjFPQmlCaDBTdEpnZldzSkJSbFpRWjE3RkEzbXV3aUpzZDVFN3o2U1dLTkFyTVpaSHVJM2wKSElaNmEveDhXMFFDOFlCN1loa0U5MEEwQU9tcllFM3FLbGk5d2piSW5KNUdoZGZUTFBOTkV0Y2tzNUFXTDYrR2hiK2xSUkdPeWV3QgprYWtNaUlmOC9MNFEzaHdncThyQ3gzMlJJNHIzZ0pjL0dHRDNoZGhHUDF2ajVXcDhjcTJmcXhaZEZid2x3bHY5bkUyaUxCNHl6MDYvCnBaMUI1aUFLN1o0Q0o1N1BFYVpTMFZYbkE4a3h6VUcyQ2Y0UFlhNCt6TUl2VjFXUWd1ZjNTc0ZkS3FJVENSUUpSNVVlQVIyVXlER28KMG9NeEZvcXpDYUtENDIzd1RwY1U3QjdCWnVWb0crbHdZa1drcTRCeTVaR09mTUtlQi9GWThuQnpudE5hWUxFV20yd2xCVGEwYzJ5dgozZkdtMjcwVGN4UzZqRlpubnMyNXc0enRLc2IzNUh2eTgvQ2lJcnk0R0NzMmdraXd3aUk4SDdpemw5cXJWWUMwR04zNUprOUJDVkVJCnNaQUZWcXJRUmhjQnY1eDBzWXN4UmtPV09OZ2lHMk55RUhZSFpyRzRDZ293MjA1TVhFNWZTV0dIa3ZnYjZkellDcVk3aHo3NUp1NTMKV0F1S25OWmlsNjNZWlRGaWNNVUNOd3Z0dGtLN1k2YzE4Q3gzT2tQcUxnbWZQMXZmREFEcWE0bjA3S3VOYTMvVzZLUHBwNmU5Q1FEVQowZEp3cnFubWVFMzV3WXBRZTJtd3NTSllXK1lyajNnakVTVVlrcnlCYUFWSUNFWEtmSFM1bDNRR2F0ZUs1NTdnaHhiSTF4ZXozWSt6CmZWK2p1ci9pNmZwOXZQUDNYQjJRcjNqZ3pzSEgyWUd2YzJnNTdDbGhFSjFlemcraXVvSXdBQyt1YWp2L3dGU2I4OGdpRmlXWkc0ZWsKQ3VOVDlKbUlScmtKamxubWhjdWJtUUFhNEk0UDlmZGtlOGRSNjg4OUp5dDRZMFZnVkcwWSt2QUY1WkpGRmtTbENHUVN1LzlyQ2oydQowZ0JXNnB0T3hPY0crZ1JsVjBCeUJnU1hDSURnTVltM3d5T0tZczBtaHRzcW5Gam11dzVKOTQ2bEtXaXJ2NzZsUDQyNnRvenVXTW1kCjJ5Z2VmazJwS2ZaTFpNQ2xCSTFTeEJTSWxGU0dMSTFCVzFQQVhoZkNnRUhscFZ4VnFhMDY0cXdONFBWK29nSGVTQWZZbWhCWEhlWmkKaVZNWm92U29sYVRZUDFMN2pZSUU2aE1LZVBRQjBCRFFEMFR4NG1BNGVNUEE4eDZadFhHMGN3Y2JXY1VkZTVMdmdTeFFzekJtdUxQZQozUnhiNzRFc0Zmb2cyc253ZDBXNmxzd1ByaEQ3MGdCQThtQTYzNzlXdWt3RnBicXdwejVDTkpTaXVUQXRsYngrSmp3d1NJMFhvZ01JCjBsU3ExRVdtejBNTksxeFFZbndpeS9FVVNXRUVqZmJBcS9weHVORnBMWmlOY2pvOWRoMUFJQVFBME5QMDJWU21jOGFBaE5ZUXA3ZTUKS2dGQTZvNEhVN0hUWWNMTWhpV0FIcWJqTGdEeDE4QkEraURFS2YxbzNUOHpBR2laM1BzcEFMUklBQUNkZjlGZHR3UGVHVTBEeUI1ZAovN29iUUdydUQwQ1VoQUJFQ0VZN2I5ckxsN3dtMmpmN1BPdkRmRzZZeUExVDY4TXNKRGN5SGZBUVpFTXBFNWZFV3BFV0RVQU9Id0pRCnZaOENBTldGbU5ySXJBQTY1S0hlZTlyOGd6VG5kMWFUSDYvQS9tQ2w0NlBWMlBkWFJKZkQ0Z0EwaDRHMERxRllBR2tHaXIwWjkwZWEKa080eGlmU1pPMzgxU3hKcDhsK2RSRlRkQmF5N3gyckhKUkZBc1F5NnV4bzBBNEFnLzRvQWhKYkEwUHJYeGhnQWJmR3FBQXBvQVByMQpxejRBMEoyWHZiOTRKVEQ1RXZIemJlN0p6ZkxrOCs3M1hoVTN1VHNlSjc2MW1Cd0hBQ0VEa2NPTGFOUlRuTVJHQVpURURzY0JTS01QClhKcGNlejE0Y1lSejZRQTZWT3IvRkFEUzNkUGtGYlMwK1NRVXZ3aHBEMGhxQkFqUXBEWGdidzBIMzVYNWhqQjlVcGFQQk9XakFYZTcKMzlMdXM3ZkxubmFKMnMreit6bHFQNE8xa2ZZbTkvWXdWU2l5RGk5cENiajJDdmEzM0s3ZFR0d0VBRklIUXlNRHVkd0ZQRmxTSm1FTgpQZ3IwZ3hKR2hWVUkvSExCbTJZd1VMbWZndDg0dit6UitxRGhmUzA4RlZDQ014WkFBamNOSUNkcmNSREZEbGVCdzVtUE9Rc2REcVBOCmJyTFpTNG9RSTV4NzdlUU91L2lHSS9LcXZlWWxSL01ManJhTjJMRXRydjNmZEZYdGNJbjVUaWNhQ09UZWJ2UzhYb0p2TDhGM29OSGIKZUg0UmpnQUUzMy9VK0h6L0FMSXpoVE1BaUx5Y3pBd3ZabSttTUtNWmROL1Q1Smx2WXFWbWEwa2NnT0I2a2NNT0FNcXpLam5VNFZYQwpSVmY0MUVVVlFEMnRaVDBKRytBVEFYUzU5UzRBTlpRSFlnR2srTG5vRWxnd1hPcGp3RUJZb0RwWE9xc0Q2T3RjLzZOMHp5Tmt6NWZkCjEwQS8vOE41NWN2dXJzZVlBUTFBOEdGUDhBTlBjUDFQOGtDZlFhM1lvK3BuRU9sbjZ0Q3J4ZHdvNkNlRnY1NElJRjAvR1VvVVFFZy8KdnB1SnhGbnB2ekZIZEFDdDlBS0FMdHd2Z01KZUhBQ0VEQVFBRXNtN0FTUUFnREs4Q0VDeEJ0SjIrMnN0TlF2WXJpVDZRZ1p6L0JtdQpiVE5mczQwdnp3OXdsaUJGUlp5KzBwTHlpQkVrVkIxd29oM0VRUUdKSjBKV1JiQ3FpTE15N0tvSW9iWUtkWUZzQmdQZFA0QThHb0E0CkFRY0FNWXh6TzF1MmduczNWajh6QWloV1B5Z0o5TkVPaDU4QzBFQWFHbkxkRHdCNldycnNEbnBySXFnUE9oWkFtb0gwQ2xCMEQ3eTYKRFY2dEFIMDJBRXBqcjgwWUJDRHE3TXV1MmgxT1Z4NEdBRElEZ0l3QW9LWHNWYzFBRUFCUUV0eFVEWlRDWDlFTWhGYkJwZ0YwN1I0QgpwSGYvekFhZ0pYemZLdnJNUzNqVkxvdzB1czFtRFVDa1RkMzZycTJDV1RRRHFibHZBQkdTaVJSTmhGRGk0RXdGWE1ucm9uV3JEMXNmCkluSkRqQmFFb1FoNFNOQ2lBV2hHQTgyWW5ETHFHMEhTcmhCQkwxazdCU0I0cXpvYmdPcUR3c2cyNThjcDVnOVhxZUpKdDMyd3l2bDkKOWJvT0lNMUFNd0pJTjVBR29FUUR6UllOUVBkdW9FVGl6SjFFK3Z5M0FDaFJQRE1DYURZRHpRWWd6VUR4QU1vVkVZQnlwZWtLMEhvQQprQWo1dC9YVERVQlRBRkx1dk9qVEdvQW1YL1ZyK29IODdKdkJ5YzIyLzl6S1RHNmhKdGM1ZkFWdGk2bVJwNmpSeGVTWUJxQkYwd0FhClZvTzZnbFpRNTZZQkJLL05XTDdaaFFCVTdOcnJ3Z3FEckVNN0VLTTlqQUFFM0lsYkJZTkxIVURhS3BnR0lFZ2NmWnA5b3BaMnY3d3YKb093THl2dER5bFNrQTJGMHN6a1lQT0QxTjVVSmJSR2hPZWh2OUFtWFBjNldRRERRMG15OGRHN3JTSC91eE5ETGZWMjdUeHczMWRVegprcHVsU2lqWGJqZjJqb1BhWldVS3JMVEpRWnBqQVlTN0N5WEdXaW03bTN4MFMwaUF0SWJGbHJEWUZCSHJ3M3hkaUtzTm92T1BnbjdLCks3dGxFWlYvZ0Q2NFlNZEVPNllDU04wQ2hnREVjbGFhdDd0NUs4SGsyWWs4bzZ1NDBHblBkM2gyTytnZGRtNjdRM3JGV2JuTldiL1YKMmJyUmRYZ2RkbllWMXJrYzY4L0FoOUxjNzJmaUU2dXhicERRSzFqTmRvd3J3Q3lBRzV2clRUUCt0aEhmb1M2RW9VRkJSWmphL255ZgpBTUlvTXdESVNodnRIcHNUdDFxeFFnRFFEcGVRVFZ4S3BvWVcwamVTcUlrVWNnaHV2b2pWNXR0Y3hRNnIwV2t6T2kwbWx4VUMxNHNkCjlpS2J3MmltdDNnYU5yRkh4TktqVjVzYStsc2kxOW9xQURwNjkwOGlnTHIzTmFFcGlDMzFaeHVyTlFEdEt3c0JnR3BLdlJxQUFrRlIKQjVBY0RFWUNQQmpJRTZqWUxKMUFMK3J5OVlWY0R3QklMUUwxZnNYVEJRRDZvdjNTbDdET1I4amVSOW4reDdnQkNFZ0lQdURycW9GUQpENUJhK0VFZC9RTHErOUhPL29TQWZtSUFwTkpIdm9GeXQzNGdvSjg0QUNWeUp6SExBMUVBcmZKOWdBQ2tjUGNDb0RJL0Rya0xRS0pECkE1QUlBT0lkcEFxZ0xjSzdBQ0ROUUFBZ0xhbHFsZ2FHRjNxSEh4ZUh2OG9OZklWRzFiSW5xTTZGVk9kSzZrUU9lK0JscVg2bnoyY1AKRUh6UUdnd1ZWNFFLMWYzelJGa0VMeTExbFpZNnlpSXVNRkJWQ0o5cUVvbzMwUDBDeUtlZzAvUkU5U2g0ZVB0QjBhNjNtUExsL0ZuTgpQYkg2U1Z6cTBwSWlES0NBZU5TZ2N6eGlJM2VsQ0VQWjRrQ3lNcGdtOTJZSWZXdWtUa2N3SEcwR2p6a1RYalBRYkFCcUx2UFdsNkxqCndINGpnSERLaFpHdSt3ZlFsVlhVK1MxWTA5dG9FMFF4QUtqSXBRSW9tVUZEbzNVREFZQTBBeVZ6SFlBbXZSVTZGa0I2SHpRQUtNdlgKb3dNb3Nmd3pCNEJTdU42bnFlT3Y0S1Y3WExnSkFFU1l0TlBncDJiL3FGMUJVMFVndFE1MGZ3QnlTeVl3RUFESXlacUxtSkszZVB0VwpMK29CeWdsek9XRkdUYlFPQkJKYUR3Q0tYa2ZaRU9HbWswQWZMZXZLR1FDUVZmSDR2V1JOQUFHb1BrUTFoR1lGVUhXRmVOTHNlWDk1CjhjZVo5by9YZUw2ZmJ2OXd0ZXNQVjAvdkNKdXhFMmhHQ2YzSi9SaElCOUE5R2lpUk9ITW5rVDcvendNb2tUdUptZkY0dFhzQkVDUVcKUUg4YkE2Qi9XQzlDUUQ5M0EwZ0VBUDE2RXdCSW5vUm9EVURiZktBZkJLQnQ4dVRMS1A4T1Z6WmprN244NUdiclQzT1pkWjdPSnp6agpUN0JEU2NSb2tnNGcxVUFxZzRZWE13T0FvU2tBRmNjQ3lJVG53eXV4dzFXZ1VOWmFrUUFBdFlWRURVQmFFV2dPQUdsdFFEcUFkUHEwCitDVklhMEJ1ODBuSVFNSFlpR0Nndy81Z1c0QnQ5RkwxSWFraExKWDdxZjFDc1BqVWliUS8vOU9rSC83NGtSLzk3S0VmL2R6d3c1OGIKL3Z3bmhqLzZuNGFQUHBwL3Mydk55ZllTTDBXNGl5eFVZUkU2Ymd3MVdhUHlERkZzSnhHQVBFU3hqM1BVZW9sV1B3UDBhWXRJS0tWeQphMFFDQXpXRStQb2dGd2t3RVI4VlVnaS80RllFZUZwSGZkQ29BWWl6NDZ5VjVSMlNNQTBnRDRjQUJNOGsyMTMwTjF5aGJjN2FyYzdtCjUxejdOdUpIMXJpNlYyTTlLL0MrVFBkUUdqRzhsTHEraUJwZlFJMHZwTjViVEwyM2hCalA4QXlzd1M5dHdnNi80cXA3MDFXVzc3SVcKdW96d2JUZGg3NWp3TjRyeGQrQjZJYWEyQ3YwV0FMTGhSUnFBVm5ndUpST0RDNmliQzRrYjhBQlk1dWw2RG12ZGFlY0FRS3FCcGdGawpkRHFLN1U2ckJYL1ZHWHlEYXFnc2IrMXBydTF1Q1hlMlZmVzFxL281VUs4QlNPLyswUUlBUWtPQW1xTjc0QTlVVGdPb0xLeUV3M0lzCmdId0JiemdnQW9DNFFPaFYrUkM4TkQ0aGorc0Flb3pwZjRUc0FRRDlqdTNpRisyWHdVQmZKWHNmb2ZxQVFTcUFCdUREMUFvUUF0QWkKZmdRMXNhbVpibm1lMGsrYU9CN1ZqektlNFoyWVNUOFQyZmVwSDBoMjhQYXE0TmpLd08xVi92ZGZVczVhRkVZRjBQVHU5OThJSUcwVgp6QjhESUVJQUFGbU5qTFJGT0ozcEc5Y01wT2tuV2czeWp5K0hGMFJ2ZjRwM2VLRTg5cVI0L1ZGdTdGRm01R3YwOEtQNDBCUDQ0R0ozClR5WnhZVDI5NzNXaHJNalBPRU5PS1ZMa2paaENJV3RaMEZVUmRLT0VQWlVSdEF0eVJnUE5EYURZWTFBMUFQbTloRTl5QTRCWUFSYzQKVkQ1NW5hbk80Qy9wK29sdGMwYkRET1BjTTVWNDkwZ0RhVEtJWnhCc2tDb09Jd0I1KzVmSjNabGkvMHFwMStTcnFnb1ROYVZVM1YwNwo0ZVgyeXVnb29GZ0FhWk9nNHdBVThmSWhtUVVBOFFKTjBmaG5BQ0RoY2paOWNSUGUvanJHNzhaS1ZBRFppbkd6SWRveXpVUlAwRmlxCkFnaWlBU2hWNkp6ZURxYXRoYWw5MEhFQVNxS3VhdnFKQXhEcWQ1NEZRUEExcmFXT3ZPcjI1Ym5zSmJoSjIvZCs5L3pENlNMUXB3WVEKeFJ0eHJxU1l0YjdCdTU5WHVOeUFiMjFZWElzTVJPVk1OUU50Q05NYll2UVRENkJac3E2TTJ4YWt6SXBIOXNLRGo2eFZBZFEwTzREcQpTcmtLSDlYM3ZQRUhhYWJ2cnNLK2s0Mzl3UnJRait2alZiaCtTa1owVHZRcWxOL0lJQTFBOTJJZ1BiK3hOd2p5dzlVeko1RStjd05vCnRpVHk1YmRQSW5jUzg5a0NDUFNqQWVnZmM2Y0I5UE5jQUpEd2l3M2lyellDZ0NTa0g4Z0x3QjB2QU9qT0t3cmtrNWVseVpjRWxDM1UKcnphemsrdVl5WnlTODY4M2ZwMjV1ZFExL0NSN0hWNzhGbnRHRm51R0ZoSlRJWWNob0I5Z2tBcWdvQXFndlJxQXJFNEVJTFJseVpVbgprdVpxRWMyREJxTUFkR0lCcEsxL2FRQkM4NkJqQUtSdGhvK3IvV2o2Z1dqWDRZTWgycXBaYTFDQU5JYUZ0Z0RkRW1MQVFMVzg4eVFqCjVYZDBmdTd2L3Ryd2x6ODFmUC9IaHZmK3pERDhSNGJland4ZEg4N3IvdUNCL3U4OFBQeHR3NDMzdjlBM3VMYnRVREhMT2JGQ083SEgKU2FNek1aeWtFUURrZEJmUXBDa2tZUFZlc3QzUEFuM2FTMlhJdmpJRkx1Rm1jMGhvQ3ZKb200eVhLWmVva09BSjhHQWdEOC9qREk4NQpXWnVic2NKekFnQ0lCd2xwRlNEV2d0T1dQUVQzSXQ2UWc1OWVqVjlaaVhWbGVnYlN5YkZrNGhaa0tYbGpLVG1SUkYxUG9rZVRtTEVrCmRpU1o2VThDY2RMWEYxTTNrc25yd0tEVm5zNW44VXN2WVEydlljRmRMZ3lzYVhHOVljTGVLdkRzMlVNVWZsWUFXdVcrbEVJT0xTQnYKTHlSdUxTYkgwenk5RzkzN3R6dWtJcnNsRmtBbWx4MEFaSFM0YkJiNzIzYXVpQXJ2SzY4ZGFLbnNiQzN0MkZmVDM2YnFKd0ZBYVAxcgpmMk4wRDN3VDJnS0c5c0JYaHRyS1EvVmwvdXFJa2dpZ1lFQU9CWlZJZ0pmOXZuZmsxbVNoNTNGcFlnR0hTanNBSUNETzE2amVMMkZYCkFVQmZzQ0lEZmNYVC9RaloreGlERnNLMG5tZ05RSXQ0TkVKNklUc0VBUUF0NGFJQW1sRS9DRDFBSDFVL1d1RUgwU2NCTjVCVmdadHoKWndwQU4xZjdiNy9rUFcyVkdWa3U4aXR6QVVqVFR5S0EwQkFnQVFEa0pFRGJyTTNJeUZ1RU04dTk0NXFCbGlsakVOMUF5OFhlTEdrZwpReDVTMThYR2tnUTBQdnNwdHZkUnR2dHJkUC92RTBOZnhnY2V4N3FXZWk2c29rL204RWZ5QTVRMVNMQm81SldqS21DckNOb2lJVmNvCjRpNFBZZVVoZDB3OFdtWURVSVU2TGlnT1FHRXZlbi91RlhGZVJNZUh3OXNESisxK2xhbE41YTR1RXZzZ3VuNldDdjFhOUVwUFFyMm4KRDVJbTk4Y2xRKzRFQU1FL0dRQ1VxVnlESzVDOTNrWmdIRG9TdFp4dHFPVFZQbWlwcmVLZUFGUVpRSDNRaVFDYTZvQkdBSElSenRrQQpsTTUzenBoazZWSVdjMlc5NStncm1IOFhaaXQwV2dGQUJYaUpBZlZMMzdWenJETjZscGk2ZVV6cm80NDlHUFZlQUJTNy8yczJBR1hSClYzUEpmYS9oUXI3THJBTElxZ0pJSFo0Uk5WQjBJUXh0Z1A4MEFMS1Nvb2tXQUVER0l0YitHczl0bEN1ZTlyZXNEVWJXQmdQQW9Kd3cKa3hzbU5vUjFBUEd4MlJBUnRHeU1jRE5tWFpud3NwOHl5b1RvUlE4N0FGQmprR29LVUxNQnFDbEllcXVwZC9PczM4c3UvbkNGODl0cgpDT0RPeDZ2dEdvRCtjT1cwZ1RRQXpjaWdPQW5wQnJwM0J2MS9EMENKMXBreHNRQktOTkRjQUlyZEY0YktQemtvUDgyWkJ0QS81MG8vCnorVWgveEVGa0tnRDZKTVh4VHN2U1hlMnlaQlBYaFkrZVpHZmhHemxKamU1N213Uzcyd2dmcjZPMm1POStDVHhmb3BuQUY1MGs0aGgKQ0FBSUdjZ3pvbWNSalU0SXlpYk9BNER5TWFNS29FSWpWbWh4N0MxeEZ4UzVVVE1RVDVaVXFRQlM1MEg3dERZZ3Zmd1RDNkRZbmZCeApBSW9yQWtYclFERUFhZ253a0xvdzNpZ3g4TGxWUG5zRDZ6YWZPdmZ3Ly82aDRZOStZcmorQThQZ0I0YWVHdy8zam42K2UrakJqZ0VECnBIUHM4NmR1ZlBYVWQzN244c2VHM3RzUFhMaVFXMU5tb3kwYzlnN3FnS2FNTnFMQWdlZXpOSm9BQktJNjRPZmFJMTdJdmxLZkZrMXMKOEFYVXc5OG9NMkdSUUcvS09WeGdNUzBZWS9Pd05rRjBvYm05ckJVTXhIQUlRUENNL3pZWlhrZWNYRVlPcDNodUpidHZKNUh2TDZTLwpvNTNCQkZuQ2pDWFQ0eWtVU2lvOXNZenFUYVVIbDlEakMrbGJhaWFTNk9HbDlNQUs5OVVjOTRtWHNjcnRMaEsrLzRYcXpxODlSUDV2CkNTQjlDV3cxb1FLSXVybUl2QWtBU2lkN05ycmJkem9FbzgxaXNsdExIQmF6MDJweDJjeE91OW5wTkRzd3E5Vyt4MGE1S2UrcHlvckIKbHRJcnJXVlg5OWNQdGFKRDREVUE2ZnUvdEJuUTNmc2FydTFydk54YXArMkJSNmVBVlFSYnk0S3pBU2djRUlQaEFGd0cvRktlM0pBdQpYUHVhZUVNSDBHTk0vNk4wMzVmZDEzN1hjUm4wODd1T0sxOTFkejlLOW4yZEdWekFEcXViRmxHdlQ1S0FUaENETEdTR0lVa3NBcEMyCjR4M29vK2tIQVVqWHoxUitTLzFBVmdhK05RV2dteTk1MzdVcHRLSVVCN3pZZlFOSXNta0E0Z1VFSUEvck1OTGV6Y0k1QUJBa3VoQTIKWlNEVUR5VGZVRE9SS28xRmp6eEQ1MnIxQVFmaFcvY0kxLzE3VE9mdlVoMWZJanNmSVh1K1R2YXRvWTVzNVZyemxEQVJKSDFoU3locwpERVpzZ1loTEJkQU1CcG9EUUNoVDU4RHJBQW9vdEJldGY3a0FRUENpYWFjOUw5Rk5TNmNXdkpMRWZvaXVIeDFBaWZXZVpWSi9iRExrCkFTMkFualJwSkF1ZEk5YWJxVnhkTGc5bVNLUHZLUHNpUVhkNWhLd3BaMVFBaWMzbG9nYWczN2dFRmdjZ1FXUmlBUVJYQUVCT2orUCsKQVhRaGc3bjZESG5tUlhka3B3c3JjRmpBUVBrQW9EUTJ1bTFNaXo1Sk9uWWJmYXlCRWdHVW9mVHBBRXJjQUQ4YmdKYlRWellRclcrNAo2VUtYMFlLYkxCNFZRSFJ4ZEhvWVpaNHlrQW9nRW5VQzNSZUFjTUdHQUNRVzRYeFJJZXQ2bFF1dWt3NWtLeGVmOWJXczlkZXREWlRuCkJIMjVRWEY5a044UUVqWUZwVGdBNlFiYUdKNDU2OHJFbHdKTWtlemh2V1Q1RklDYVp3ZFFBendvSzRoVzJqbjBuUEU3V2ZZUFZoTi8Ka08yS0JaQnVvRmdBeldDZ3B6K2JPbEFpZmY3ZkNLQkU2TXlXT0FERkdlZzNBa2cza0thZktJQnlCQURRUCtXSWR3T0lCd0RkaVFKSQppZ0dRK091WCtEc3ZjSGUyTUpQUE13Q2d5UTNrTHpjNHI3MWF1NHdlV1VSY1Q2S0hrajNqUzRtUkpTVEs5RnFZdWlsc0lUVVFBeUNUCkRpQ3JQUW9nSTVhSGRzSUxicTBQK2tEWU95T0E5SG5RbWlkaUFSUnJvSGdHb2NJUHVvU1BiL0t4RFFyZElPRm9LN3RvcmVBdzQ3NVcKdzE5ODcrSHYvZGh3N1RzUDlYMW5Yczl0UTgrNG9YdlljRzFnM3BXQmg4NFBmKzdNNlB5ejQ0WkxJNGJ6b3crY21YancvSTNmT2RPeApxcllxeisyMHFnZXZhZ0RpR0V1NTdHbnkwUnFBd0QzN1MzMEh5dnh3cVgzQjdRR3B6c3VWZXhtdmwyUzlCS200U1hocnl6cFplRk5JCld6VUFLVEVBOHRCbUIrMThrNHlzb2M0dXBhNG5rZTh0SVlBWEV3dm9XMHZJSWNoU2FoU2k2U2VGdXBGSzMweWxSbEtvc1dUcXhoSWEKSFZlWnhOeUlWb2JvOFhTcWZ6Vng0VGxQTy93SWR1QjRQbDVRakcyL1h3RE4xZ1M5eW5NeGhVSUNoaThQZnZvWjVMWE5lTXRPT3hNSApJSXZMWVhHNUFFQWxWbGVCalJCbzhXSmxlS2dwZEttdHJPTkEvV2hMYlJ5QWV2YlZUUjJDVWQvWjNxQUQ2SEJOYWJzS29McFMzNHdBCktnOXcvbkFvR0pETC9LeEpxVjRtWE5VQTlBUS84QmpUK3lqcWJ1blZXcUYvSDcvMkZVLzNFOFRnVTlRZ0tHY3hON29FWlVRcjlxQWgKNXV3WVpBbmE5eDZkOTVNbWpVMXYrNUt2NndESzhxUEw1ZDdveWxlTWZzYnZuVDQ2Z0ZZSHhsWUZKbGI3SjdiNTNyVjV5YmtCcE9zSApVdXIzNkFEeUpnQ29tUEZ2Rmk1b0FOTHFRUHB5MkRMZjlUUXZPb1lzMVFzR3VxNDFSeU1HS1NPTDJadndUWGdTdm52c3RVZVlqcTlRClY3NUNYdjBxMWZVWTNyZVU3bmhHT1BHcXQ2NGdvTGlEYmlsc0QwWXNVd0NLTjlDbkFKQWlxTjF5RWs0SlRndERicUdiRi9OREduMTAKL1NTTEE1REVwUzV0blFzdGRkM3RIajFaeXRWVWVTUlRHVnpxNjE3dTdWZ2g5OFBQOURYNWNDaUlsNFdKcW5LbXZrS0lBWkR2dmdEawpsemhSWWdGQUhpcTZCLzVUQXloVnZKRE9kYTBoejI5eFYyN0gzQnFBOXJwVkFNVWFTTjA5anpKVkRicWlSZStKL3F3QWxFMWYza0EyCnY0bVRjUUF5azhoQWNRQkN1VzhBMlFGQWpGQ0E4NFg1bk90bHJ1d1o4WFNHUFBTTWRQeFo3OEcxdnFZY2YzbHVJTEErNE4zbzkwRnkKUTFvblVIdzJoUGdab3dHb1FDWTVoU2dQMHI4UlFEVVJUM01Rci9PNXo3OWU4cjBNKzNlelNXRFFSNnZ0MGRuUU1RRDZ3Y3E1RElTNgpwR01NTk4wVHZYcldKQnJveis3dURZcE5JbjNtem85bVNTSjk1azRpYnVaT0luSCtXaDBDbFBpUld0Q08vUVFENlF4S0JOQ1AxdkZ4CkFOTHl0K3VFdVFIMG4rdDFBRW1UbXhDQWZ2MlNpR28vTHdzQW9FKzJNaHFBZnIwSm05eGd1NU5qWllwT1BFbmVlSXJ0WGNpT3AyQWoKeWVRb0JGNlZsNUJqRUxVbitqcGtEZ0NaUFlYRm5ud0FFRE1Gb0haZkZFQWFldTRkUURNeUNGM3g4UkJWUDN5OVROV0tSSURqSy95bQpldGRiTm9WZk9qanl1N2YvMkRENjNZZjd2enYvOHRBRFY0Ym5YeHcybkJzd25Ca3dYQmcxbkI4em5CMDJYTG44d09udUx4enZuM2VpCngzQzI4Nkd6VjM3MzVPWGZPM3paQXM5RjhQdnV5YmRqZVFDZ0NnVTFBQjMwSVFCcCt0RUFCUCtjZlVFRW9OcUFVQjRXdkJVQ2l3NXgKNVlnUVJZcHVrbklDZ0VqV0prcFlISUNjcFBGTndydWFQSTJzUTA0a0UwTkx5ZjdGekZBS2Rpc1Z2NW5zbmtnbUo4Qkd5ZlRZRW1ZRQpzcGdlVFVJMzBXa2tzWUVYTUhXTDF2WGwxTFVObmtPdlliNUNoOUZ1Zi8xVEFHakdiZkFyaVBNQW9FWGt4R0p5ZkNrNWxFbGVlUjV2CjJHVW5BRUNRT0FCWm5MakpoaGZhU1I4cmRWUUZCeHVERjFyTHJ4NXNHRzJ1dWhjQW5ad0NVRXNwR2dKVUZaWkxRL0pzQUNyM00xYWwKTWt1OCtsWHhCcngrYXdBQy9XZ0JBMzJONm51TUdWaEVqWUFVVmZxTUxtVWhJMHZSWHZkUmJXQW1aR3JxajZvZitYb2lnTkRNSHYvRQpsSDRRZ0hUOWdHTVNpUU5aSGJ3MVcyWUJrUHNlQWFUdmhBY0E4WkpIQTVCYndIVUFaU25YSVFBZytEcTFyMXlUVUtZeURNbFNCaUZ3CkpWMGVCaCtrU21NcDBtQ3lBTjhUOUg3bVNXejQ2ODcreDEyOWoyUGR2eS8wZmszb1h5RDJaVWhYbnBNTzdaSENsQmNMQjRwaUFIU1gKZ1g0YkFKRzh3MHhSejlNdGkvaVJXQURwK29rRGtLNGZTQ0o5TXRFL0VQNlpWOEY1VXdDNkRBQktsU1pla1U0RUExZ2s3QUVBMVUwRAp5SHVnMGovYk52alBDa0RMaEdzekpsazZsODcxckNJdlArK3VmUWNqcGdHVXlsMU5ERG8rWTBwQ09vYTBwQXBkcVVLMERvUzZndVJyCjZWSVg2cDZlcVFjSWhlOU5ZL295Nkw0MHRuY3BqODdOU0dPN2w1TjlyK0MxYitMZTNTNUhpYXZZNWl5eTRoWWphUzFnVEdqOWl6S2kKVWhDRExrdkk0bUkwRXRwc0p1M3FJRVNIQ3dFSTAwL0Q0SG1Yb0RGSWRrSjR5Y2JKTmdBUUo1b0owWXlMUnJkUVpHUE43ekR5V3Y1awpzbklqVSs3TFZLNWxLeGRYZUkrdjlyVTk0Njk1MWwrYUV3aHRDbkRSK1BubkFxZ21oQkpRMW9lMFNCdFFrSWMycVZrWEVaNExNenY4Ck5Lc3c4SmEwTWtRQmNWcENXSE9ZQVFPMWxYR1FsZ2pUSEthYkl5U2t2TnJhNHVYaDBWeERGdDU4Mm5WN0dmMVJOdjV4TnZHOVZTN0kKUjZzeGlOb1RqZkx4S2t6dmlZNE4yaWNmUXlMTlFISHpnZUtTU0ovWU9sQmlFb2tUaFU1QzdlZlRKWkUrbnc1QXNaK2w2MmNPQU1XaQo1NitlalFiUUE5QkpqQVlnL1hyc0V0ai96dUgrTnBmL3V4eitwN25DUCtSdy81VEwvM01PL3krNUFnUUE5SXNONHE4M0NKQTdtOFRKCjU0UTd6NHVvM1dlck1QbUM4TXR0d2k5ZllpYzNNMmpzNFVicTErdUpPK3N0Mzk0aVpURERUOUx2UCtQc2VaeWR5Q0w2cDZvUjQ4bmsKZGNoU1lreExpbnQ0RVhrem5leCt3VjIreDFsY2pPMUVIZEFZb2tNSnRnY3VNZHJJOGJhSTVHN3dNUzB5c3ora2FCVWdqVDVha0g3SwpnZ2RLQS92Q3ZyYWcwdUtYOU4xZXNRQ0s3UWRxOU5OTlBoYnVxZkZ5cFg2eTFJZFZpWTRHeWtaelJvcDJ1M0hYeG4zMW41LzR3REQ4CnZYblhoai9YZFdQZVJhU2ZlUmVHNXA4Ym5IZDJZTjdwL3Ztbit1YTkyenYvWkRkazNva3VsR1BYREVjN3RUemFjTkRpRVZqTTRxUUwKUlRZL0lwR3RvYkpEUVhnTDRZTW56Wlp5cHEyY2Fhb09lZzhmS096cGZlbjlEOUwvMXo4cytQTi8rTDBmL2NORFAvckp3Ly9yeDEvNgo4RStlSFByT2tvNGJHNW9Qa0tJY29jeVVZcVNrRW9rMjByU0RZRmdIYVg2RnJNNGl1MEEva01YMFJCSTFrVTZPNk4vbnVHamY5c1E4CnhRT1BodE9wNFhSaVBKMGNXME9jMjRhRjlqcE1lOXhGUmZqMklzK092YVF4ejJPMjRuazJ6KzVpS3Q5TTVNY0NTRE1ReHByc1RDRzYKVHBtY2hOa0dUMnR1YXpGdUxjVHR5K2lPVkhvUXZzSVVjblNGNStJV3JHbUgwMTlzcFFwczFrS0hCZlVBWVdZTEJneXlXeHlZMmVZdQp4SENMeFZZclNoZnJxNjgyVjE1cjFjN0JxTmVPUG8wZWdJb2FuOUhpRitoSE93ZitVa3Y5dWFhYUU3VVZoNm9qN1JWaFZBRUtlNnNqClNpU2krRU9pSEJBbHYrRDFpWDRmT3BheVBCencrbjJSQU12NWZmRGsrV1YrZkFIVC8zVm04SEY2QVBJRU5mQWtqUmE4RnJFalNZQWIKRGtXbHo2aDJYZHZucGRXQjlOcFBxalFPU1pQUnNwY1dvSSsrL3FYdGVOZXp3bjlMejJ6bG56V2g2YXdPM3RDektuUjlWZkRXcXNDMwpudzFjZjlON3lDT1RYcVZZOXRzRFhtY3dldm9wR2l3T2lhWFBWRHlsUG5kWXdVSUFJTkd0cUdQSGFSRkh2V1cwYlM5YnRsRzhzTnczCmxwZ3M3NmkrSW9ZV3hlUlJMV2tTTWhCaWtEaTZtQjk2aXU3N090SDlHTkVGV2NnUEx1SjdrcVFlZEpTRU9MQ0tQLzlOcWRIazk0WjkKenJxZ3NiclU0aTlqZ21HaFBvQTNCakI0cDEwWjhxaTkwbWo0NFZTaTRvRm9EVURhQ0VUUVQwaHgrK0JsVVhTeEFnbUFvL2ppZkNhUQp3NTViTEhjbUMzMHpOZm9NcE1xRGV0S1ZJVDJaSUo0WjQrM044ZzFrKzRhemxhR1Y4dEJLcVgrTjNQTzAwa01GQW1nVVVNaFRYYTYwClZ2RHRaVlJ6bGR4YUpVVFJreEFOUUxWaENRQlU0UmVtbDhCNGltVThKSVdoTURoRTdRRnlXRW5FSUlmSEF3QkMxUk8zL1hXeTlGa1cKQUhRMU1lbDhSd2JYa1M1ZXp1QXZyQ09PdnU0TTVkdk5oYzdpUENkdVNPTTdJVE1ZYUJZQXFmZEU1d09seTZnZzlCc0JsTW9pQTZXeQphTHBBS25kdE9YUHhhZXJVNjNqd0xZemQ3YklZWGNVVzNHUjJXMHBJY3pFMUs0QktDSnVGdEFHQW5Pajg1K25qd0dZREVDdVU2QUN5CnF3QmF4NTlJVmlZeXhLRU1xVDlMN2xvaFgxeWx2THZhZTJpTnQrMFpiM091dnl6WEg4a05oTmI3ZmVzRE1sb1hROUJoWTZzK200S0MKbnZWaDRia2d1OTNITURKVHJuQ1ZRYVk2UWpXSEtBMUFyYVVvc1FDcXJMUzFlWVdhb0VjTUdDOTgwL25IcWNUb00vYVBzNTNmWGVtTQpBeERvQnhKN1V0aGRCa29Ba0dhZ1JQck1EYURaa2tpZnVaTkluTG1UU0ovZkpycHZwcGU2RXVtakpqcTI4VzRBUVg2NEZpWFJRUGNGCklOVkFYQXlBK0U4MkNocUE3cnlFOVBQcmwvaW9mamJSdjl4TS91SjV6K1JHNCtScXMyOXZleEo5TTlOOWV4azFDcThscVNScVEwbDgKTVFZQXBYcEdGcEVUQ0VCNFpUNW1NdUs3QUVEdzVnRmVjVUUvOEpycVprdG94aHpnbkhVS2xRZ2c3VW9jZ0xRZVo2M0dFd2NnblVITgpFdHNnQzNVeVd5dTVxc1Npa0ZCRThCNHo3M3ZERTNuVFUvMDJXWnA1Nk5qOHNlOFllajh3ZEF6TVI0dGNneENnaitGTXYwR2xEOFJ3CnNzZHcvQnBFcDgrOEkxY2hoc01kaHBPWGtscGJ6SXlUSi9PQ1BoeCtSK0JYWm4vWWZTWkVuUTBFRGxTMTB4Y0dObi84cDQvOS9VOC8KLzlPZmZlNkhmLys1Ny8zcGcrLy8wZnlKUDV3Ly9MMkhCajc4ZlArM3Z0aDc4NHM5WS9QSGVoWmN1UEp5NHdGU0VzTWVNMHVWT0lRUwpraSt3a2RadFpIMG0yWU1BUkYwSC9jd05vTm15RUY3VTZSSDRSUGdad2MzbFpNZnplTU9iTG00UGJpckd0aHZkMi9PSW9nSlBpUlV2CkFBQVZ6UTRnQjF1VUNLQUN6TGJLZldXRnV6dmIzYlBLZlNuWHMvOFZkM0FQUnFBOVgxYUh5VzR2Y2RqTVRxc1dpeG9Ba04xcXE1ZWwKU3cxVlhjMVZjd0JJMWM4TUFHb3JENkVLME4wQVFpZWhxZ0NxOEVzQUlGL0FYeHJrUkw4M1Z6aitDSGY5S1JZQkNBTDBnVHpGRElGKwpGbk9qT29BMEE4VUNTTmRQTElBZ3FBaWsxbjdpR29CbTFBOGtrVDVhcFdkRy9TUUE2QUFoZVQ0dGdQQllBSUdxOTdJVkc2UUwyZjdyCmtFUUR6UWdnaUFZZ1NKSXd2SWdiQkFOQm5tVDZsb2dqUzZUK0pVcmZJblhqV0tyUTlTeC85Q1dwSGxORXI5OVJIaWtKbDNwQ1libzIKNEttRnJ6WkUzaitBTVBWc1lBUWdRakR1b1JHQWtwUnJpWjNPV3FWblJ2MWt5RU5hVFNzeGlRQmFwU0FBdVFPaG1nZ0pBS29xazFySwp1Ylp5cXFrYUFTaTY3SlVRSFVCVlFTa1dRS0pBY3l3eE80RHdPQUJsaUoyUVJBTmxjSjBBb0V6aDRqcnF4RGRja2IwT2VGOWh6TmNCCmxHaWdXQURGR2tpN25pcDA2RDNSNmFCWCtzcHNBRXBtZTFMWUxyaGN5ZzJrTWtQTDZTdnJxQU5icU1wZEdMbkw1ZGpyTWhhNmpDYTMKdHRTRnhpRitWZ0JDVXhDbkFWU3lnMFlBU2xFbU12bnhUR0VzVXhqS2tnYXlwYTVzK1dxMmNpbGJ1YmpHZC9ocDMvNm4vUzNQQm1yWApCc3B5Z2o2MTZoTmRBdFBkODF3QUlrSGcrdk1CL20wdlEwcXNDaUN1S3NRMkJmbFlBRUYwQU5XWFltMStzU0xzb2N0TlpiamplNnV4Ckd5dE5IMldYQUlCMEEybjBpUVZRb29IaVZzUjBBeVhTNS84UEFOSVN5NkJFK3NRQ1NETlFJb0RtTUZCY0R4QUFDQUlBK3ZzY2ZnWUEKNVhLL1dzOS9zcDYvc3lFS0lLRFA1QmJ1RnkrenYzcUJtY3lsSnplUS83TFYvVytiOGNsMWUvL25SbUkxMWIrQStqQ2J1SkhFM1VwaApoNWJRSHdDQXRNUysraWFqNDFGSEZsTTNOQUFWWUJZenZ0dU1vNlBDYmU1OEYxWHNFU3dBSUxlblNLYXROUktoYmdTVDR3QVVYZithCkFsQjd5QXNBMG9wQU13SW9PaGhhWUdwRm9scXdsWE5taGJLYlNYNGJVNytHTzU2Sjl5NGpPck9GTTE4NzBXVVkrSEQrcGR1SVBtZjYKa0h0VStoaWk3dWxHT2RhRjNLT2pCM0x3Q3NxQnl3KzFkeGhPWE02c2dlZDI1d0dlUGlBN2pqSWwrOEtoeHRwRGUvdDZuL3JiUHpQOAp4Nzg5OE9OZmZQRmJmMjhZL1JQRDJJZUc0ZHVHbmh1R0t4TVBucjMrMEptUitlY0dEUmY3RFpkNzVwK0R5M0hEK1lHay9RZmVMSlVaCkJwTm9vMTNaWlNhZEwxTE55NmhlVkZ5aHhsVUFYZjhVQUVwaWJxUlFZL0NKeVRTNm5rb1BQazJjZmg1djJZM2JpN0dkWnZ6TllzL2UKUXJmUjRpNndldllXVVlYM0M2QnR6b1p0anFaWEhBMnZ1VXAzWUF6Y1kzRVpYZllpaTlWdXNUcXROcGZaN3JBNDdCYk1naG9HOE9JaQpsd3R6dWxvQy9vN0dHZzFBM1hNQzZOcStLSURRRUtDNmFRRFZSdUlCQlBvSitlUUtuMUlSOWdjQ3Z0S2dJQWVVTGNLUngxaEFENnI2CmFQVFJhaithZm1JQnBFY0RrRVlmL2FpdldBQWxWb0IwQU1YcEp3NUFzVXRkaWZSQitnbE1BSUJXUndFMCtxWnZId0RJTHhjcnZ2c0cKa0I4QUpEcGpBYlNIQXdCZDBnQ1VhS0RZdHVoWUEra0FTaEZId1VDTCtTRXRTNlhScGZMQVVtLy9ZdS9Zay9MTko0U3hoZnpWWk9IMApxMUtEMmN0N1ErYUtpSzBpakZlcU8rVEx3dFFjQU5MMEV3Y2dyK3hHcjQ4Y3lmRU9OMi9heFVTZVpTOHM4a1lCTk1OcWx6S1VGa01mClZQdUpXZFJMakFhZzVkNGhBQkF5a0RJQUFGcnQ3WEVFeXFyQ05BSlF1UUFBYWlsbm1xb0FPbUlpZldZRUVEb05Jd1pBRkkwbkFNaHgKTjRDc3NRQktaRkFtZjAwRDBMUFV1NjlnVlR1ZHJnSm5TYjdUTlEyZ09BUEZBVWczVUFyWHZaU2QzaHEyVE81T0U3c1hrN05XZ0pMcAo3bVMyYXduWHRZVHR6NkFHbmlIUHZFQlV2azU0Q2wybVBKY1JCVE1WZVN3bUJDQ1RoZmdNQVdUUkFPUVJpeEdBR0RHSFA1WW1YMWYxCk01WWhqa0F5cGRFTWVWaExsbkkxQ3lUa1BidmFkMktOZi8rei9xYTEvdG9jZi9YNllIaERBQkxjRVBCdkNQbzJCUlNVb1BTOFg5cmsKNTEvM3NtNlpLZldpWVZibzV4MFU0Z0NFaWtBcWdKckNSSE5BREFEbmd5VlV3SHJzTGR1Zkpocy9YRkg4blJVT0RVQ1FHUUVVWjZERQp0dWpQRmtDSmJkR2Zyamw2dGlUeTVkTWxzYzBvRVQwekFnaGxKZ0ROWVNDOUFTZ1JRRC9MNFdZRzBFYnV6aVorY2pQM3k1ZTR5YzNNCkw3ZlN2OTVDVCtaUWt4czlTRDlyc1YrdmNVckZEWStMdDFLSWJ5Y0wxOU80bXhuMCtHTHVXMm5NdUpaVStucHMwdWlSSlBvbXZKQy8KZ0Zmbk9TMW0xeDRBa0IwcnhJZ2lvQS9CVzlBSlU2NDgzbVBTTm9JQmdBNUdmSG9UZEJ5QTlrZjhjUUJxOFBLUWVvWFRvMVo5MExsZwo1VUpKZ0MzQ2Fmb3RjdCt6bnE0MFluZ0pPWlJFZlA5Sjh0WlQvb0dIVDQ4Wk9tODlmR3I4Z2JORGh0TjlobFBkS0NlN1VJNnI5WjZvCmV5N1BPM1RaY1BBU3lvR0w4dzVjTk95L2dOSjIvSUdtcmtkcnp1NE1WZ1ZGOXdISjBoNk9ZRmZHSHYvcFAzejViMzd5MEovK3lQRGUKRHd4OTd4czZ4Z3dkdzUvckhESmNIRFpjR0RhY0c1cDNkaEQxR0FHelRuUWFqb0tsdXVBdm1nOS8zZUdPTDdjZGZNMnZVQjRyUEljVQprZVR6WkhzNk5aaE0zUVRITEtISFFURExxRkVkbW5GSnBFODA1RzFVbjZORzBBWXg5dVlpNWtZNjFiK1M2SGpiVFJXNUNxellteWIzCnptSjNBUURJVFB3R0FLRk9vQ2tBbGVBV0RVQjduR1NlZ3lwMGVFb2NEbFQwY1JnZE5ydkQ2ckZhelZhckZSaWtHc2lGbHNBd3M5VmQKVXVTd1UyNzhRR21vczdtdXE2V3lxNjI2dTcxV0czNm9CVFVBM1EyZ3EyMzFBS0RUVFFoQUI2dkNBS0RtTWdTZ3l0S1pBQlR3VllYOAo0WkN2TENUNkEvSTN4WDBMbUY1MDlqc3pCTkdhbmNFOVM5WEFBM2cyQU9uaTBWYSs5Q1F1Zm1sWjRiOFJtNVdvblJsRmJRTkNTZVRPCkRQcUJEd3ZmUUFBS3ZwOFRHSG5MMjBiSXVBb2d4MjhESUphelVyUnJEMXUxWHJxaUF5ak9RTE1CS0UwYVFRdGg4a2lLTkF4WklnNXAKV1N3T0w1SDZseW85UzcxRGk1VHhwNlFiajR2RGowbzlhY0twbCtWS3R4OHJDNXVxd283eWtBZmVJcFJHaUhzSEVPZ0hnazdORTEwaQo1d0VBWWJ6MUhhYjhhZmJTSXFVN3NkZEg0MDZhZHlCZFFWbm1IWVJvalQ1cXI4L01BUUF0OXlJQVRSbG9ZS1hTczhyWFkvTFhsb2Y1CitqQmVVOFkxVnpETkZWeFRsYjhWVFFPS3A0OE9vSVl5Ynh5QS9CSW5pUXpvTFJGQWFnOVFISUFpY1FDS05aQUdvR1hpNWFmcGMxdmQKalcrN0NIZ1dMWEE0WmdWUUd0OEZpZDBnRnUyU1ZnR2tiZzFEbmRIcFV0ZmNBRXBCMTY4bDhWMHBER3BCZXM2OTd6VTN2OHRUVk9ncwpMSEFXNzNXVjdNR3NoUjYwL21VbFMreUV1Z2QrSmdDWlBLZ1Yya2JhN3dkQVZod2RCMWJzNUV3N2FYNDlkd1FlZ2huaW9KcWhaZEpRCjlLRXBYMDlEOWRoaGRhV3pUMTBkdTdKYXViQkdPZmUwZkdhdHNuK3R0MzJ0cnlYSDJ3QWV5Z21VNVFaQ3VZSEFKbDhnMStkOXhTdmIKWlRic3hlRXhXaDEyMXdlWnBoQWRCNkNXVWdwU0gwRmpFc01ob2xxeDhDRVRpZGsvekhCOE45TUdBTklOZEM4QWl0T1BIcjBiT2k2SgpQZEZ6ZEViLzJXZlhIRDFiRXR1bFAxM1Q5SDNuUGdFVWV6TzJDWG8yQVAxckR2ZnZ1U3dBNk5lNTNDY2JXTWprSmhZQTlKOWJhYTNwCjU4NW1ZbklUQVFDYXpNRW1WenB1NTFZc2s2OHRGTWV5NklrbDRsZ0dNNXBCZml1Rkg5TUJsQ0Nod1NVc0lLbnZCYncyejFaaWN1eXkKdVF2ZGhJbGt6UVJUZ2pNbUI1NXZzKzltOGVKeTBkM29aZG9Ea2o0SzZFak1OQ0FkUUxGdFFCcUE0dlJUSTlMVkFsVU5Md0NzeTBpSgpXK21ER2VUMUJaNC9XT1IrSHd5VTdYNHZsZWhmNk85NjROU0k0ZExnRjQ0TlBuQm1USzM2cU81UjZhT3RjODA3MUFHWmYvQVNCTnd6CmYvL0ZlZnN1UUF6dDUrZTFuWCs0NVlTaDdaeGhYOWZ2dFJ3dGxQbldocFpYYjc3L1AzNzZ6dy8reVE4ZitOWWZ6dSs3OVVESHlQeXUKTVVQUGRjUFZVY1BGb2MrZkdIandaQitxTFozc1JQUTVodjZLQnc1MlBuQ2cxM0Q4L0lNSDMzMm82WktoNWR5QzJzYWRNa043U3ZhUwovQ2J5RU1BRkFKUkdUU1NyQUVxalIrTjhHWk40RWtWRHZaY0cvd2Y2K2xKbVloRjNheEg3M2hMbUZ0ei9xaWVVaDFtdDJOdG05dzRBClVBa0NVUDZuQUpEUjVUUTVNWXNEczhOLzZHUld1OWxPRzYyU3hXWkdzZHBMYkU0QUVIeUFGWU00aXgxV252SWNxNGgwdDlUcUFPcmYKMXdqdTBmUVRDNkJyYlhXZDdRMVgydW92dEtBcGlNZHF5L2RYaFZ2S2cwMmwvcHBTYjBWRURvVmxiMWhyQUJLQ1hpbmlWOHFEd2VxUQp0eXprTHd2S2thQzBTMjVOWnE1OWZXcER1MzZVS2VwclZxR0RpajJKK2hHaUc5MmoyOTIxV2M5cW9pM0R2dkZvNzNNQXpXN09EazREClNLZVBsampseExiK3pGZ0VXaE5DQUZvZGVDOG5PUFMySHdEayt0UUE4cUhkTmhxQTdQQUN2SXVyenBFNjVnWlFvb0UwQUVFMEFDVlAKQVdpaE5Kd2tEeXlSUVNROXFlTGdVbWwwb1RUNHVOVDdWYjQ3Vzl5L1J4RzhRV3RWMkFZQUNxT0IwV2cwNG93QWlvME9vS0NNaXhJRgpyNDhTaDZZZ09uajdtMHpOR3ZicVltOVA3RndmVFR5eDd0SHBrK1VkeWxKeE0zdjZkQUNwQmhySTl2WmtlN3QzKzFyaFFZVUFoSVpCCjA0MFZmR05Wb0tXY1Q2VFAzQUNTSlZZSEVFRWpBNm1ERU5FY0lHQ1F3K095a3JpVnNHZ0FXc3VmeVpTdWFZbVRFQUFvUTdvQ1djbGUKM3VUWjkwMk0zNFdPMWJzYlFMRUcwZ0EwZzRING5tUzJTOXNiRDVkcElycG5UZ0JkUzJiUlFsZ21mU25IYy9BVlBMd2R3L1ppK1h0ZApsdDB1eDI2bmN3L21WQUZrc3BKR082RU9RcHdUUUE3YWZvOEFja3RXdDJRbXhFSUEwQzZhMzhBZEF2UmtUQTh6VU5rcm8wWjlkSkNiCk5KWW1qV1dvTmFFc05Ob1NqZmRlSVE2c2xpK3ZWaTRCaHRaNDMxM2pPNkl1azdVOTdXL0pWWnFlOXRZOTU2MHdLZDZBRHg2WDF1cUkKc3k1SUFvQ2F3MHdpZ0dySzZmb1FXZStsU3dQT2lGUlVLT0QxcjhrM1YzQWZadHQxQVAzQnlta0R4UUlvMWtDSjlQbS9BTHFueEFEbwpSODlNR3lnV1FMSG9pYjJwYnhEVEFmUzM2N2g0QU9VeUFLQmY1cklJUUxuTW5mWHNuWTBNQXRBV0N2UXptZXVaZkk1QXJUKzUrT1RUCjl2OTh4dUo5NS9DanlvMmw4a0FXUDVoTmpxZHl3NW4wZTh1NG9VUUFUV1ZvTVhzemsrbC8wVldmYjdkYTRmZUdLS0laTThOYjNaVFIKNlM2QWU2eTJYUlJXV01wajhEQnI4NHNId3Q1WUFFRVNBYVMxQWVrQUF2ZG9xWlVZMEU4bFIxVFREdHdqdit4dVgwRjBwQk1EV2RpMQoxZmlaWE9Mb0ZzdkJqYzZXWmZMeGgwNTBHODUzZmVGb3IrSGRVY094YUd1elZ2VUI5eGdPWHBsL1FNMlVld0E5RUVQcnVmbXQ1K2ExCm5EWHNQLzlRODlGNVRXYytYM044YVhONzF2Zi9ZTjVQZm1iNDNnOE5nN2NNdmJjTW5UY2Z1RGp4K2RQWFAvL3U4UHgzK3cybmVoNDgKMXZQQXNXc1BIT21ZcWlkZE1SeThPdi9BMWMvWFh6RzBYekxzTzJWb1BXYllmOGF3NzkwMUZhVjJvWEFYNVYxUEhsTjN0dDhHQUtVdwoxMU9ZaVhSbUJtaE9jVE9CUHRFZ1A0R1E0UCt3bExtNW1MMjFHQm5vdmMxRXkzYWNNbU83RUlBOCtTcUE5aGFUc3dMSXlhazd3bUlBClZJUlo4bDFXM09ad216RlBDZTR4d1JXTHcyS3lBbnFzbmlJclZtUnpUblVDT1JDQUhHNmJreXh4V0JTR1BGbGRyZ0dvdTcybVoxK2QKQmlBOWVnYzBBS2hEM1FLbUFlaG9YZm0reXBBR29PcUlVcTRDU0FrSkdvQkNQcm5NcDVTR3kycUMzdktRRHdCVUhoQ01TbjBHZStVSgo3bm9TTzZKdWFFZUZuMWozeEJsSUI1QSs3RWNIVUlhaXpucWVTVCtRT1BlZzJnOHE1TnlhUXo4ek1naHVQaDI4clFKbzhHMS9DeTFqClFkbm84N3J1RjBBQndhVUJpSkk4akFxZ25WenRPcmt6RmtDeEJwb05RSnFCVXNWaGlBWWd5RkpoTUVrYVdxSU1MbEg2VXNUdVpUeWsKZDZuWTg1VFk5ZnY4d0FMKzNQTlN0Y2RQVllTY2dKNUlrRUJyWWZjSklFRm1CQUZUV0FRZ0srZjZCbHUza3V0YTdKMGVhWmhJSDRqbQpubnZRRHdKUWx0S2ZwUXhHQWVRYnpQYjNMdmQxditrOTVBdDdBVURWWlJRQXFLRlNySzhPdEpYTnVnVFdVdTZMQTFCWTRUUUFDVHdWCkN5QTNqU0VBMFk1WUFJRU40Z0FVWnlBTlFNdWtxOW5jMVJ6eTJEWlBZS2ZUVVdTM3hRTklONUFPb0hnRDhYMHBYTGZXQ3ExdWowYzEKb2NWazUyd0FTbVc2a3BuK1ZLWm5KZlh1WnFMOERkeXp5Mm5lNHpTOWc1SHZPS2xkRGpyUDVWSTNlUldCZStCZk1odUFqRzQwRmZyZQpBVVNLYUJhaUJpQ01MZDVGY3lxQXRKRUdzWW5PTnRCNHZrd2NRUWFTUmpOUmh0V2dicUVzcVM5TDdzbVNyNkdlSWZsS3RuTHBXZW5DCmN1Vk1qbnc0VDY3eUtueGxFS3NOdVJ2OC9Hd0FxcXVnR2tONGs0K05oRDBSeVZnc2MyOTdhdmR2S2Z0Z3VVMDMwQndBMGcyVVNCK3QKTFRxUlBwOE9RTE1sa1RLZkxvbjArVzhCa0c2Z09BRHA2SW05T1J1QWZycU9CUUQ5MHpwa29BUUEwUWhBbTlnN3oxR2ZQQWZ1OGR6Wgo1UG0zNTkyVHp6aCtzYnBrNHVXaWJkaVJUSHB3a1RLYXdROW5FN2RUK0lubC9FZ2FPelpydUVFQVVBWTE4RExlWk1KdzNHTWttUktHCnRWQ3MyZVV1c0dONUdvQUlaMzZJY1FDQVduMkNEaUQ5U0ZRZFFMRnRRQnFBNm4xOG5aZXJWVmd0TlRKVEtaQmxyTnRMMjBvdzloVjcKK1dabnl3dFlQVHArd1NGc2QwaTd6ZFFPRy8wc1YvKzV3NWNONTY0OGVQU2E0Y1RRQTRmT0crRG1vVXNvYXIzSHNGOUZENlQ5cktIdApER1JleTJtSW9mblV2Q1lVUTlPWnIxU2QrRnpONFFkcmp4cU9YekQ4OFovTnYvM0hobzZiaHE2YmhvNGJodlBqaHROakQ1d2NmdWg0Cjd3TkhMejl3K0p6aE1Db3NQWGo0MHNPSExqMjgvOEw4OWd1RzFrc29BS242QzErdFBQVTc5Y2NNYmFjQVFGK3FxZHZzbzkrbWd1dW8KZDFPb0d5bjBlK25nRzNZY0JQTXBBQVNmTmJVV2laS3Fsb0tXc0RlZm9VKy81dllhc1h5MEJPWkIyK0FCUUNaeTFpYm8yUUJrdGJpcwpKWXpGcUppTC9FYWpYRmpDNVp2NVBLdTB4K0xkYStFTGJFU2hIWjBJWm5HQ2ZWMTJoeHV1K0hubWRHMUZkM09WRHFDZWZmcjA1eWlBCm91dGZNUUI2dDdIcVNHMlpCcUNHVW45bGFUeUF3ajY1M084dERWZlVCT1dxa0w4MElGVUdPWWRTdllLNThLUTRvZEVIbFgrbXJKUEsKb2lSaUNQU2pCcTVNanozVUswQ2FFdUlNQkZrWm5Jak5xdEFOTGF1REU1QTFJVlRhaWMzVDRWdVFSQXhGQVJTOGxSdnNmOXZmUkNzdQpBSkRmaC8xMkFISjRHUGQydnZiWkJBRHBCdElCRkdjZ2VGK2RKZzJsaW9OYTBLNTRjVUNkd2RNSEFFcnlEaTJSQnRLNHZuVDEzUFduCnhKN0hoS0ZIK003bDRzRmlueThTZEZjRzBSQ2d5ckRySGdHa05RQUJnRGlaVlFIazRsbTdoY08yTVkwcnVCNGRRSW4weWZBTlpNVUUKZ1VaTmdudmlBUVRKOWcwdjl3OHU5L2RtK2J0ZlZZNHFvWUM2QkViQWExOWRoVkJmSFdvdG5YVUpUQU5RWFVTT0E1QWljM01BeUVsZwpPb0Rlb01OeEFJcGxVTFFDSkhjdTUzdWVvZDk5a1FqdmNMb0tiV1pEdW5BdDBVQnFaZ1pRbXRBUDRra1Z1alFBYVYxQlNWVDBJTEFaCkFaUkNENmJUUFUrVGgxLzB5Rys3VGJ0Y3BqME94MnU0OUlaVDN1a1E4cHk0MFdNeWt3VVdxbGc3Qyt5ekFaQmd4VkVSeUV4S1JRQ2cKUFJTM2lUdVlJZlduaXRGcUpLb0dpWU53RHlSVDdJV2JVeG5Na0ZIZnUvYmcwRXVYeThReExSbkNPR1MxTUp3dTlxMFJMKzZXMmhRNQpVQmtnNndKMGcwK1pEVUJOWlVSVHlGVVRFV3VEdE9RcktWYThPY0VEbnQwTmNRRFNEUlE3R3pvMmlmVDVkQUNhTFluMDBmS1hxMlpPCkluSG1UaUo5UGwzdTZ1OUo1RTVDVVB2UjNRRFM4cGZQc29rR2l2TlFMSUQrWmgzN0d3QzBub2tCRUQyNWlmaVBMWjdKOWU1UE5ycC8KL3B4ek10djYwelZGcmJ2MlBpTTA1M2d1TEpCdVo2TEdsQTh5MlE5V1NOZVdNTGZpM1RPVmRCNVZnSmFSL2R2Y3pWYUNwQmdyelZrNAp0b1FnalE0c3orYmFDd0VBdWUxNy9iU3RUZ1hRL3BDaUEraFlaVmdEa0thZjJEYWdXQUNCZXlBQW9HcUpydUNKVWdhM2lpVkdWM0dCCjBWUllZaXQwdUFvZGxwSVN6a1g0bndBQWdBQkpSRUZVSTFaY2JMVVZtUjJteld6cHcvdlBHYzVlTmh5NWFqZzI4TG1EWnd3SEw2Sm8KL1QzN3podmExYUJpRDNLUFJoOUQ0N3NvRFNjaFg2dzViamh3d1ZCOTlIZktEeHYyWHpZTTNESjA5anh3N2Ywdm5Pb3luT2xBLytlVApGeDg2ZE9uejhFZUhyaGlPZFJqMlhUSHNBKzZjUmNXZTlsT0dsclB6bXk0KzJBajNBSzBPR1pvT3phczkrN215YzRicUkxK3FQYmcyCmRPSXRxblFkZVRvWkFFUzluMEdyeEdISDV3QlFHbk5qeHFRd281cUJsbEhYTThqUlpmUklLb08yZks5Z3JyemlpUlRoeFNiMzdrSlAKd1JTQTl0NHZnTDZKeWQrd1Y3eHFPZkJTeWFtdDVqTmJMS2MyMjA4OTd6aXp3MVN6eXh6WlkyTUtIRGFqeTJSeEdXME9xOFBoc2pqTgpRWUdPQXFpcG9tZGY3V3dBQXYxQXJyVFZSNmNnSmdDb3RGUU9SaENBMUMxZ1VRQkZ3aFYxQUtDd3R6U2dWQVU0VEtsY3paNS9TcnlsCkxYdkY2NGVKSG02cUdTZ1dRTWtjL0JIY002WXhhTG9VcEVTdEVGY0ttbEUvcXhMY002V2ZteHFBWm1RUUFHaE42SFp1c0hmN1p3c2cKcnY1WnVXdEZZRHpSUUJCOUtHSWlnSlpOQVFoSlNCN1NETFNFNjBxUyt4ZWlMV0FqUy9uaFpCNGRIUHVZT0xCSTdQc3kzNzlZT0wzRApXeG9La0RWQkhOeFRGZm9OQU5LdXh3S0lrVGdBa0pkQkFDcmgzUzh6emN2NVBnRFFqTXRlR2I2aEdmV2pabmpHeEFKb2VReUFYbEpPClNPRlFmZGhWVStZR0FOVlVTaHFBV2lxVW1STURvRXAwQ04xZEFLSVo5K3dBY2xuUnlNQW9nTExrcmtRRFFiS0VyZ3pwRWdBb1MraFoKelp6ZFFwUy80M0lWV3dGQWZFZE1vbU1UMCthb0FJR0I0QjZoQy9WRXMxMUlQK3kxaGRUMFlhaTZnYUlNb3Z2U3lMNVZub3Vic2NiWApYWjRkV1A1MkxQOE52R1NIRTkvcGRPMXh1Zkl4UjVIYkJyZ0J4MW5WUXpEUUNFU3F4RUtiNGJLRU5CV1R4aUlDTWFoRVBSUERRYnR3CkJpTjVOTmhibllXSVJjY2hxck1RUmNXQkRDU2ExU21JUmxvd1k2TE56cHNMV2Z3RnRqVmRHSjRxL09qY0dWb21vc0xQWGZmRVJHdVIKanIwblhSeUVwSWtUV2RKUWx0enprbkpFOUFsMWZtZGxrS2tKY1hWQnNpRk1ONVd5eldWY0ZFQnE2aUpDUThSZEY0YkhNUmxXSEtSawplMWxzV0t4ODY5QlcrbHZMdWI5SWRZdy9hL2xvT2ZWSFdjVDNWcGQ4dk5JUkl5SHMrK2l3TVB3SHEvQS9XdTMrL2hvUEpMRXQrazlqCk1odG9ZcGUwRXVtVCtQR3pmZTUveWRKWVFydjBwOHVNLzZ0RTlPaEpGSThXN1kvKzZsa1c4dU8xSE9TdjF6SzZmbjZpNWgvWHNSQUEKMEwrczQvOTlIWU9TUS85bkR2V3JYQktOK2RsQTN0bEEvT2RMMXNrY0o5ejgyVmJYNURQNS83eG16KzMxemhjWnFjaGhmOVhWdHBvYwpTK1luNEhrd2t4MWFUbzFtMHNQWjlFZ1dNNWJPVHFUd1dxNm44V1BMMEZ6ZDc2Mm0rbDhsMnVHUlRUTlduaStpMkdLTUxrR0RCUEZDCnA2dkE3c3kzdWZMaFVxQ3MxVjVHT3hEalVLbC8raXl3MHVDUnNoQUVyaHdNK3crRWZKQjlBYVhOSjdVb1FwTlhVZW5EMU10VVBVZFcKc1VTQWQ3TzhrN0h0d2t0MjJVejVGclBKWXJIWVNvcWRKWHZnbm1KbkVSam9MUS81eFlaV3c2bk9CNDcyUEh6dzJrTnQxd3dIejg0NwpvR2IvNlhudHArYTN2VHV2K2RqOHhxUHpHNDlEREkzSFVPcVB6cXM1K21EMTBjOVZIZ1VKd2ZXSGE0OGJxbzRZV3MvT096ODg3OEs0CjRkMFJ3N3VJT3c4ZXVqcnZVS2ZoYUlmaDZIbkQ0ZE9HQXljMVJjMXZQcTBWa09ZM3ZCdE56ZW41dGNjTURRY05OUWUrVUhwNGZ1V2gKZWZYN0gyczg5RExkOEF6Vm5VS05wZEFqYWN5dFpQNDJ2RUpua0JPeDZJSHZ0cDRFRC8yR0xHZkd0MUlOQlhnSmZQT043b0k5bnQzRgpudDJZMjFqaXlRTUFPVmdqQlBUam9OVE5YNHpSVFVGSzBEaEUwb3g2Rnp3V2VHdFhqRnRmZExaa2tqM0o5RmdHMFpkR0RLZVJRM0FsCm1Sck9JbnB6c0V2ZnROY1gyQngyUzZIVGJIZlluSGFzSUkrZ2o5TFV5VWE1dDY2bXY3NTVvTGxtb0sycVozOXp4NUd5L2dNVjExdXIKeHB1cmg5cXErOW9yQnRzaW95M2h2djJsbDlxclRqVFhIYXV2T0ZJWGJLc1RHNnVFdWpJUkJCd29VN3dScFZxUUtsaGVERXUrU3JuZQp4elg1NkhDbHJGUUdxdjNCUnIvWEV3eXU5eDU3bkxtOVdCaGZKRTBzbEc0K0pkMTRTcGhZaENiOWpLWnlhT3U3YnFBWm8zbElQZjhMClpjWjFzZGhvaDRKbCtXNXJ1ZmVqTUtLN3d3THZaVWJHTW9LM05paERlVklOSzlxOXNsbnlXY0krVjFnRlVCeDl5Z051alQ3cUNFRzMKT2doUjY2SEJSTWtwU0JnUDF6a2JTVGwzY3JVNXZ0NFYvcEZzLzBoV0FESUdXZTRieS9hT3JWREdaZ05RYkNlUTNnYWtCdFdCa3NSKwpkR0tHM0E5WklQVStLWFIvVGV4NmtoNUlZbnEyZWx1RmtMTW1ZSTBFcWRLd2ZrZ3FHb0dvQXdoUzdTY3IvRVNGanlyM1UyVSt0QVFXClVBaS83RkVFbkJVOGxPQ2tPTHVSVlo3bmppd1R1NVlvZzFPOXo3RkZvUDZNZVBUY2IvcjFiUFdlY3ZrcnFrTWt2T3JWbHFFalVWc3IKK09ieVdaZkFXaXY4amVVYWdBUjFFQ0lia3RtQXpNb0t4d3NJUUpwKzlDWm9GMjNGM1lUZDdUU1Rkb3ZiWmZIWTNxTGtYT1owWXUwbgoyZzB0ZGkyWE9yUEZqaXp4Nm5MaFNnNTk4QzJYWkxZVUcvUkpRYkVBUWdiNkxBQUVnVDlObzYrdTlwemVpdFc4N1hUdmNSVHVkQmE5CjdiTHRkTVFEeUVMZUI0QUlEcnNYQUpGaUZFQkZETDZWYVlLMzBlbmlnQnFFbUdpRVlSVkc4ZlNaTFZNQUdwOEMwQW5lSzliNHNia0IKMUlBQWhHa0FpaWcyU3JLOEl0WXZFVy90TnU3N0tKTitmNlg1Mnl1ZEg2MXdmbmVGNjF0UHUvOXdwVW12QnVrQTBneWtuUjRmQjZBNApBOFVXZnVLS1FIKytLcHBFK3Z6M0FtaTJKR3BtN3N6NEtmODFBR0owQVAzeld1YmZjdTRHVUs3bmsvWEVaSzduVnhzOGs2dmNuenhMClRxNHgvc2V6Ty80bW16TmFXbDdIZzBYNDlqZmQzSHJ5Y0JaYVVCNUw1VytsOHpmU2hWRUkzRXhtYnlTenQxTHBteG5Vald4eWJCVXgKL0FKOStBMnFyb2poY1RUanVKamtpdXlzMGNnWTFiMWdCUTdRanlQUDZzeURTNDR3VjhvVW1nZXRBa2pmQWpZM2dDQ285VWRoNjJTbQpqaWVyT0UrSXhUakdBbEFyZGxndE5yUFZZZ1Q5V016RlZwc0pGU0ZNVHN6b3lNUGx4eHFQR0U1ZU5SenFNQnk2WURoOHhkQnlDYVhwCm9xSHh2S0hoL1B6NjgvTWJ6ajdZY003UWNneWwrYmloQ1JoMDBsQi93bEI3MGxCendsQjEyRkJ4OENGMHVjL1FjT2poWStjL2QvelMKUXdmUFAzaXc0Nkgyam9lYkw4OXJ1bVJvdTJ4b3YveGd5K1V2TkZ4Q3EyWnFBUW5RTTYvK0pFcmRDWWloQ2tIS1VIZkFVSFh3QzZWSApEUlZIREkwSEgyazY4aExkdElicVJxZDlUUU5vTkJaQXNmcjVGTWxpeDUrbm12ZmlOZzFBK1o0OUptSVBBRWlyQU0wSUlHQnJMSUJNCmFoLzBpMWhyQnQyM2xKbFlSZzZtVWlPUVpXUS9lQ2lWR1ZudDduM0JjWGlIblRmYUxCYXIwK0xBTEpqRmJuYzJlcG5lNnREWkEvVlgKMitxdjdDc2JhQzI5M3ZoLzJMc1A2S2l1YzIvNFIxVGZKTTZOblp2RVNkeEFJS0hlQmJqRWlXTW5kdHhqREthb3pXaDZPM1BhOUtaZQprVVR2dlJmMTNudWhkeENTVUFOUkJhSVhhZVo4ZTgrUmhrR0ZRT0w3cnZXdDkyWDkxMW1IMFlncWFYNTY5clAzazFLYnRtclB4dTNSCjJRWGNxdm9mYXc0R0ZWZUw5eFVxdDZTdlRWdXlhK21TektVcGU5S1NOOFVtcmpIRnJvd3dMWTNWSkVWclRMRWFRNHplYU5Cb3dEZmMKQm1Wa3BDYlpxRTZLakVxTWprNHh4aTVUR1pOMFNsR0U5a1A5aHJjVkRlN3ljbGZ3WjhNcVpnQ21VMVV1cW1vWEZleWVIRXM4OXZmUApBZEJJQXcxT1JSMHlrRzBhL0wrY0NjOHd5TTl3WUFoQXhRczFDZjgyZ1BTVVNFdnhLWVVBVjRrd2lpUEFoVjhwa2owTnVmNjZxZ0I5CnRiK2gydGU2NzR3cENBRUd2U3lBSEpVbGRnQ0NCZ0lBZWxPVkR3RkVGTDVENUgya1dVNmFSQWxHRGdCUWJNU1lBSW8zUGdVUTB3TUUKQUtSWFM2MEFrbUFxQVFCUU1LbjdpTm80UTUwL1ZXdmI5dzRCWkZ2OCtna0I5TEZ1cDhDUThMSUFTb25XQWdCWnp3RWlJN1hVcUFDUwp2VENBN0EwRUFBVG9Zd1BRTEh6OXR5SnRHQ2Q4RUVCREJob2RRTU5Yd2NZQTBLZ0dta0ptT2VQNy9kQ05meFBGelJYSWd2aWhpd1FzClFCOFFwZ042a1lRWFpnVlFPQW8zZ2owSFFDeUFwQmNHRUtxMkJ4QUxBT2hUQ0NCR1AvOCtnR3p2NWFTc0FnQnkweFIvb3RsR2dPK2UKRFZKNEZtSUVQaGFBVWlKSkFLRGtDR21jRVFjQUlsVHNMNVRKMDFYVlRxcVMrSy9qanJrTG1ydzRoNzFZd0VBTmZwTGpkZ0FhWmlBRwpRUFp0MGZaSEk0NDAwTWlGc1A4SG9KOENRQVJJNzB4b29MNVpCQUFRVXdGNlBKdDRNaHNibUEwQlpKa3RwVUg4WmVhWmZOcURUN3YvCjBPL3lZL3kzRzZkcUtyNFNKeTVDNS8ySWhuNGgxNzRuMysyQ0g1aENIWitpT0RCZFdldW9PRHlOT3VSRU5MbGgxYjd5d3Zma2V6N0cKTnYwTlc4bVY0MEpDSkZPRWtNcUZBRURnZFRSY0hoS0VMZ0FBZ29VZkFhUVBSN0NBeTE5QVNGbXhLcFFCa1AxT2VIc0FyWXN5TWdheQpBV2c1cEErWnFGVWthS2hFU2g1UGlpTnhybElXR2lJSUMyS0hoTEJaWEQ2UHorZUhzOWlzc0pCd2RwZ2tUTUZiSVBvaGxIZ3Jham15CmV0ZWtwZHNtTEZzL1ljVldoeVV3c042VHNtbmM0bzNqRXRjNnhLOEd1SmtVdGZTVnlLVS9pMXp4ODZqVi94V3pibUxzZWlSMkhSS3oKWmx6VWhna1JheWRIcjNXSVdZa2tyQmkzWXN1RXRUc213aTdtZmNqSzNjanlIVXpHTGRrektYblB6K0wzSU1BNlZ2RkE5Q1J2ZGtpQwpRUkkzSVluZzkxcVBKSzVHWXRlK0VyVUppZCtFcEczODlkSk5uK0xMZmJHaTZVUU5rTVFNSEFDb0RnSUlxMzFaL2JoUXRhUEdsYXI5CnMzejFqeEpwdURnb1RMb0lBa2kyVUNnTllRREVKMEtIQVVpTWp3S2dNREgzcjlKVk04Z1NSNm9lTHE1WmU0ekF6VlFTbGxoYzVEVXoKeGRtZkNaTG04V1doQW42NFFNSVdTV1U4empLakludEo3TjVWQ1h0V3grNWJFMVdWbHB5MmYrT2NvNGRtdFovNzFkMXJTUDhqNU1FQQpjdjArMG5wbDRxa0xiMWMxZnIwL0oyckZxaTBKTWJ0aW9qWkh4YVZGeDBmR3hrWEZxU0tqbFlab0RSbXRKZ3dLblZZWnA5Y2xSUmpqClRZYlVDTk1Tb3pITm9Fc3dVcVJlOXcyNXhRTTk2S2l1bUtZc242WW9jMWFVQTZ3N3FTckEvUlN5WkZUOU1BQWFxWjhYQVpDOWdVQTgKZGRYRE1veEV3MnprcjI5eWpheHdOZFYrb0MxYXFJbWpORHk5bHFQVmMxOFdRQkZLcVpFU3FoUWlVaUZXRW54TUxwbFBwUHhKVzJRZAoyUUdubGNFWXEwR3NQVUFWTHd1Z3FZcGlrTUc1cEpyaWQ5V0RGYURmS3ZQK1NPUy9pZWUvcDFvbGh6TXVPTlltYUVZL1l3S0lLZitNCkJCQ2hGS0FVUDRnMHZFOXRtYTRxc0FISWZnbnNwd1hRaDdxOUhFTlNmQVNXRWlrQkFFcU5wWmJGS1o4RG9HV3hlZ1pBaVJId0pPaG8KUGNVQVNLMGhHUURadHNFRENVbmxjUFROcUFBYWRRbHNHSUJBQXZHTlg0cE5RVHpCVXdCWkRUUW1nT3dOOUZJQWVwZklkY0xTL1dTYgpQeEVsek9WalFmendZQUZuZ1ZBd1R5QUExNFVpUHR3Q0ttWE9BWUx6djhZQ1VJaU14UUNJandsZkVrQWNBY1VLSlVSL3cxTmRGRVZqCkFlaVpSMTRnNERQZkhaS281Q1AxRHJuV21LQkg0MDNVY3dDVUdrR21SWWdZQUVYcitKU2EvWTBxM2tWWjlxNisxazJSa3pQVGVNSjkKMFFHZjBMTnV2Sk9lWEdBZzVtU2drUWF5QWNobUlIc0FqVFRRcU0xQS93OUEveEdBWmtQOURBRUlmd3FnMmZpaldUZ0FVUDhzMUR4TAphcGtsb1dkS0JtYUczL21BUlh2UHA2ZC9meUJBNGFTdWRGUWMvYk44M1Z3Wk1WL0crbEVxK3J0NGxhKzAxZ2svNmtRMGVHSTFua1NwCkQxRXlTNTc3RjJ6UGwvSzE4L0M0VUZMSm9hUVVKb0F0ejRwUWpBekYwSENaaUNVU0xPSUt2MmZEQnFCQkFIR0ZDd0dBY0VsWUZDVloKb3NGWEdCVFBIQVZrMWMrb0FGcXVVNjNVNGlscUFDQlZna1laVDhuaUNJRUo1VktDVUM1cnZvd2ZLdU9HOFlJV2hTOE1Gb1NMK0Z4NQpLRXUyS0pTOWFOR0NPU0ZzSjVYcDlZUTFVeE0zT1M3WjZySmkvOExsbTRKWGJXV3YyeW5ZdUZleWVaOE1aT05lNllaZDh6WVdmTE15CjQ1T2s3VE1qMTgvUXIzNUR1Mnl5TmhYUnBJd3pwQ0g2RkNRaURZbGFoc1N0UmxLM0lVdjNJMHZTa2RSTlNPcEdoelM0a29Xa3JrWlMKMWlDTDF5SEpnRGdiYkhGSVdHOExFbStWVnV4S2grZzFreU0ySS9HYmtkUU5BRUIvd1ZkNTQ4WFQ4VG9yZ0dxdHE0cVZBRUJqK2taUgpQV3BjbFRXalIxSDNJYjVsamt3Wkpna0preTRJUmhld1pIQ3dLek1MREFESTFnTmtEeUFoTmdpZ2NPa2dnRDZXclhZbXk2WlFEVE9JClNzQTFFR2NjVHRCOFcxWHBTTlI3U2N2L0xGai9UNEVpUkJnZXp1ZHhCSmhVSWxvVFlkeThKcllrMlppKzNGUzRmT202SFprQkhZZi8KNjY1bDNOMEI1TTRUNVBxRENkMTNKamJmZERoMUZUbmVneHkraWh3NjkxOWw1Vjl0M2h5ZG1wQ1dZa3hLTWk2T2lJcUxVa1diS0wxSgpxWWhTVXlhVlhxZUtOeGhUSXFOam9rMnhzWWJvZUUxVW5DSXhDalBwVmQrcFY3MmxLWGxMV2Y2T0FuYXJURmVXZzYrQjAxVlZVOVhWCjc2aEgxNDk5N09oVGE4MFlBTEllRGpUc2RFUjRRT0lJQUkxbElBWkFmdG9tTjFPNWk3SG1UOXFDSUUwTXBlRUFBT2tNZ3BjRlVKUlcKYnJSMm1zb1ZJaHpuU2FYaU9mS1UyYW9DcDhoR3A0aTZHYVk2VndQc1lXTDA4KzhCYUFwVjlLN1ZRRUEvSUc4cXJVdGdpdHpmazdsdgpFSG4reXZVaUxSWURsOENrVnZlOEVJQk1lcGxCSTlOcEFJQmtsRkpFS0hreWhmQkhNaktRMmpaTlZlU29MZnpmQnRCTVhXYW9JUzNXCkJNOUNUSXJHQVlDV3hpclNZZ2VuZ0kzTVdBQmlkb0VCQUdHNEJMWkNXd0VFaTBCakEyaFVBekVBOGxMdUIxZmdJWDlpeTJlUzJIbDgKZEV3QXpWRG1nWXpLb09jQWFCUURZVVhUc0Z3UGRPZUhrdVZmQ3czekJKS0ZRdkN0STJlK2dBOXVGa0VBd1ZYd0lRQlptNkIvRWdDcAp3Z2tWYXhCQWl0QXdqUDgzWXJFYlZlQ3NMTEttK0drVXBTQ0RESHFadUtsTHdVZnpCOG85RW5Wa25KNklpNkNTak9pWUFJckVHUURGCm00ZzRIVSt0Wm4ydmlQWlFGRTQxVnI2aE96ZzNkR2VUaC9pbzU0SlRidUV0TXdRMWZsTGJDZEgyYTJFd1l3REkxZ3cwakVIMkExUC8Kalo1b1cwYlM1LzlmQU9yMEoyeHBEM2dhZXd3Tnl4Z0FJb1lBaFBYT3hBQ0FiczNFYjgvQzdzL0NyQUNTUDVrcEc1Z3BzUVNJYUgrUgp4WTkvZTNZUTdjVjY1UFBqSFdmZWdyQ2RiMmhQT0NucS9mQ3NiOFJKOHlXaVVISHdYTEg2cjdKTnMvQ005L0Y5SDh0M2YwWW1mRW5HCi8wREVoWkNSUWxLREVUSWx5ZFVRWVdwNUtFNndCQlJjS1libjRmRkNoZnlGZk5GYyt3b1FBeUJNSEJwQmlOTFUySEk5dFNaU1p3K2cKamJHUnd3QzAycVJiYWRBd0FFclZVQUJBOFdveVhpR0pKVVU2VkNqajhvQjh3b1BDZWZEUWFUNC9CQTBPVnY0elNQZjVRc09QNFl2MQoralg3MXVXbmw1OHVPZEorNFhqTHJaYnpsZ3VkVDdwN3pkMDM2VXMzNlo1YjlNV2JkT2RWYyt1bC92UGQ5T216OUlrejlNR1RqK3FPClhDdXRQNVZWV0xKdHo3NzFtNFNwYTcrUFN3MHd4dnhSRy9remJlekVpQldURXJZNnhPMlltTFJsY3VLbVYyQ2YwT3FKc1N1UnVCVkkKMGtyQUlJZTRkYmFNaTFsckN4S3phbHowU2lSbWhVUGsyb2tSbTVENGpVanEraitrcnZzUVcrY0ZHNVlCTENyY0NHdGJsYkxjaGFpYgpRVlV4R1dtZFVUUGNQVU54VVRhOFQrejlWbVlLa29TR3lYNE1RNFBDWmZCNDdtSERVQm45RE9VWkFMRWxISlpvRUVEdktnWUI1R2d0CldRRUF3U1VTb3M1TlZ2MithUGUzQWtPSUlKVEhEK1h6WkxnWVh4MGJ1MzFWZE1GaVpWRmEvT2F0MlIrZGFVY0dMTWg5R3JsQlQraDQKTVBIYzlYR251c2VkdU9Cd3RIWGNvZlBJb1pNVGF0cVE2aTZrNHRRZk12SVdMbDBXSDZOTGl5ZVdHUFd4UnJWZVQ4RVlWSHFET3NwbwpTREZHcDBYRUprY1lZNk1NMGRHNnhVWkZySXBhcEVpWVFXMTdSMUZsbmZkZVBwVXNtVWFVT1pJVjRPUFpXWDNnK1FBYW9aOWErMUVZCnRrTVI0VWhVN1dBOGRIQXN2QzBqb2NOWXh4NDk5bUVBNUdhcytwTTJMMGdUclZCempKcC9CMEFhbFZpdEZKRXFrVnlEeWxWQ0hpWC8KUXIzTVBhTE0yOWpnWTJqdzBkZjZhbXU4ZFZXZXVrbzNmYVhMeXdOb0Nsa0NBUFNPMVVEdktHSHY4eDhWK1grZzhuNUw1cjFCWnYrRwp5UFZVYk9Gb2xCRW1UbFNFSk43NHZBcFFyQkZsOUJOcGhBRFNhMlZhdFVTdGtBSUFrVXFlbEJMTklXTjh5ZDFUVkVYVE5ZTUErdDliCkF2UFQ1eTNVTDRrd0Vvc2pJWUJTWWtnSW9QZ1J2YzkyVGRBTWdKS3M0OENHQVlna1pBeUFRSjRQb0pIMFlaYkFuRlY1RElDWWFwQXYKdGZPdnNxVHZoY3BuQU9TaXpCa0dvSkVHZWxrQU9jcUtwOHJ6bmJCTVgzUXI3SU1XR3I0WHllWktlRUEvSU1GQ2JvZ2RnR3hGb09jRApTSXlMR0FDUkNzRllBSkpwT0lTS0xZZUhRWE9FRkFUUTMvRWtOekozTEFDOVlHejZBZmR1NE9OWVZUVmJtUzVReGNUcVNRZ2drMndzCkFDMk5KSlpFQ1JrQXhldjVXazNJUEtYSmg4eDIxSmE3VVBWdmFpcE1YNmVkZEFzNTZNays3STRkOGVJeEFCcG1JTWdnT3dBeEJySUIKYUZRRERSc2EvMjhiYUNSOS9tOEcwTldaOHFjQW1pVm5BQVR5Y0NiNk9GQTZFQ0EyK3dzdHZqeXpEL2UrVnlnOVhVUlBDMTMxamRxTApMQTdBYW54VXV3UEk3TzhsVWNGU0VWYzZMMXdXc29BZy82a3d6cVVpZ3drVGh5UUVwQng4dFNJb3ZvSUtVMU5CS25LQmtwZ3Z4NE80CkJHOCtqdjBnazg0WHNvSUY4K0ZBZURUWUJpQ21DUm9BU0M0S01XSUNHNEJzUndFeEFBSVpGVURMZEdTS1ZwbXNVU1dwOEFTRklJb1MKa1NqQjVwSkJ3ZGlQSVpydk9jbGZoaS83ODRMRXp4ZkZvdXIxYXpZVU5SL3Z1ZFYxbGI1KysvR2RKMzE5VCtocnQ4Mjl2ZlMxUHZySwpEYnJuT24zNUduM3BLdDExbWU3b3BpOTAwVzJkQXgydEEyM242Yk5uNmVPbjZFTW42TVlqajJzUFBLaHFvc3NhNlp5cSsxdUwybFpuClo2WHRScFBYZXlTbElsRjZKRElWaVV4RG9wWWpVV3VSeUkwVEl6YUFUSWhZaTBTdFp1SVFPWmh4MWlDUnl5WkVyb0RQajF3MUxtb0QKa3JCMjR1SVZ6a2tyUHNBMmVXQ1YwOGdHRjdMU2phaHlwcW9ZQUwwNGNaaTRxV3BIelF6VmdWbEV6cGRvd2dJcE8wdzJsdzMrUjJRaApIT2w4b0I4R1FDRDJBSUpkUVFTYmo3TjVXRGdmNVhBbEhPdUlVd0FndUFRMmhhb0hVR1AyNnNNS0VGWGpUSlZNb3lxZHNacVprcHl2CmhFa2hmQTZQRjhMbmlnZ0pzVDBpWnQvS3FMM0xkZmtyMTM5eDRneHkzNExjbzVFN2R4MHUzNXZZY2hjNWN3YzVjeE01Y3hrNTJZb2MKUFkwY09UeSs4Zml2S3M1UEtHbEJpbzhoV1FWL1hiMG14aFNkRkJFWkZXa3c2RlhneGNha3BjQk5wRUdiWkl4WUc2bGFZVkFsNjZPTgpwcVhZNG5WQlczYk96cTc1YlZIcmEvdGFYOXQxOXJVTmgxNWZVdlBiNkxLMzFXVk9XS1U3V2plV2ZwNWQ5aHJVajR1bWJpUjltRXJQCk1QZllNcEk0VEsvUHlFZVkrR3NPV2dGVStTZGRUcEFtVXFFSkJ3QXk2SVV2Q3lCTUE3L05WaXFsR3FWY2g0bHhLZlk5c1R4QVcrNmoKTHZkWFZ3UnFLa0g4dEZWZStpcFhRNld6NmFWN2dDQ0F5SkozckFZQ0FIcGJVUVQwODNzeTk3ZEU3dStJak5lSlBCZHlaN0JhcHplRgpSMGFLZ0hMR0FwQnQveGRJaEFFRkFJTGxIeXVBRk9DRlVza1JVNkp2eVRnUGF2KzdxcExwbXZ4Um02QkJScGptcGZJVVFDQS82cGNiCkRDUjR5UU1BV2h4TkxJbWgwdUwxdzkwemxLV0E0M1lBaWpIQWdmRGdBMUtyb1pocEdBUU9pMEJ3TDVoY0JQSWlBTEp2Z2g0R0lDOXEKejBmeVpWK0pqY01COU5SQVF3QWFacUIvQ2FCaEJwcU93cCsrUStSTnc3SjlaZHYvSWtyN1VtVDRWb1FGQ1Rod0pMMG8zQTVBM0pjQwpFSzRRdkRpQVdCanZNeXpSZzhqK0R3SGtQR1FnOEk1V0FGVUhVSms4WlZ5MFh2bXZBSVFEQUFFT0owU1FDUWFCVVJ1eVVHbWNTYVpQClYxVjRVTVh2YUtzOGljd2RIMFkwZVBIcnZQbW4zTUtQREFGbzJCbUp3d0FFWWcrZ2tRYXlEUXY3RHcwMGtqNy8xd0xvOGl3NUFCQUkKQUZEdlRKUUIwTDJaOG5zelpZK3NBT3IzRjVsOUJSWXZqdGt6M09MTWV1ek12ZUFmTms5QnpjVlcvMENremFWTTg4ZzBOaUVWWVNJTQpaV1BFSXFreVJLVGlTNVJDVk1GUjRKaUNrQ2lvY0lvS3hxaUZFa1VJand4bms0SzVwUElMTXZsamJOV24wb1J2SmFKRm9qa2hrcmxCCk1qWWJuZ0MwMEZZQjR2RG15d1JCT2hrM1ZTVUhwbm5tTEVTcmZwZ2kwRWdBcGVrb0FLQVVqVHBGaVNaUmZKTkNLc1YwUC9KaVB1T3QKK0ppN1pqWjcvVjlFMjhWSlpSbmw3VmN2M2FVZlBPenZ0ZEI5ZmZUVnEzVHY3WUZiRDhEMXlhM3JqNjdlb0cvMFdhN2ZzbHk5YWI1OAp6WExwcXFYN0N0MTlHZVJoVyt2amxwYUJjK2N0cDg3UVJ5R0E2Tm9tdXJLQkxpaWlpOHZvb2xLNnNKek9LQnZZV25CdHhmNWowZXMrCk44WjZhQ05mVlVVam1rUkV2M3k4Y2NOay9icEoybFdJYVRtTWNUQU9ocWVaQkI2SlhJWkVyWFNJWG9ja3JIbzFPZFUvTm5rV3RzVU4KcTU1T0huQWp5OTF4dUtWdW1oSit5ekcyZnVBaEZ5UGpwcW9aTmM2cWc0Rms4VC9rUytiTEFJQitDSmNCQUlXeHBITVpBREVHZWhFQQpmWUt1ZEtHS3B5bnF3Sjl6QmxYbFRGYTZFaVdPVkxVekNZZUpnaHR2V2VsbndqVUwrWElXajgwQ1g5Snc2YjZJeU55bFVlbExZa3paCithL2M2d1A2bVhCMUFPbTVoclJmZFRoOWJkelJheE1PWHgxL3NNdmh3SG1rOFRUU2RCWnBPSXJVSGtTcW01Q3F3MGhSL2UrMkZ3VXMKM3krUGpkTEZSQnRNV3FXUjFPcnhLQTBGcDRERlJxelFHS2tWUzc4c0xYTnY3dmpOMVJ1VDcxeDN1SGtQNmFRbnRQU09PM1BSNFdEegp4TklqdjlqVDhMc1ZOZStZeWgycDBsSDFNMnJ0QitwSE0vcFNsM1VhZk0yb0dRczZvNnFJQVpDSHFRSUE2Q050ZHJER3BOQ3dBSUQwCnVwZXVBS2wwa0JFNlNxcVJ5NVFTT0g3ODc3clZ6b24xYjZ5c2ZHdFp4WlRrY3FlWVNoZm9IaXQ5ck10aEx3V2dxUlEwMERzVU5CRFEKejF0VTRlL0ovRGVJbk45Z2ViOGo5djhLejUxTzdGdW9NdWxNM0lnSVBteTBlREVBR2EwQWd1VXJLNEFvSlZ0RWlyOGtFMTJwekxkVQpwVTZhM0tFNUdQQkFvQ0VEL1pRQWN0V1h6dEd2MU9tcDVBaVVBVkJxclBMNUFFcU4wVElBU2pDcGJRRFNhd2FuWVFBQTRkZ2dnR1RvCm1EMUE5dWdaYkgrMjJnWUF5RTJaeVFCb2hqcmZYWkgrQWJicWMwazBZbnVHRFVDRERIcEpBTDJEWm84S29Cbm8zbmZ3ckRlby9EZUoKRWhjMCt6M3g1cjhMRTc0U2FxRitoRndyZ05nTWdGaldnUmpQQjFDNGpQZFNBTUxVSEN1QWdxMEFTZ0FBY2xJVVdsUDBORlFKeUVqbwpNQm41Vm5zQU9hcHEvYWxzcmlKeENFQ1NzUUFFWWdOUW9sRUlBQlNrTk13aTkwMVJsdmtReFk3NnZEY014Y0h6ZHplNG8wZTh2ei9xCklUanNKYkFaNk5raUVHd0RzZ2ZRR1c5cjdQYUYyUUEwTExaMXNmUFBicFYva1l5a3owOExvSkVuRERFWnFabm5wL04vR1VBOXMrVjIKQUVJWkFQWE5sTjhOUkFHQUhnYktuZ1JJQnZ5RVptOCswSS9ablcxMkRlcDNXUkRKV2NCVHNRbUtyeUxDY0Nvc1Vpb2dWY0ZLUXE3RgpsVnBLcUZhR3FaUmNKY1ZUS1lJMUJFdE5obERrZkRtNWlFK0doeERrWER6Nk95eHRsbktiTjFuc2lkVzhKOTMxalVRWkp2eUJLNWpECjRZZXhSQXM0Z2dVOFBteC9CZ0FLNS80bzRTM1VTamtNZ0d4SEFZMEtJQkFiZ0ZMMENxQ2ZWSTB5VlNsT1VvU2JsREloSHZVZFArMlAKc2pwdnJGU1VXbHRTMy9YZzVtTkFIMHRmNytPYjF4N2VwWi9jdVVWZjY2RnY5dEczSDlBM2IvZmY3VFBmdmovUTJ6ZHdveGZtNnZYKwp5MWVlWE94NTBubnhjVWMzM2R4RG43dEVuKzJrVDdXWmo1MGRhRG8yVUhmUVhOM1lYOWI0cUtMdWRsSHh3N3g4T2lPTDNwOEI4bURMCkZucDFlbVg4T3I0NmJob2VNVjRaanhnV0k4WVV4QUF3dEhRd3VtY3lEZ0RJc0l3QkVCS3pCa2xjL3V2RXBBOWk0bWRoMjF5eDJrRUEKRVpVQVFPQzFaeGlBbnEzMHZGeW1xdzhHa0dXZnk1Zi9LT09Fb2Q5enh3Q1FiZjFyTEFEOURWM2xyaWllcnF6MUlNdkFIMmtHVmVsRwpRbFU0RS9YdktpdmZWdFlDeHYxVnRHc3VYeHZNRndUenhEcUZZR05LUkYxY2RFRkN5a2ZINnlmZTYzZTRZUjUzK2VLa2MzZVJzemVRCk01M0lpYk1URDUzOHI4WVRFK3FQSWZYSEpsVWVubGgrY2x6SldZZVNZeE9MR2libmxTTzVGVWhlMWR4RUV4RWJyWXNFTC9za1ljUVMKbFVTYVFST1RHdjE1NDFISHp2WUpEODNJWFJxNVJDUHRsNUhtQzhqUnpuSEFVdlZIa0xvbXBLNXhjbG5qTC9mVi9YSkY2YXV4aFNQcApNMnI1aDlHUFBZQ0d6UUliU1ovbkEyaXNKYkFBN1NFSUlGUDVSN3JNL3dSQVVRcHBKQWxQVXBhcFVFNEUrdldLQ05mYzNGZU9YRUVhClRvMHZQZkt6dlkydnJhNTZNNkZpbXJIQ1ExZnRZeDN4OGU4Q3FNUUdvTi9odWIrUjUvNFczL2RMSXRjUlQ1K3ZpdEpHTUFDQ3cxQ2YKRDZCSUl3U1FRUWZIb0tyVVR3RWtwTVRnT3lobktvc0IwTkFrVlBzVEVRdC9RZ0E1RzhxLzA2M1NHcFNKa1U4QmxKcncwZ0F5YUJVNgo2elFNa3BBQkFESGxueGNFa0gxeFp5U0Ezc2RXLzAwYU4wb0ZhRmdHZTZLcHJNRU1ka1BuZ1RnU09jQkFqa1RlVzlLTXQ2VTVJSUJCCk5nbFpUMGZNbVlabE93SUpZUVVnNE40VjNlc2ozUllvM2ZpbHlEQkhKQThSc3RpaVVMWllFQ3FWaHFFQ0ZtNmRCVFlhZ0VKUk5yTVQKbm92eEI1ZkFGSEFWekFxZ1FRTXAxQUpyZUNDQVBvU0NCWStCVm5GRUNsRzRJdndmQ3Awbm5tdVBubWtLSnZENEtTZHE5QXc5QjJhNgpzdFFXUjFVKy9BaFdWbmtxQzc1VkxkZnF5QlNqSk1GSUpSbXh4Ukd3NDRjeEVBaWpuMlJ3WThKWEdHRlRXR3dFUzJ2a2hHa2pQeWEzClRLTXEvNkNwZEZTVVRkWGt1S2szcTcrUGEzS1huWElPT2VFdXJ2ZmpIZlRoblBEaUgvU1JuUFJFMjF6RnA3eDR3RUJBUXNlOTRKNzUKRTU3Q2sxNGl1RDErYUYvWVdUOEluV1lmR1Fpam5PWkFXYk8vOUp5ZjVMeXZwTlZQMnU0bnUrQXJiZk9SdFBpaElNMys2UGtBT1VpegpMZjVTa0JhL3diUmEwK1l2YS9NbG1MVDdFaDArTUozZU1PM1dSMnpwOENNSFkzM095TmovT3JaMzZmUWxML3JBZEEwRlBOTGxSNEYwCitLTk1MZ1FNcG0wdzJBVi9yRDBBNy9MSHUvM3dpejdZUlc4NVNKZS92Tk1QWlFMdXV3TXc1aEg0L0VDOGZTWUJBbTZZKzQ1WkFEckEKUUVCQ09NalRCMmNCL2NCMHpTWkFMczRpTHMwbUw4M0dRUmo2WExQbVJxQ01BUkRJemRsbzMvc283U3NkOEJZOTl1YWFQYm4zZmRpMApVN0JsMnR6OTN3ZEpWWHlaV3F4SEpSVEJKNVc4Q0pKai9lZ1ZrRW8ycVFpRG9jSUpra2NRUWprbWxPSWhmR3hlQ0JieUhhYjZLN25HClgxbmdycTZiUnRhL1N4eWFodFg1b3p1K0ZLdENCTUZzd2NJd0lZY0YwQ05jeEJFczVQSVg4bmdMdWR3RlF2NGl1WVNWb0VEVGROUksKbzNwZHBINlRGVDFyWTB6ckU2TFdSOFB0WUV6c0FaUnFrS1FZTlhGS1ZSSXBTVlZ6OUVyaGZEeGl0bmkxTkdKblVXMFhvSTY1N3lFcworZHk1TTNEbjd1TjdUL3J2M0Iyd3hud2J4bkxyRG4zcmp1WG1iWFB2VFVZLzFnclFGWE4zajduam92bEN0N210eTlMU1BuQ3UxWExxCm5PWG9hY3ZCWStiNmd3TTFUWFI1dGFXMDBsSlVic2tydGVRVVdqTHl6UHR5Qm5abjBUc3k2UlU3NkpTMTdURUpSZ1htSVJIL2wxenYKZ0MvK3VUekJRYlVFVWE2Y2dDMGRwN0kyVU92U0pxdVhJMUhMSExUckVmMUtKQkxjYjN3dFpvMWpZdFEvVWJVblVleE9sTHFRY004MgpQR2hnS0M1a2xTdFZ6Y1JOVWNQRUhUakQ3aDdFUTFVM01wN3FlbHQ4MUUwK3FxcVB5TTF6WlRoYk5EZE1NaTlFdmpBTVg4aEJRM2hZCkdCOW5BZTRJY1JhSWlHQ0x5WEM3Sm1nV0JKQ1V6WmFFczhUaG4wbVhlbERGMHpXTmJwQUxkVE1VMVI1VWlZdWlDdnkvdXhJbE02aHkKUjJXak4xN3dOVDh4TEZ6RTViR01CTFZwU1d4K2N1ekdsY3RmYisxQjd0REl4UWZJNVN2STJXN2tWQ2R5ck0zaFVNdTRBODNqRzg4NQpOSnhDNms0ZzFhY2NLaytNTHowMnFlanc1UHltVjNMcUptVldqZDlmam14ci9DeG1yU1plclk0U3hFakZrUkZMdmlxcW4zR3hEM2xNCkkzZk15SlhiU0VjUDB0eU9uR3BERHJXOVVuOWhYUFZ4aDRyRERxVUhIUXJyeCtmV2pzdW9RUFlVSVR2eWZ4ZGQvSTZtMUpXQy80RGcKMWYxZFhmRjBkWW1IdXBMcDlSazIrOTIrNDRkWjRZSVQ0SFV3bzdZMmovU05MZGFSNzA4OTlMUXNaTDE2R0pyK3JNL2dxVlFhRFZ1dApFOEpSR0hwT2dwNmJwT05INjhYUldueXhqa29FMWpHeFV6UkVraDRIRElvd2lRMFJFcDFSb3RISTlCb3NVaTFTS0RHVEpCelhxd095CmF4M2E3aUxuZTE2cE9QNnowa2Frb0FiSnE1aVlXVHg1YThZdmxxVlBqU3g4ajZ3WnBwOWg5R0VDcDJGWVgwVEFhOHBVcW53S1dmWTIKV1F6eUZsWDhKbG4wQnBFSEFQUzZQT2NQc296WDBmeDNpUDF6VkJGNlBUZmF4SStHOU1GczRyR25UNXhCQ251QW9ONVEyeFl3amNxNgpCVXdoMXBBY0lZRi9TSzZaVG1ZNktYT25LRXZzcDhIYm53cHRtMzdxTmpUZFlpakYvekxXRXhFSDQ2dkova2kvVzJxS1RqUHhrcUprCjhiR2FaVEdxbGRHSzVmRWFhK3c2b09NTXpCNTR1QVFXbzB1TzBpUkdhS3c3NFJXd0RVZ0paOEl6ZmRBb2JqMExFUk1EQUVubFFwNGMKRmFBQ0xzb1BReVhoRXY0Q0tRbitnaDZxSEhmbHN4VWdOWXk3S3NPYUxCY1ZuRjdxcnNnTXdMZDhLRi94N3dCb09wa045RE1kMG1jNApnTjZXWlEwRDBIUTBhNm84Qitqblhid0FTTWhabnU2QjdnUUcrcnM0NWxzUnRVakVaUU1EaVhrc3FSak9lNGVIUVZzM2d1SGg5Z0NDCitjOEF4S0hDdjZCMFhqOGhnSlNGRElBOEZJVmZxMWVxZFZTeVVSSnZ3TWNDRUNEd01oTUdESlFVSlkrSkROY1oyVHlOOWgva0ttOHkKMDQ5SS8xQzI1eFBabGsvbHkwSTVFUnMva1RRN2hSNXo1emY2aEIvMlpwL3dFQnp5bGpYNnlvNzVpTTU0Y1o3MlJQc09ib3huQW1zOAovdkt6QWZMVEFmS1RBZWp4UVBUWVRQVFlMSG1ybDZ6WlMzck9HeDRoYlh2cnNRRFpHVC9zckI5MjNnZTc0SU4zZU9IZG5uaVBPMzdaCkhiZmYrY1hVZnBodDgyMEIrR0NHTm9XQkI5dTlCNmZRMjYrdlBYK1ZqZmxGTHZnUHBzTVBaeXBKVDM5VGYrenA3eFVBWlBOTWJDZEIKTTNValdOMng1cEl2MGVOSDlrQkxEUmFUNEkwZjN1bFBERTZ6OThlN0FvaHVKbjc0SlYrOHh4ZS83RWUwenNUYlpoRWdESHE2QTBudwpOQkFiZ0lCK2hvSmRtb21OQmFEN0FlakRRRm5mTFBGOVgyRS8wSTgzNTRGYktPMjRxUDZ2ck9WaEhFTEpVeW40Um94SEtMaW9pcXRXCjhEVWtUMFZ4Z0hzd01oUWxnMlg0QWlrMlQ0YjlJTUFYOExBNUhObWNZRm5JSEpueUgvSWxIK0piQXNrOVB0Z2VUeXpIQzgzOFFMTHEKR3lFZUxGaklFc3dQRVlVQkFMRkZpd0NHd3ZrTFFOaWNIem1jK1NKUkNBQlFxaFZBYTZQMEc2MmJ2d0NBMXNVUE5rSGIyb0FZQUszUQpxMWZxRmNrYVRieEdzMWhEcEtvRVdoRmdXZVQ2ek9PWGV2b2YzcVV0ZC92TjEyN1FONjViYnQ1OGZLdHY0TUVUUmo4TWdPaStad0JrCnVkNXJIZ1ZBSGViekZ5eG5XODBuejFxT25iUTBIUVVBNnE5dXRBY1FuVjFJWitZUEFtaDMzcjF0Tys5dDNVS3YzVUluYmpxc1cwVmkKc1U1Y0ZDR2pYaEhwWDhVTmlDRU9VUzZlZ0MyZm9GaUNxR04vUlNRaCtyVC8wcVk0R0ZZZ3NldCt2aXhwamxiL1R6eG1WQURCcXMrUQpma1lGRUtPZmtRQ3lwNDg5Z0Q2a0FJQ0FkSDRNay94Z0JWRFF5d0xvSDVLbG51QXJ6QkNBWEpRMUFFQ3V5bXBuc21FUVFLcDZiN3pvCkMzNXFhTGdNQUdnWnFVbFBqaW1OajltNFp1VnZPcThnZmVaSlozdGZQZEwyeXRHdVNZYzdKaHpzR05kMEFXbG9kYWhyUVdxYWthcXoKU08weHBQb29VbmtJS1d0Q3dJdDNZUzJTWDRIa2xpRjV4ZU4zYmZraTBwZ2dKOUJseXp3UEg1dDgveUZpZm9KY2YrTFFmWGZpdWF1VApqM1ZNT05TQ05KeEJLazhneGNlUjhrTkk2UUdrcUJISnIzWElxUm9IQ0dVRjBPdUorVzhhUzREYjNNbHFaM1hsVkcySm83b00vRjJlCkR5Q2JmbXdBR29zK0k1WEQ1RjhCcUhFNGdDTEVXcE5JYjVERTZPVXhSc3hvd2cxR0xFYVBSeHB3dUg0RXkwTGlHTDBvVGl1T1U4dGkKS1ZnK3dTbTJKQ0ZtZGtYMXE4MGR5UEh6U01PUmNZWDFrL0pya054S0pLZHNRa2JSeEIyWlAxdWIrV1ppa1k5bWVQbm5PUUJpWGxPQQpmdDRsU3Q4aWlrQ0FmdjVJRkZyTFA5bi9Ob0RzOThEYkEwaEFrdThSd3dIRUdHZ3NBTmttZkwwZ2dPd041S1hPK2xDM1cyU01Uakh4CkVpT2xjVEVxNjVJSXRTeE9iWTFkK1NkV3ozUkF2emlBVUxsb0xBQUIvUXdEMEF4VkZvaUxNdE1lUUs2S0RIOWl5d2ZveXY4VkFBMFoKS0pzQmtDUEFrRHovSFN6ZldnU0NCbkpGOTM0a1NmdGNiSmduRW9hSzJBQkFiQ21mSXd2bnk0T0hBUWprUHdDUWRSQ1lDdlovY1NqMgpGNVRXQzgvK1R3QmtieUFBSUhpanFISlhGSCtwV2tOcGxVa0dhZUxZQUVxTHdnR0FscHJJaENnaUpvSVhhV0NoYW13dUZ2c3hzZng3ClVkcGNZZklDVWV3aWtmNTdPWTZIQ0V0bnM0KzZzNDk2c2c1NHM0NTRDWTY3b3dkODVQV0JvbU8rN0xFQWRHWW81N3hobW4yazU3MmwKelY2U1kvNUFQTmhaZi95OFAzSEJXcGpwOHNJNzNlVVh2QWdtYmVEcVRZSzArbGpqSmJlbHpSdXo1YXlmak1rNWE1cjlZUUVKcE1zWApzNlhUUjI0TExNbU1sbTVybllaSmo5ZlR0QWZDRE5aNC9HVWdUUEVKK0d4WWVhblRuNEx4aGZmZ2I5VG1UNTRQSkpzRHlYT3pxTE96CnFVNXZxc3RIMGVrTDAyRk5wNSt5M1YvWjZZTkJPZm5CSmJBTGdVUXJ5Q3l5YlRiVitoNjRraGRtRDFaOUdDUmQ5QjhFVVBkTTNKYUwKZ2ZKUkFYVFRhcURIZm1pL2orVHFiR0ZmZ0JEbzU3NDd5ekl0K0tMUHdpUUJUeS9uZ3kraldncWdoNE1yV2FneVRFbXkxUGc4aWdpUwpFT0U4UXNqQ0JhRllPRXNlekVMbnNXUkJMT21QYlBFOGxqZ3NXQ3laSjZXK1FWV2ZZOVRmMFlpUFpVbC9rYVIrTG82WUp4Q0Y4dWVICkNlY0ZpUmFGQ0JlRWloYkNLMzgraTc4Z2xQc2ptemVmTHc0R1g3dFR0T1J5a3hwdUJMTURrSDBUdFAxTytKVnEvVEtqS1ZhcmpsR2cKTVJMdXpzUzRTOGZPRHZSWjZMNTdjSkhyK2czNlppOTk3eDZJNWM0OStpRUVrUGt1dkljL3RRTVFmV01RUUFNOVZ5MFhMOU5kUFpaMgpDQ0M2dGNNQ0FIUzYyWEw4REgza0JBUlE3UUV6QUZCWmxibWt3bEpRWnM0dFlRQkU3OHMxNzhtbWQrWDI3OWcvc0hXN1pjTW1ldmtHCk9tMXpYOVRhTTFnQ0t0RDhWc1JIWk5MeFJBeUNKU0JFb29NNkJkR21UbFlrSXNaa0pESUpNU3hCVXRJOEVraUpUUHBQVWNLL0JOQ3cKa3M5WStyR0p4MHZUWUI4ZmRZTzN1dW9EYWh2UUtsczhud0VRRzRNQTRzcERBWUQ0VnYwd0FJSUdHZ05BWDhpV2VpdUtabWdhM05YVgpNOVQxQUVDZVZMbXJzbWFHb3Q2RllrN2NhZkRDaXo4VnJsekFwVGc4N2pLRmFrOUtURVphZk1xbVZaUGFPcENyZDVCVGx5Y2RhMFVPCm5VVWFUenZVblJ4ZmZRcGtYTlZKaCtwVFNOWEo4ZVhIeDVVY2RTZzRoT1ExSXJrTlNCNUlMY2lrWFFYSTFqMXZMMTc5K1k3MHFaM04KeUpQSDQrN1RrN3JnL3ZtSkp5NVBhR29kWDNzR3FUMkYxSjFDYWs4aTFTY2hmUXJxa2R4cUpMdktJYjNjWVcrcHc2NUNBS0JYbG1mOQpOcjV3dXFvQ0FNaEZWUW4wTTAxVENWZStuZ1dRelVEMkxjOE1nTHoxOVNCamxYeEdLdWRmQXNoSC94UkFXalVBRUYrdkUwUm8wV2dkCm1xQ1hwdWpGcVhwdXNwNFhiUlFhVE9MSVNGR01VWmhvRUNScmhiRnFRYlJlcWpQS2NJMVlRWEpsVWFSSFJlbUV6cnZJK1hha3NYNWkKYmgxU1dEWXBzd3pKTEVHeVNzZWxGNDdiblRWcGEvYi9yQ2llRmxYKy9NV3Y1d0RvVGJ6d0QzakI3N0Y4b0ovL1FiTmVRN04vTDAzLwpOWm8vQlg4S29CaTRFMzUwQU1VYlpmWUFNdW5rZGdDU3FpZ2VseUJuRStzY3lTdzR1MU5SYkE4Zys0V3dZUUN5TTlCdzY0eU1mUVhJClU1VTlXN09YWjRoUE12SWhnS0tVYWRIa2tpakYvMGtBTWFxeEFjaE5tZTZteklTenZ3Q0FxRXhmWXR0NzhqWC9Ba0QyRytPZkQ2QzMKSk5rZ0FFQjJSU0J3eldZcVFGWUFGWUlBQXpsaXVkT3c3RURweG8rbGlkK0w1U0ZpRHZqOEQ1ZHllVEtXUUw3SUhrQ01nY0l3YXhIbwpaUUdrNGowRmtFTEFvOWhmVVdvZlBITTZWUWhERm9NNFVreEtuNU5oQUxJWjZOMGhBTGxSUlg5WGJaRHJkQWw2OURrQWdoUEJUR2hxCkJBaytGS0lpUk5INk1JV1N6NUlyLzRrclJUeUtJOEFXb1ZLQlVNd1JDVGhDcm41QmVLMFA1NWdidThtTDNlZ3RPT3VDbm5hWE4vZ0wKR3dNSEFjUXNnWjMwRWpGNzR3R0FqdnVLUVJnWW5mR1YycVJ5d1ZNSzR5MXI5MEV2V05QbUxRTTI2Z0xtOEVJdmVLRXRQbkRWN0l3Lwp5dFNOUnRaeW1CN3FkdGdHSk8vd3c0WUZTR2pVdFByTFIwMmI5WmV5dlh1WFAxekRBdW4wa2RuUzVRdGNoVjVrNGc4TE5reUFzV3lLCkdsd0M4N1ZpeTF0KzJWTit4VU4rM1JQcjlnTjhJUzhGVU9ES3RBUU5Gb3FzYzA4N0FrbWduN1lBd0VFTTVCejRJODJFSzEvZ1Z3TnAKRDhDaGdXWlJsMllwT2dKaEhhZ3JFSVAwbVVWWUc0QndrR0VBQXJscE5kQjlQOWtqSC9FOVArRXRmMEd2RDV0MkRMM3JHcng3YmlpcApZcEZLTnFYZ2tRb0JRZkV4a29VUklUaStVSWpQWVJOaEN3ajhXekwyQzNMeFA0amtyN0c0NzdESVJTZ25XQllTSnBuUEV5M2dpMEs1ClloWkxFaElxV1Jna1kvOG9GYzJWWWorS1pIRGhHSWhIUERkSXVqQklPRDlZdEFCZUJmT0JoTUlFQzFqQ2hUeFphQ1FwWHF3amwxa0IKeEJ5QkNKZkE0Z1lCeE9pSFlSQURvQlU2WTdLYWlsZmpDUXA1MmFZdGRQdEZ1cmVQdnRWTDM3aEczN3BKMzdsRDM3MExyR08rZlhlZwo3ODZUbXplQmZoZ0FNUldnUWYzMFdnRjA3Y1pnQnpRQVVNY2w4RXVaMjdyb2xuYjZYSnR0L2N2U2NNaFMwMlN1ckxPVVZ0TEZkZ0RLCmdBQ2k5K1RjMjduL3lmWjk5TmE5OU1adDlKb045S3IxZE9wSzJwUjBUeE9SejFOL3hWTWlZaFhDMTd3aWp4bXZTVUxRS0VTZE5KNUsKUXpUSlNIVFNmeWRGQVZhS01OSDMwaVNnSHpleTNBVk9rNjJ4MDgvbzYxLzJHVVlmTDgwejhkWTJNUEhWMXZsb2F0OVg3UDRucWdrVApMd1FBZ2p2aDVTRXZDNkN2WkV0OEZZVUFRSjZhR2hkTmc2dXExbE5aQWE2dWlqcFhSUVU4YlZsVjUwV1dmU1RaL0FQUHdPSHlGK3VvCnJVdGpkaXhQakYrMzZ0WERyVWh6cjhPUnE1T1BkQ0xIMnBGRGJlUHJ6MDJvT2pXaDRoaFNjUWlwYkVLcW15Ym5ISVRKT2pBcCs4Q0UKN0FQanNwdVE3QVlrdXg3WmZ4RFpsSXNVVlUvcWUvd3pNLzN6eXc5LzBYb1ZPWGNKT2RxR0hHcEdHczlDK2xRZEcxZHllR0krZU45RwpKTDhleWFsRnNpcVIvZVhJM3RKeHU0c2NkaFk0Yk10Qk51eDdMUzMvWGZEQ1NWYTZLMnVtcTZvY05UVk9xam9iZ0lZWnlBYWd3ZktQCkFlb0g1c1hjWXd0ekVQT3dlQnVxNFNneGZiWFhVd0NGYWF3QWlxVmtVUkVTVXl6SFlGcGswZ2RGR2RseEprNlNsclhZd0k4M2NHTWkKQkpFbW9Va3JpTk5LazFSWXJFeWtwWVJmcHU5SHVtOGdSNjc4SXI4QkthK1puTi9na0YwOGVYOEprbEdLcEpjNDdNdEY5bVlnZTdKKwp2cW53TjR1TFJ0V1BQWUFHQjhLUEFhQTM1SGxBUDY5TE0zNGx5M3BEc3Y5MVdSNEEwRnpsZndRZ1RDbUZrMUFKUlNDeGZncHBIVjZ1CktKNm1MQVFaTXREVDRmRE1hSEFRRzRDR0dEU2NPOC9SanhWQU9RR2E5REJEUXJ4SkRBQ1VFRVVCQUtWRnEvNURBTUd6RUY4TVFEYlYKTUFDeUdRamNBQUROVUdSNjR6dG5ZaHRHbndYMm5EQUFBdm9CbVlyRFBtaDdBTDBsemJRckFzRk1SYk9ub0Rudm9ubnZZSU1HQWpmQQpRNTdvdnZla1M3K1JLQmFLdWNNQXhNVUc5Zk9mQUVpdUhnU1FSTVcyQWlqc2EwcnBpMlc4TElDR0dBU3JSUFlCQUlJdDB1QTdTN0xrClk4Vm1pZFlVYThDUzlNOEZVSVEwTFpLS2oxYkRFODMxTEoweW5JZEsyQkl4eGhWS2VEeTJoQ01VOEFpMlFNU1ZMQkpKMTM0cXJ2UG0KbjNEbE5IcnhqcmxKVHJ0S2ozZ0xEL3V6Qjd0L3JBd2FQQm5JbW1ZZjZWbGZtRFBXblBhVG52U0hPZWNuQWpuckx6b1RJRG9aS0RvKwpVM1JzbHVqNGJESHNEUXFVblErUTJmZjZYUENWdHZoS21KeTNobWtKQW1uemVDYXRRMmx4RTRPMHVrdEFiRys5NENucjhCZ2pibEtRCnJxRjB1dzZtMVV2VzVnMXdCazNXN2kzdnNLYlRCMk9xUVJjQ1lCdFFaNEFjcE1zZnBzY2Y3ZmFYZ1hUNlNUc0RaTzJCc3ZaWktJeWYKak9uK2dXMUF3RkxlMG00ZkdjajVRUHc4aEE3ZUhnRGJvbnY4eU11KzVGVmZzcHRaOFBJZjdBRUNIZ0pwbVlrejdjOUFQNEErUThFdQp6OEt2QktMREFOUnJ6UzAveVQwZlViK1g4Sll2LzVGTFdQKzBrUEovaEdrcExxYm1rQW9XUlFYalpCQ0JoeEFvUjRpS2d3bnNuNlRtCkN5cjJMNHExczVYNy9aVUZJTE1WbWU4cjl2NkFhMzdFWkl2a29XelpRcUZra1ZRY0toV0h5TVJCUXVrUFhOa0NOaHJDbG9aeUpNRmMKeVVMd2hEQjBZWWg0WWFoa0VUQVF1QW1UQm9XSkY0Rnc1V0ZHWEFnbmdwblVLeU8xQURxRHkxNnhUdzlDWkI0RVZ3Q2c1VHJWRW9NeQpXU05mWmxTY0tpeWdMOStpcnowdzM3clZlNjBUME1keTU0SDV6cU5IdHg4OTdIdEkzMzlNUDN4STM3NDljR2ZRUTR4K1lLQisrbWpiCitsZjNGYnFyQndESWNxSGIwdEpKTjErZ3o1eW5UNXlGNVo4RFJ5eDFCeTFWOWVhS1dsaitLU28zNTVkYWNvcnBySUpCQU8zT05xZm4KRE94TU4yL2FRNi9iUmEvZVJxL2EyTDl5OWYybFMyajlZdHFZY2htTFR1YXFuSGs0d2xXTjQrc1IwamlaU0J5SHJma0Z2dXpuQ1pIZgo2elFxREk2Si9oU0xaL1FEOTFWWkFUU2tuMEVBdmFCKzdBRmtvdzhUUDEydHQ2N3VQVVg2ZDNJaitJOElsVUlBY2FXREFHSld3UmdBCkRhNkNqUUdncjJXcGZvcDhWMjI5SjRDQ3BzNEdJSGZyeGpRWFZUVzQ5eUNyWmtuM2ZTTklZSE5GYXpSVUZxd0FwY1N2WGpXNTRSUnkKOWpKeXRCT3BQNE9VbjBVcXpveXJPUG5mbFNmZXJUZ1JXSDdxeS9Kejh5dk9CZFdjRDY1dENhbHBXVlRkTXFmMDdHZTVSejdjVysrLwpvL0tYdXl0ZVdiSEhvZTQ0OG9oRyttamt3ZzNrZE1zdmdLanFUeUoxSnh5cWo0OHJPektoNkJEUXo0Uzhodkc1OVE3WnRVam1vSDRjCmRoVXkrbkhZbW8xczNmWExWWGx2NjR0ZElJQnFHUUE1cW1xZFI3UUJNWGtSQUQxcm5lSEtZVElXZ09DTkZVQi8wZThYcUpRTWdBeGEKZ2NHSW1vemhpZXBGYVNRdldxTWxZNUlWOFlteGtSRlVUTFF5d21RdzZhTU1taWkxUEVZbmpUR0lEUm9XSnpuNTk2ZWFrZGE3U05ueApWOU1yZjUxYmpwU1dUTnhkOThxK1FvZjlSY2orUW9mZDJjanV2VWg2K3FSZGVmKzlPdCttbjJIbEg0QWVtMzVzQUFLdlBqWUEvUkdECjVaL2ZvYm0vbG1XK0prbi9iM0hHRytKOXIwbHozOFgyQVFBWmROd1k0MHNBeUg0SkRBQ0lKQVZoaE5vUDMvZ09rVHVWeXJVQmlERVEKQUpETlFEWUFRUU5waXUwTTlJeHZ4b3FicHBDSmh5clBUNXNWQkdBVElVdUtraVZHazB0aXFOUVlSajh2QVNDVGlnSUFVaWx4RzREZwpVVUJqQThoTmtRWHlWRCtLVEdjbGpKTVM2Q1VEQWtnQkZ3R2RxQ3dQWW8rZmZOTkxBOGlKeWhrR29LbDRMZ0RRbStJc0c0Q0dEQVN1CldVKzN4Nk41d0QyMnVNaHlBMlhydnBDbzVvdTVZVllBY1ZFT1h3NTdnSDRxQU9IS1FRQkpLUjZmQ3ZtR1ZQcGorNmVSQlRCRUVjaFUKa2tuSmN6S1dnY0RIa0hXUFdJVVRXZndueFRhZUppcGFUeVRwNVdNQkNQNDBBazJMd2hPalZYRW1hYUtPWlZCeWVCZ3dEOGtCMzY2eQpjUkdMWlBHVkhJNk9GMjZhTDRqZ0JldTIvWms0NWk0NDZzNnA5K0UzK1VEM05MdHhqM2tLWU8xbnFOSUR6NGIyRnAvMEVoMzBFeC8yCmx4d0Y2TEdPU20zMmtiWEFlbys4dzFNTTB1NGh1dUF1YkhNVHRMcnltYlJONWJZNndyUk00elpQNTU2YnpqM2p4RDN0ekcyWklXeDEKRVFITkFNUUFpSFQ2QXg4QUNsQXRIeGxiL21KcS9UaWk3YStSYlo5RXRmOHRwdVB2c1NETjN5U0FuUDgyRWFUbHU2VFdmeWFEdEgyLwptTGtabVJid3RHOFRXNzlPYVBrcS92eVhjZWYvRWR2OGVReEk5NStNTUI4YXV0L1RkYzdTZEFhcXUveFZuWDdLaXg0eUdFZ2xTWmV6CnFOdEoyRFZkQU5JOURRYmN0RHNKMm1jSTIxeUViYTZpRmpmUlNSL2hhVi9SV1Y4eDAvSGQ1WXYyK0dOWC9IRm15YXpkRjY0RFhnaWcKV3NIZktBQ3VuVEhsS0tBZjJBcHRiWkZtREdUYitYVXhFR2R5S1ZBT0FnQUVNZ3hBTndLazEvM0Z0M3lGOTN3RXQ3MTUvVTZoSno0SQowOG5DNVFZKytMekZDYTRjWDRoamN6RlpLRTlLZlljdi9sQzEvbjBxZTZhaXdGdFo2YVp1bUtGcG1xR3RjOU5VZW1oS1BzV3pQc00zCmZTV1BuWU1TaTJTaWNEUmNnQWFMNVBPRXNvVjhkRDVQYmcwYXhFUGhTMnk0UENoY0ZnTENrZ1FCL1FBZWdTdDRHUTZYaDJveGZyd1cKWHhyeEx3REV0QUd0MEt0VDFiS05zYnJXeWxLNjV3b0FrUGxhMzcyYmZRT1dmdWdlb0orN1R4N2Y2Mzk4NS9IQTdmdFc5TnhtZXAraApmbXpsSCtzR2VQb3FMUCtZTDE0eHcwT0FZUG1IYnUweW4rOEErb0hsbjJNbm41Wi9LbW90WlRWUVA0V3cvR1BPTG9MclgrbDU5SjRjCnk2NHNhKzFuRDRoNTYvNTcyL2ZlM2JEZHNtSWpuYnJSa3JDY2psdE1SOGJTWk5ReHJuWVJTL296UGpwQllrUndQYUpaaWtRbHZxOG4KSlVwVVNvbllZdm1mWmFNRHlKMnFHQXRBWXk5N2pRNGdmME1OdUw2bnpQbFdIaFVpQ1E2VnpnbVRMdUpKd2w0V1FOL0tGdnNyODl5MQpkZDVxZXdEVmV5cmh2QzFYTmR4eDVrSFYrY29ML3lGYXh1YWg2d3lLZ3NWeGVVdVh4SzlhT3Jtc0NqbDQ1TFhHWTU2VlJ3VUhXaUtPClhkeDMvdDdwTHZyT0ZkcHluYmJjb1B0djBQUmxtdTZoNllzMDNVWFQ3WFIvQzMzM0xIM3I1RUI3VTE5KzhiWFZSNTZJV3g3Nm5iNzIKczdNM2tDT3RTR1VEVW44STdwa3ZQNEFVTmlFNURiRHFrMXVKNUplUHk2aDAyRmVPN0NseDJGVnMxVThlc2lVTDJaaUJiTm4rcXpXdwpEY2daNEZKVk8xVlZPVTFUUFYwRis0RkdOZEJZUzJBL0lZRDhJSURxR1FEcElZQjRCaDNmYU9TbmtQdzR2VFoweSthQTh0bzNhNC8rCm9xNFJPVmo1aStMQ04zS3p2SGJ1K256MUdsWkNQR1ZVUnF0RVNZcHc3OHJHbjUzcGZLWHVIRko2RUNsdG5KaWRqbVRzR2IvbjFNVGQKT1FqSXJyeHgyektRSGJ1Ui9Yc243Y241MVliY1VmVmpUeC83RG1nYmdHRDVSNTcvaGp6dnQ3SWNxQi9SdmwrSzBuOG4ydnU2SkhlSwovQ21BWW8xakFpak9JQjNhd3Zac0U3UktCQUJFVUtJUVhPMURiSDZMekp0SzVVK2hpaHdWQlhaRm9BTEdRQ0F1NmlJUUc0QnNHV21kClllS3h4VlZkQU9LbUt2SlU1LzZvWHhvVkFWN3k0Rm1JUzJMSmxIamR2d0VnZ3hvZUJVU1FNbVlVeG9zRGlGRU5BNkJweWx4d2RWWHMKSHdKUWpodXgxeHZiOXA4Q3lKSElBUUI2VTVJT0FBUU5KTTIwS3dKQkFMMHRMM2hibmdkN29sRVFXQkNDUGRIeUhDZTBKRUMyOFhPSgpicjZZRHdERWxzSkJwOHhKMEF5QXVBVG5Kd1NRZ0F6NWpxQUM1R01DaURtUWFtVEdxZ01CQU0xUWxEcVRGZFB4a3ZjVU85anF1Q2dkCnVYaHNBS1ZFcXdDQWxrYkprNkxKQklCaWZiaFd4UTNIeGZNRnlWK0xGMy9MUzUzRFdmcTVhTlVua3JWZkNOWit6VnYvTjFrS3VzQzQKLzBQSlVjL3dScC93S24vK1lRQWdWN2o0QlF6RU1JalpCY1lzaEoyWkxqam5MRHJuSWo3aklqcnV4RC9xeERzK1EzRE1WWGpDQ3p2bApSNTMrUUh2bWI1R252NDAvdlNEMVROanlzN3pWQjlWYkQrbDNISTdlZXpRNTY5akt3aE1ieTAvdXFEbTlwNzZxN0VoVitkR2F5dU4xCnRhZnFHczQwSEdodU90VFNlS1MxOUd4SDJibk9zdk5kRmEwWEt5LzBWTFZmcnVxNkNsTFRDVlBiZFEya3J2czZTUDNGR3lDMWwwWlAKWTgvTmhrdTlJUEJwNFBuZ3ZjRDdkbDQ5Y1A0eXpMbExUYWU3bTA1ME5oNXRyei9jVm4rbzlVemwyZE1WWjA2V25EeGVjT3hvenFIRApHVTBIOXRVZjNGTjNhbjNacVZYRnA5UHl6OFJsbnRYdk9VZHVPeS9kZEY2dy91TENwUmZucG5aK205anhXWFQ3bjQxdHM5UXR2bVN6Cko5YmxpbmE2eUppQWU1QjJWOWtGRjJuelRPeDhJTVlzaEFFRGRRZVNsMlpTbDJjcVlOTzBQOTRkZ0RHNUZEQW1nSUIrR0FCZDlSZjAKZW5OdnU0YzN2d2NibndWYXJsTEJ3ZVVjQ2M3aGtYeTJYTDVBYnZxTVdEbFR0UjlBeDVzNjZLVm9jbGMxQVFBeEV3RGN0VlVlMmlvdgo0cWdQVVIySXBmOUp2dWt6ZE9tMzhvZ2ZjUG1QQkljdGtiSmxiTFo4QVZzK2o0MHVBdGFCOUVFWDhkRXduaXlVTFEwRzRhRHdKa3dNCjM2cVNjd0dBMGlMVnl5TTBRRGtNZ0d6VE1CZ0EyWTRDQXRrYkhYRzVwczV5b2R2YzNVUGY2RFgzOWc3MDlqM3B2ZmZrOWdQenZZZVcKdXcrWmVrLy9yZHNEZlhmbys0OXRtNzlnaHZSanZuYlRjdVc2NWRKVm9COUxKK3orWWNvLzVuUHQ5T2xtK3NUWmdTUEh6WTFIekxVSApMRlgxUUQvbTRpcW0vRE9RVXd3QVpNbklZOG8vbHAyWjlNNk1nYTI3SDIzYy9tVDlkbnJ0RG5ybE5ucjVGc3V5VFEvWHJudThlTVdBCk1aSFdSdEhhaUQ1NXhBcU8ycGtsbkN5Ui8wNXRjSStpaEhJQlZ5T1V3UFZsNmxOc0xkRFBNQUFCL1RBQUdxbWZNV28vMW5ZZmJTMFQKYjEyZGZmd04xZDc2eGxuSy9LL2xzVUhTUVFBSnhHSGhzbUFiZ0FSWUdNanpBZlNkZEhHQUloY0NTRlBocG40S0lDOUZsWXNTam96dwpVRmU3VVEyZWVPV24wblVzQWI0NjBiaDdjZlNPNUpodEtVa2htVlZ4QjF1TExqNjhmSSttSDlEMFk1cTIwUDMwUUwvNWthWC9IdjN3Ck5uMnZqMzdRYjduNzJOejcwSHpsNGNDbGgrYUxUd2E2K2tIb3RrZDk3ZlRkQzNUL0ticTMzbnl3aWw1Y2Z1dTd5bFB2NWpXOWxsdUgKNU5VZ2ViVU8rVTJUY3hvbXAxZE8yRk9NN0M1RmRwVWdPNHVRN1lWUDliTnVQN0p4NjYvWEZBQUF3YTM3bXRwM1ZXWFROTEIxaVFHUQp6VURET29GR05rR1B2UVEyWERsREFBTFg2bUh4TmxTQnE1KytDb2pLQmlDZEZnSkliZVNLbHlWOVdGdysrVUluY3ZIcXhCUGRyelMyCklRZGJrSnFUU04weHBLb2VLU2wrUFd1LzYvbzFueVVsc2hPVEo3ZGYrM25kQ2FTNEJzbXZSZklya2N5TWlUc3lrWDIxRHJzeWtaMVoKeVBhY0NWdlNBZjZRblRzbTd0ejNxL1hwd3dBMGJPVnIyUG9YQUJEUXo5dFlNZERQNzFHb24xK0xNNEYrWGhYc2VWVzRId0RvTlhFTwpBTkE4eFlzQ0tCcHU0RWNqZGRZNUdDcUpXZ2xmSERFRmlsT1NSWVRlQTkvMlJ5Si9DcGszaFNvQUFMSXowSEFBTVFheUI5Qkk2Tmh6CloxaGNWUG11eWtJM2RkNzN1aFVtRXdrQWxCZ2xUNHNoa3VMK0R3SElYalVNZ0J4VitVTUF5cGl1eUFGeElmWjc0RHYvZlFCTmcvUVoKRTBCV0E4RzhpUllDQXdFQVFmcWdtZE5rTVBBR0xmV1ZidnJNQ3FCUThDVkF4ZytYQzhQbFBLQWZHSUpqRHlCb29KY0drR0FVQUdGNwpmem9BbGM1UUZBTUFUU1BLWmxFN3d6UUpFZnJuQVdoeGpBYm9aMm1VTERrS1R6TEprblJjalpvZlJzay9rV3grSDkzbUs5L3BKUWYvCkh4bWVXSllmbXVHUFpud29YL1c1TkM3Nm4vSjZYOVp4ajlCNlgrNEJIK0VSYndtY0dPL0JQK1RLT1RDRGZkQ1pmY1NWQ3hnRWkwQi8KMVovK091WjBTTm9KZlAyaDZKMk5xN0tiZHBjZnlLc3ZyemxiMWRoU2ZiaTk1dFRGNnViTFZlM1h5cnR2VkZ5NldkUGRCMUo5c2EraQorMWI1eFZ1bEYyK0NGRjNzYldpOVZkOTJxNjcxWmszYnplcTJtMVVYYmxhMHd6UTFYMjIwcHVFOFRGM0wxVm9tNTYvWUJ6dyttTlpyCnowOUQyM1VtVGEwd1pWM1hLenBocWpwdjFIVGVxTzI0VWQvUkMxTGNjNnVrNTFicDViN0tLM2Vxcjl5dHZYS3Y0ZXA5a01yZXUxVTMKN2xiMzNxdTVlYit1ZHpEMU4rN1g5dDZ1dVhLejV1TDErZ3RYbXBwN0RwM3NQblM0L2REQnRtUGxoNDRXTkJ6YlUzRmlYZjdKcEgybgpkVnZQeU5lZUZxN28rU2FtK3g4UkhYL1J3TDFnM3JJTGJ1TE9HYUl1WjlFRmNPOHQ2L0NGQzJvWC9TR0Flb2FXd0VZRjBBMC9jWGNBCi82WkgrSjBackQzZnM0VWF2b0tFdzBRVjZCd0J3VjVBcWI4aWxyK3YyTzJteVoraEt3Y3ZjdkRsVmxYbHBTNzNVcGY0YUVwOU5aVysKNm5vLzlZRzNkTVZ2YXdxblV3VWU4c0pBYWVHZnBKbWZTRGY4WGJaa2dWZ2RKQkdIb0VGaDhubGg2RUtXTkJTdWhVbURnSDdnZ29zawpHSzZMeWNPWWFoQ1FFQUJRakJZYkNTRDdjNEFZK2dBRGdmczdGZlgwNlE3NjB0MkJLOWVlOUY2aTcxNkhQVUJYSHBsdjNhVHYzYWI3CmJ0QzlWK203dCttSEQ4MTNIanpzdlE4WUJNTG9CNGJSejlENWh3QkE1bzVMMXQ3bkxrdHpCd0FRTFA4Y1AyTStkR3lnOGRCQVRaT2wKc3M1Y1dtMWIvNElBeW9SNzRDMTdZZm5IdkNQandiWTlUN2J2c1d6ZFJXL1lTcS9aVEsvYVJLL2EzQTl1a3RkWmtwYlJ5VXZweUpTSApWTncxVGVKRlZXUW5SL1k5VjRFcU5SdGxraWlVSTVmenhFVElBb3o0UUw3ZHBoOTdBSG1RWmFNQ2FHVDU1Mm0vOHhDQWhobkkzMUJwCkJWRGhWL0w0SUVrb0FCQkxBZ0RFZm5rQUpRVW9jancwTmZZQW1nSCtBSW9LNnlFNk5WNnFhamRsb3h0Ujg0bDBFMXRBYmpYcTk2WEUKVnV6Zi9QaEk0dzNnbmtjUVBVL29oM2ZvL29lMFpZQzIvakJibmxqb2h6UjlIN3g5d1B6b3NmbkovWUdCUG92bHVzVnloVFpmb3Z1Nwo2UDQyMnR3OThPQmNIMzN5Q1gyU3BnOCtvSnY2SDliUkI0dm9aZGszLzc3bjVLdTdxNUY5WlVoR0diS1A2WGVHOUVHMndkcVB3NVpjClpGTW1zajRkV2JzSFdiZmxOMnNMM3pLVlRsZFZUNGNBS25IU2xMb29TNTRQb0pIYjRJY0J5TVlnWDFQdEdIbEJBSVV3QUZMRjRZRk4KUmNpZEIwajdvL0VWNTM5WjJqQ3h1aEVwT3pTeDhPams0dU1PZVVlUXZNUGo4dzhoR1pYajloVzlWbGlGTlBjZ1ZRZVFncHFKR2FVLwozN0ovM0U3dzcxQ0hiTnNHQVFRa3REVjcwc2I5RGh1MklsczJqZCswL2I5WDdYcHhBREVOR08vZ0pXL0ppNEIrZmlmTitSOUoxdXVpCkRLQ2ZuL04yL1ZLNC83ZkNQZllBaWpVOEQwQ3hlbmlJRVFBUTBNOUlBR0drK1BrQXNobklCaUFRZXdDTlZNN0lBUGM4amFJSVhML1YKcmpTWWlJUW9hV0trTkRVYVQ0alRMbzFWV2FONW1oZ2Rjd3owaXdOSWpzRjVxS01DeUpYS0JCa0dJQ2RGaGcxQXJrTUFta0drdTJHNwprSkhFWVRKMDNzOG9BUUFDK29HeDlrRURBTDByei82ak5Qc1BraXdtZ3p2Q21NaGhuaTZFRFphQ2NweGxCVzdvM2crbGkrZUtoZUhpCklCWThSa3pBa1VIOU1FVWdoa0dNZ1Znb3JBQU5IZ1l0NTRrd29Zd1U0WlFJQXNnYXBVb0VvbEtER3dFVFNzVkh0VnhjRllJcTJYd1YKVjZnTW5vY1RmdWlPNlVRQmlDTmVhTXZJWlMvNzlhOWhQN1hGbWN4eFZGUk1VMVpPcGNyZHFaeGdkV3FzRGc1a0FRQktOdUZ3OGxjVQp3UUJvZVRTNTNOb0FueEtKcDBiTGxrYUtVdzJpQkwxVXBaTnhLY0g3K0xicFdQRWZsZVdPVktFTFdqa2RyUUtmRlFCbkg4cjJ2WWR1Cm1NczFwbjNMclFvTU9lSEtQejJEZjhKeHdjbTMrTWU5aVVOZlJsZUxWcFJFN3l6YlZGNlRkN1N4NG56aHVVdEZ6VDJsclZmTEwxeXYKYUw4QnJ1QytwT1ZLNWRuTDlxazQwOE9rNnN6bGthaytlNlg2WEk4dE5jMlhSODB3OUl5aW4yZFQzM3J0SjRuTlRDRDFkcWxydjJFZgp3S2E2enQ3NnJwc04zYmNhTC9ZMTl0d0dxYnQ1ci83Vy9ZYStCL1czSDRMVTlUMm92ZjJncHU5Ky9hMjdkVmR1MXJkZVBuQ3M0MGoxCnVhUFpSdzV0cldsWVZkeUZiV3JqclR6M1EreTVUelZ0NytHWGZLVFhYVVUzcG5PdnVIT3ZlWER1elpUZERCUmZDUlJlZncrOTZpZSsKN2lOdG55bTY2ODY3NzhxcS9KeWpsQXVDMU9GaWVSQ0JMUXhIcGZQa2NaL2d1MzJWWllBK00zUmw3cHBLSDJVOXVIcG9xd1pQUGRIVgplV3ByM2NHMytDcDRCUENvQVVxZUxkL3lJYjd5QzdsMmtTU0lKLzZTSS9zcVRENEhMb1RCdy9kZ2dJZHNrY25aVVdwMGhVRzFWcTllCkc2RmJFMk5ZR3d0UFJGd2ZaVmdUYTFvVGJkd2NIUVhvazZUQnN4TGo3bVVWOXArN0FGZXNMdCtnYjl5a2UyL1J0L3FZaFMwR09pQzIKN2U0Z1p1dmp0dG9QZmIyWHZuckRjdVU2M1hPTmhxMC9sK21PSG90MTV4ZmQwbTQ1ZTk1OHBwaytjdHh5NktoTlAzUnBEVjFVUlJkVQowbm1sZEc2Skphc0FMbjdCOXVjc3k4NE15N2I5bHMxd0NjeThZWWQ1M1haNjdYWjZ6Ulo2NVNiTGlvMlc1V3ZNUzFhWkZ5OGZpRXZyCmoweCtvSSs3bzQ2NnBUQmRsR3A3QkpvV3FYeU5oZ3VvSVJYeWdyREk5OUVkNzZpT1Q4WHJwcW9xWGRWVmZuSll0WjJtclE5QWp3elQKangxOWFqM1ZkVXpzeGVPcmZSby9YYjB0M3JvcWQvMEJmelVBVUdLb09KUXRtY05DNTRmam9jd1NHR09ncHgzUVpMaUVZRW1JY0JFZQpialVRRndDSUpXYUhpZGpmaXJRZktNcW02MDY1bUpvQXZGekpSbGRkazdQdXdIU3F3VlZaQ1JBd1E5WG9yR3p3SklwbUNUYlB3YmNVCkZ4ZDNkbllPT3NmNncyS3hNRGUySHdOMlAvck5BMC82emYyUExmMFB6QU4zekU5dUR2UmZHM2h5ZFFBWTZFbW41ZkVGOCtNVzg1TnoKNXNlbnpBK1BEZHcvOHVSUjQ0Q2x5bnk3NkZGdXhxVUZPeHAvc3kwUDJabUhnT3Z1d3ZIYkNpZHZLVVEyWmlGcjB5ZHV5UHo1dXF4SgphYnVRblR0L3M3eDRxcTdtWGFyS1VWc09HMHFvb3VtS0dpY1ZuQmh2TTlESVBtZ1EyMm1IY0xMNnN4dmdSMWFBR1BlTUxBVU5pNmVwCnppVVNMb0g5VGJ1WHE2RU1HbGFVUm16VXkyYm1sUHk2dTIvQ3lVdEkrVUdrN3R3cnBhY25GTmFQTDI1RUNwb2NDaHZIRlZSUHlpMGIKbjFzS2QzaWxnMnN0VW5rWUtXbjRXVW5OTzFYMTd4MDU4ZTM1dHFET1MreExsOUVyUGRLclBhS3JQV0U5M1Q5MlhQanM3T25BeGdibgowbUxQbVBwcG12SzN5Vko0aXJlbTFrbGRhZDFuWGpDZHlwdWhLWFBTVlRwcXFxZW9LcWVvUzZlb0NxY29jdC9FeW40dksveWRKUCszCmt0ei9FV1gvaXJmdjFmQ2R2MkR2K0NWM3grdUNmYStLOHFaS055MVNhdUFVTTVNNHlTUVpxUjhtZ0Q1TStlZnBISGpyRWhpbWxsbFAKREJiT0lTS2Q4TjF2VS9tT2VPWWZxYktwVkQ3SUVJUHlRZXdaTklnaFRRR0lxN1lRNUZrTUZkbmlvaXEwWllheXdCWW5aYTRybGZ0MwoxUVlpU3AwWXhVc3dvWXZqdENueGVGcWNDbVJKbk5ZV2hqNUw0cXl6d0dKMGkrRlppRnJyT0RCbGhJWTBLa2tBSUxXS29CUnlvQjhaCkJnOUNCQUFDQnBCS1ViRlVFQzduZzYreGJKUTNUNDU5Z2k1M0pkTmRxSFJuS3QxSkFaSUI0a3c5alJPWkR1S003N2NGZWJxLy9kbU0KNmg1YkdBQTVXak1GZ3h1K0dBRDlYcHdKcm5BNzJCQ0Eza0t6MzdJN0pOb0dJQ2Racml1Njd3TnB5bHlST0Z3Y3dnQ0k5OU1CaUZUeQpaQm9PQXlDUm1nY0FOQi9IL09UYnhnTFFGS0lZWktTQmhzVU9RSG1BUHZBQVF3aWd2SVdxdEdnZE5neEF0dk9nN1FBa1h3SXNiQVdRCldpc1RLSVFmNHBzQmdQNmdLQU1BY2tZcnBza0hBZlFtbWZGbitkN3ZoUEZDRWJyNkMzYjVPeUVIWmlseUJYSHAyNHVMaXc1V0hHd3UKTzlkWmN1RmlYbXQzMXRtT3ZQUGQrU2M2Q2s1MkZwN3FLajV6MFphaTA5MDI4UXhMNVdtWVVRejB2d0FnZXdPTmZOT3dKenduTHdnZwprTnFPR3pZRDFWK0VxYm5ZVzMyeHQrYlNUWkRhbmx0VlBUZVpWRjd0WlZMYmU3dWg3MTdUblFlTnQ2R0txaDdkcjczVGQvRHk5VlBuCnVzL1Zuem1mV1g5bVRmN3hwTjBYQlN0YlA5VmU5cEgydVl0dnVQSjZQTGhYdlFVM2ZVUzMvQ0dBRHZ5Sm5jUmlFeVNIVUFwRUNoRUwKRjN4REp2eU4zRGliS25CWDF6cnBxb0dCZ0hzWUFESDZBZCtrTXZvQnIzTXVpc0VKblNQaml4YjVZa1dCK0w1UFpPQlRSaG9tZ0J2ZwpGMHJDd3FTTFFGaXlJTFlVanVFRVY1WmtFUWdBVUtRR1hhNVhybmtXUUd2allCMW9hMExNK3JqSWxRYk4vc1Q0Qy9zejZjYUQvUzBkCnNHZjVDZ1FRUE11bnI0L3hqUTFBTnYwd0pSOW9vTjQrYzIrZjVYcXY1UnJVRDl6MmRXbFFQMHp0eDdyenE4Vjg2bHovaVROUVB3Y08KRDlRZE1GZkQzbWU2dUpvdXJJUm4vMWoxQTJzLys1bmQ3NW4wOW5UejFuMFFRSnQyV2RidnNPcG5PNzBhQW9oZXZ0RzhiTFVsYmVWQQo4aklHUUkrTUNmZTBNYmRWa1ZkeFE0OHNvcGxTblNDSURhUThuT0xPRmF0blludmNzRm8zdEF5T0ZGVlhlT1B3bEJwSEZieit4QUJTCkZYOEpBY1JpUzM1NFBvQ1lDcEFOUU9BckhsTUIrZ0dMK29Bc2RsSWVjTk5YK3FzcmZSVzE0S1BDUlZYcHFhL3owUjUySW11bnFxdkEKYTZlUHZOQ3d0dVpTOTVYSGp4OEQrZ0QwZ0J2Z0crYSt2Ny8vQlFIVWY4czhjTjNjZjgwODBEMElvQ2V0bHY1bXk1UFRsa2NuK2g4Ywo3Yjkvc1AvcW9ZRkxCOHczcStrcitYUmhSbC9RanVPL1dKT0ovSCs4M1FWNFcrZlpOM0FQdTYyVU5BMHpPdGdtYWJ1dTY5cXRnM2J2CjI5RzdiazBhTklucGlObVNaUXc0ekV5T21abVo0emhNWnNiRXNjWFNrYzczUE9mSXNtelphYloxWDYvLzVjbHluS1pPRnYxODMvZHoKUHhlU1lkVUgwT2RjNGs4dXBuaWNpUEE0Zk5IamJPUVByc1hOT3BTNVFsNENYdmlYeS9MaFVLMGtaNFdrZUFLQW5BWWFmeGkrWk14QQpVMndBY3N3MWo4K2tUem8rRkZDNlBxQUVmUG9YY2dlQUFoVk1wWnF6NUc2OXg3MFdqNG9IUHlxcCtsNXV6ZmV6YXoxS3F6eXlLenh5CnlyNmZYUEtEaENLUHBFS1B4R3lQaUlRZlJ5ZE56ODc1NjYwSHBPYnVRSzN4TElaRllGZ1Vpc2FnbG5nYkdtV3dSQm10RVNiMGlzVisKd1lxZFJySERKdHRlclZIZTlweGMwL1psWE4wSGg0dFdxZUFWcCtDTHNFWlJCU2kyVWxLd1ZKQUZtMS9TdktVaXVQaG5rVEJuUGpkbgpEanR6SmdQcTV5MWF3aHVrR0tDZlYzMGlDQUM5Ums5WnliNE1BS1JXMFY4TUlQY0JJQUFnbVlUSmxiSjVJcXBBUlBzN1g3T2NGN09BCm43R01semdQdnBabE9nMkUxNEVjQUhMT1JEdXFRYU1HbWxRL3JnQnkxUStJcHpodHJURGo5NUtMdkVBNUJKQ0dFeDRxL3pjQVJGU0EKdmhWQWZod0lvRDhnUjEwQUJQVXpDcURrbFNKSUg1Q1ZnbmdRUUo5VnZEaVFsd0tRSzMxdy9TUTdBYlNNRDVmOXVBSUloQmlJZGdYUQp1QTNST0lCV0ltbXJrZGlQV0VmK3dVUjhXTHQ5RUY5dkxvV01rUDRyQUpKU0dSQkF5UHZJRmFDZkZmd01Wd0FSN2lFQTlKSU1BbGtwCkFIOTZDbGJnQUZvdHl0Z2lQUmFvNElXcGtFa0JCSWVneHdHSUJRQ2tVSElZRXNwdkJPZlc4REloeWNVNU9JQUt3Ui9ONWZ5Y0ZmeUMKajlncHYyY2MyU0dVaVhaUXJteFQzN3hTVWZTNE5mVlJXM3BESjBCUDNKMkd4SHRONlE5YU11NDFwOTl1ekx6ZENwSjFwdzBrKzI0NwpTTTY5anR6N25mbjNIQ200MytXTUUwRHVCbklGMEgvRFFPN1B1MzcwV3pNcGdNcWF4d3dFSHNPME9nd0VVdGIrdEx6aldSV2U2czZoCnF0RlVkc0hVZGcvVmREMnJ4T2VXeXJ1Zmx2VThMZTBlTE9vYUtPMENTQm9xNlh0ZU9qaFM5bHhiTmpKU1BEeGNPUHlzN09sUWRWZmYKbmZvbkRURkZiZUx6ZzMvVkdONUhoaGZzMEszenZ2MHJ2K04rZExxQ3pCVHM1TEY5dmZqaVAvSURQNVFsdkNmTDJTQ3JXaTJ2WGFVcwpXNnNzZmtkZXVsbGE3ZFFQeUFaNUtkRFBhbEdScDdEUW5UNUUxdkJyVmd0aEFlQlhuRE4vb1l1MlVieTJVWGI5azA3YVNkKzZpd0V2ClJpVVlCRUtRaUlsNGEyU2NvNnFKQURvWkZuQWxKUEJxYU5ESklPWFZFTTJESzlleHlqcnMwV08wcFFNRGZPbC9DZ0NFUG50bUd4b2kKS2owTzlPQWhha0w0dHNQbjZPQVFDS0VmNTZGM1cwZTN2UVVlK3hyVlR4UFV6KzI3MXB1M2JkVjF0b3Bhb0I5clFhazkxNkVmZTJvTwpyUDBrWlJENnNVY24yYTVEL2RpdXhHS1hvKzBYSTBjQmRBVTdkUms3Y2NsKzdBSXMveHc2WWR0MzFCWjJHQTA2WUE3WUI0dEF5cENuCnNvQkJZVmlYV05NalViWHlsQ2NFak05RmtwOHpvellqdVp1NHVTdkUyWXRrK2VzRkZlL3lxdUd0VmZLczd3cEFtMGNCOUdkZStHNm0KcndOQW84ZmdYeDVBWHlHYWozbXA2NlJsNzZseVA1SVZmQ0F0MjZ3cWZVY09yUXdORVZDMW1Kdi9qL0N5b3FZaGl4M0RyTER3UTRpSAowQS80Qnp5MldDdzJHMFlFUmUydUFRQ3lnZ2NXRERYYWJWcjdHSUE2N2JBSTFHSzNOS0hvRTh6NjBHYStpeHB2b2NacWs2SEdxcXUyCmEwdXhrVUtzcndDclQ3T21YdXY3ditNVk13L0hlNXlPOWpnZjQzSDA4cytPUnJ4Mk50Ymo3UGszenlmUEQ4MVlLUzVhS1M0RjFnU3YKbzZzbCtjdEdBVVFZeUgwVWVuUVNxTVNacWJZZ1RtcWRTWjhrOHI2cWRJTzZaSk0vQUZBTUFKQlM3cU5XTWhVQnJCL1cxM3BVTjN3LwovOVlQQ290ZXlTcjVYbXF4UjM2eFIyYTFSMHJPanpKTFgwa3UrVjVrNXZlVE01YlVscFBiV2lJSGRDbW9MZHRtTDdMYlNpekdmTjFRCnp2Qmdqdlpwam40NFE2dEwxV29UUnJReHc5b0lyZjZ5M25oZWJ6eWowKyt6OUI5QWgvZWJEWXJPNFYzRnpaOWNxUFVNS3B3UDkrNFUKZzYvQUdrbStweUJydFRnUC9MY0RpTS9tNXM5RHNtY3gwMmZRazZkVEU5OGt4NzdtRy9Vejcyc2dyNUVpcDFGaVhxTW1yMkpmMmkyVgpxZFhVUURWcnY4dkZGNU1DYU1JUk1BQWdIakNRa01JWDB2L0MweXpseGN6anB5L2xKczNuZzVlNWpLWHdKY3k5RHVRNEdBK3lXdXBpCm9NblFNOEU5bnVJTVp3QWJQSVdadnhGZjRtajg5d1pUd2E4Y0FPaEFxSUFBME9GUSthaCs1UDhHZ0hoOGxoTkFKQVFIRUVMZWlpQi8KUUk2c0VjU3ZGc1pENklnY1dTVk1BbGtoU0FSWkNkN3lFMENXOCtKWGNtRytIVUNUNlNkNU9UOEZaQmtlb0I4NDY4TkpCUUNhdzBpYwpUVStZUjNjY0NnTUFXc0FCSDNLZUM0TWhBTFFjemtFbmZzUTgrUldkNThQMC9pOEFpQVFCSlBGR3hDUUNRTnY0bkErNUYxOEdRQzlqCm9CWEN6S1hDL0pYQ25HV0MvRlhDcksvRUo5VnlZWmcvYndLQWpveGRCeVk4R01RREFEb1VpQUFBN1ZkeC9KVU1qb1R5ZThHcGRieTAKaGNKQzhEM0JTbTdoY2w0K2JORHk4enc1cFo2c2xFOVl4MzFaVXFxUEh5SlZuOGtxU1h6VW1GM3pKTDNpVVZaMVEwRmRhMTV0YzI1dApROEhOcHZ6NnB0dzc3YzdrM2Uxd2lnYzhKdDUxUHVOYUFYSTMwQVFBL2RzR2Voa1MvUnNBY2hwb0FvQmNEVVJVZ0p3R0FnQUNJUUFFClVvbkhDYURDM3NHaW5zSGlibnhBdSt0cGJjZlR1bzVudHpxSHludUd5N3VIS2pxZlZiUS9yV3dmcUc0YnFHbnJxMjN2cjJ6cHErNSsKbHRYZG5hWWR5TE0rcitscXZaK1lkMU53cU9XajNjZTIrdEJGZEpiY2o4Yjl4aGVoZkMzYTkydlpkYmdZVFZHMVZsNjNWbDZ6WGxFTwp4NXpsRmUvS2FwMzZBZC9vcjVNQzRrQUE0WmxJSHlJcnhkVXJKUlhyeE9tLzVCMy9DNE83bmZMTmR1clhXMmpid2RzZHRDMEVnM2F4CnR1MW1iL2ZpN0FDaElWNHFLZXVJdi9pMFV1b0tvRE9oQVpmMkJKNEtrRi9VK0ZlZlBXL0lMTVJxNzJDUEcrSHNjM2NmTmdDdjhiSSsKZlRvR0lKYzREcm9UMTUyQzlBK08xWDQ2ZSt4dFhUREUzTStUWnV4aEV4eDh2bjNQZHVPV3RRWU9QZ1A5b0lWbHRyd1MrNWgrNE1rdgpwMzZJNXBmdFNyVHRVaFIyTVFxN0VPbXFIK3pFZWZ2UnMvYkRKMjBIanR2M1FnRFpnZzlhTlB0aEVVZ1ZOcVFJR0pHRTkwcENtdVgrCkpvNnFCWkh5RllFZnNLK3VFaGF0RjVaNWlvdVdTZlBXaU1yVzg0QWp5MWNwc3I5akFNbnovNWQvZUNlVDRzM2E0c1BaN3NkMUxFTDgKVmdCUkVaSWZtK1RMSXYwZlUva3BOMm1Udkd5emY4NUdVZDQ2Y2ZsYVJjVnFXZWw2VmUxaWR1NEg0clJqeGUwOUpneHl4NDVaN0k3cQpqbTIwOCtXVTBLVDZnYkhiSmdXUXJRdURCbXF6VzV0dDZCTWJBSkRsbnMxMHg0cmVSRzIxcUtuQ09sQms2Q3d3OXhaalEvbllTRHIyCk1NNGVldmJCNGlQeEhvY3Z2bjdvMnZjT1hmQTRjZjcxRTlmbkhjOWM3Sit4U2xDd1NsSzJURnJnS2NsWkl5MVlLaTF5QmRCVUJscXYKS0lZbkFIQUF2WVBIM1VCd3RjOTQ3cmcvNDVvUDRPY1d2NmNzK3lNQklJV1hXa21YYVZpdnBSVDhzS2pwaDFuMUhsblpQOGdwK1ZsYQp1VWRxOFN2Sk5UL0lLb1l6UFZHSm5yVTNrT2ZEaVNic2h0RitGN1hYbW16VmVsT05WbCtyTTl3d21Tdk5sbnlqQ2VnbnphQkxNZW9TCkROcG92ZmFxWG52ZW9EdXQxNTNRYVkvWlRPR0c0VER0MDMwbTdRR3IzWC9RdkxXeTRlY1J4VXRVbVV0bEdaNGl1Q2RwRGE5d0diZGcKSVQ5dmpqQjNMaWRySmlNTjEwLzg2MzdSZ0Q0LzlicjZNNThyci9wZGY1TWMvU28xd1pOMXdWc3FEVkJCQU8zVi9Kc0E0Z21aZitZRgpMK2JHenVWbExFRVM1L0d5bC9EVFFTQ0Q4SE5ob3d4S2R5NEhXaW5OQkFBaUFnMzBVdWlCRjJRNUlrd0NMN1VmaWE1U0EvejNCTklnCmdJSmw0V0ZUQXNnNUErUUtJT2NNa0Z3bUJBRGlDZGtBUUZ3ZUV3Q0l4cWZpQUdLUUVEcUpnNUE0NUcwSTZ3dmt3R3ArbkNjZjFuaFcKQ0dHVzQ5eUI0c0d6akJlL0hNOHliaHpJQ2lUT2cvQ1JleVoxejZoK2twd0FXc3BMSmdBMG41MHlsNWtFOURPTEZqK1g1akFRQ0hnZQp4TmtSVzh4SlcwS0VtN0tDay9RaDYremZhV0p2RnR6MTdNMGxreEU0QlAyZEFFZ2dkUUNJSjZJd3BWU1dlTWNPUHVzWDNITkFQd1NBCmlPdkpDQUNCTE9GbkU1a2dvYWtDRExSRWtMZFNrQTBBQkI3L1NYeGFJUmM3QVhSUXc1c0FvS09CQWdDZzhHRGV3U0Rrb0lxelg4VUcKLzRma1MveitSM2hrQXpjSkFraVl1NXlidDRTWHUwU1lzWXliTjF0U0NQNUVBaUJ1SS9OWVZCS0pUT2NvZ3M3R0pNZlhQMHE0K1RqNQpabVBtN2ZhODI1MDVkYzNadFkvejZ4dHk2bHRCY20rMWdlVEJEN1huMytrQW1RQ2dDUzB3ZHdBVlArd0NjV2ZRdjRlaGY1VkJVOFdkClFjUWt0U3VBaUJDajAwVHR4MWtCQWludEhFdUpTenNNMEtlazUybHhMd3pBVUVIUFFGN3ZRSDdmWUVsSGIybG5YMFZYYjJWM1gxV1gKSTlWZGZaVWQzWld0WFJWTlhiZmFCdW9lZDVVL2FhbCsybGVzN2MzaFN5VWl1cS9JVjRSNHNkaTcvc25uL2s1OGJyTXdGODU0eXVFNAo3VVlaUE9EenJxSUlBa2h4QXk2OVZaWnZrTVBqelhqbkMvYS8xa3BLWFMvcGRNMHFjUlY0YVhsSG1QcHI3cEd2R0J3dnloWWZ5bGU3CmFGdDNVcmZ1b0d5QkFZL3AzK3hpYnZkaTcvVG03Q0p6ZGlra1RIZ2Joci8wVEtBRFFCZERZUG5uZEpqNlZJQzA4T0JCWFdvMlZsbUgKMXQzRkd0cmcwc0tlZmxqTzZSKzBEZ3pDTGhoZTZZRWpRYTRoR2w3OWc0NmhuNTRCeUthT0hzeHg1cXNOenYwOHh2VnpEK29IdXdGcgpQMmg1RFladi9iSG5sdGl6QzdDTWZMeno1VGozYm85TkpVWi9zSWdFN0Zxcy9YSTBkc21oSC91WksvYlRsMkh6QzllUDdjZ1p1QTR4CkhBTElIbklJRFRvQUFHUUlnQUFhVVFVTnlQZTFLNFA3aFA3OVFuK2RSSE5ERVA2TjlOSUNVY2xDNFkwVndzcDFrb0sxMG9MVmdxcDEKL0tyMTB1THZDa0R2S1NDQU5zc0wvOGcvdm8xRjgySjk0ODNlNW9mcytGWUFnYmdDNko4Y3hXZjhCUENUditPZkQvN0FyRmJjV2E2cwpYU0VyblNzbzNYS2dvdXBoUDRaWkxIREFHVE1DQWxtR2lBcVFzODlGU0FoL09KRStWaXZna2UwbEFZUStzbHZ2MjgxM1VjdHRxNm5lCmFxaXg2cXZ0Mmlwc29CUnJMN0EyNXB2YjByR1JUQ3pyYXUvdkQ2VjVIRHpuRVhiNkovc3VmajhpWWNsZXVCemZrMS9nS1MxZEJ0d2oKeWw4akxWb2lIMWNCbW1BZ0o0TUlBQkVoQURTWmdTWnloM2htcW55b2hLUFFCSUFvTW9FVFFPOWV6Zk5JdSsyUmRzTWpOYzhqcy9TTgp0SnBYa2tzOG92TTlyaVF0TGEwaWQvZWxtckFHRkh0a3ROelJHUjdyelkxYWM4T0k2Y213OGRHdzRmYUlzVlpuS3RXWkMvU1dyQkZkCjVvZ2hUV2RJTXBqaURPWUluZW15em5SSmJ6aytiRCt1dFlicnRDSGFweHJEVTVWcFNHSVk0WTQ4KzJkeHc4YWplZlA0NE5VM2Y3V3cKY2lsU09JZVROb3VYUEp1Vk1ZT2VEUFJETkw4Z2dMd3ZBd0Q5eEMveWRiL0lWOGx4YTFoblNGSnhnSXFzVVRIM0JpRHU5SGt4Z0VSUwpOazlJUjRUc0w3a2hDNUNFV2R4TUFLRDV2R3g4TFYvYUpBd1NPZllEZ1hoS3NqMEJjU1M0aE1UWnpuaUtzcHhaSmN4MFpxVWd3eVdKCnkvazU3d2tqZlZXYXNDQkd1SnF6UDBpNlB4Uy9FeDRIa0V2Z05hakVXeWVBOWdiSUpnQklMT0VCQUJHYm9FY0J4TVlCeEFRQW9yREoKMjdpTVB5SjdQZkhHMWdwK0hNRWRoM2k0aVV0NGNVdTVNRXVRV0pDbDRDMG5CdVNsQU9TbW42Umx2R1NRcFhqZ1dYY09IUDJadzBpYwpTWTE3bXhJN214SkhHR2crQXo1UFRBVTVtMklFZ0JieGtwWWhLZTh6TC82Tkx2ZGkrbmh4ZDMrM0FPSkxmSEFBK1VBQVNlaHM4WTZkClBNWXZ1V2UrRlVBdmF5QjhmOE1xZnVaU2Z0NFNRZjRmaGVla1VtbVl2MkFxQUIwTDVCOEtKQURFSXdBVTZFOFhTbjMrTE5xL2ladTQKa0Y4QWZqYmduc1g4N0VXaWpLVkkvaElrZXhrMzdSZmNDOXZvTWltZHhmT2w3dDdoeTBENHgyTVNNK3J1NTkxdFN5aC9tRnoxSlB0bQpXMDVkWTM1OVUvYk5GaERDUUFTQUhNRUI1Rm9UY2dmUU9BUGhBUHJQRFRUcGsvK0poQ1lGRUdHZ2J3VlFlUWUwRGtoSnp4Q1I0bDVICmF0b0hxenVmVnVFbjg4dTdIZjJ2d3U2Qml2NytpdDYrc3U2ZThzN3U4bzZ1aXZhdTZ2YnVtbzZlNHQ2T21wYk8rMDM5dHhyNzh4KzEKbExaM1ZUWTJKV1ptQ3dJUkxzZUh6ZHpKNTNraEhQcFhnc0FQbFFudnllczJ5VXMyeTBvMlNZczN5UW8zeTRzMktZbzJ3dE11VlpQcQpaNTBVSGxPYU5Hc0YxV3VGRlpzRVdiOURUbStoOFVua1hXVHlObC9hYm0vS043c3BXM2VSY1FOUnRnQUQ3WWJyK09CSWtFekNPS0FVCm5sQktUbXNVQUVEblF5Q0FMZ1VGbk5ESTQvY0dkVjY1RGllUmErclIrMCt3bGw0SW9PNCtZQnEwRDhZKzhCUWJlRzd2ZytJWkM0NGUKRUZ0UFA1eDNCdW5xaGZweDdQdHB0VGUwNEFzUDhSdFBiOTBGK3NHcTZqRDgwRHVXVDh6OTRIZCt3YVhQT1k2dFAvSGo5SU5kaVJuVgp6MVdnSDlzcE9QZ005SU1kTzRjZFBtTS9kQm83Y0FMYmQ4eSs1NGd0K0tBMU1Od2NzRSt2M3FOVmhRMXJ3cnFVSVUvbGdVT3l3RGFwCjVxbEMzYVBjbHlTNzhLa0FmSjlXdHBoZjk2NjRlSjA4WnlWQUQ2OW1nK0E3bXdGNlQxRzBYbmtEL001K3dUL3hEWXVKOXlKZkJDQmkKQ0pvcElPRkZJSW9UUU45d2xiL2h4Y096N3VyaWR3SnVyMUxjQmQ5WmJaSmswYy9kdnY4Y2FNZUNtYzFXTzZhREo3emdDWGVUeVdTeApXT3o0UDBBL2hJZkFNeWo4NEZpc2x0Rk0wUUt6ZGRtc0hUWkxxODNTWk1VclFGYkxQU3NBa09FMmFybGhNVmRhOU5Yb1FLMnRvOUxTClhXUWRMclIzcE52dVpGczYwdTMzWTQzY3MzWFR3cTU2aEYvK1VXVEcwb0NDVmFKY0FLRGwwcEpsa21MWXpKVVVMbEU0OU9NS0lQZDUKb0hYeUlpZUFpSk1CRXd5RU04Z2htNWZSRDhnSC9pWHZxb3ZmOHkvNW96d0tBRWdsOTlJbzZVbzE0N2ZITG4wdnFkZ2p0ZXBIU1NVZQphVlVlMFlVZUVmSGZUOHY2L1Bhak00T1dGaFRyTUZudjZRY2ZHWWViVGVZbUhkcGswRFliZGMxR2JaTlI5OUNvdTJuUWx4bjBSUVpECnJ0NmNwVFdtYVUySk9uT00xbngxeEhoeHhIUlJaejQ3WWoycnR4MDNXc0wxdWtERHNNSTRJaktPOFBSRE1vUEI2MTdISnhFM2xxcHoKNW5BQU9BcVdpSE5tc3VMd3dlZUUxLzJpWC9PTmV0VW40cWRlVndrQXZZSlBBcjNxRzdPV2RZb2lFd1dwU1FCQStBM3dFK2xEWk5JdAppRkl4Z3dBUVI4RCtJN0puSGlmeGJXN21ZbllTQU5BaWJqb0lNTkFZZzRRd2NEWkk2RGdqdGxLVXVVcWN0VXFjQWZJeTZGbkJUM2RtCkZTOEJ2REsrdzQvWnJRd09DMlFkVkxQMmF5VDdRMFF2QmhEUWp4TkFJU3JwaXdBa0lMTTRBRUFzQUNBeUc2RncvTFlqdFA5RlFsZHgKWTFkeVl3RjZDTzdBY09KQkZuTmhsaUR4aXpseElJdllzWXRaTU44Q0lGZjZPQUcwakpmb0JOQVNiaElCSUtDZldiUjRvSjhaNUpoWgo1Tmc1MUhnUXlDQWNRSzVUUVFTQUZvQmZJcEw2UHVQcVgrbXEzVXhmQUNBZkh1bTdCUkJMN29jRGlNckNBYlNiVC8rWWU1SUFFS0VmCkl1NEFlZ0dEbkI5ZExDeFl6TS8xNUtXRDMrWkZnc0xmQ3krSUpiSlFsV0NmQ3M1QnZ3QkEwRUFxRGhCeGtEOVZJdkg2bXpEMFBXN2MKWWg0OE9PQUUwQkpPM2p0STNncDI1Z2ZNYTF0SUdpYUp4ZUVMbUNJeGpVR25raGtuemx6TnJyeVRjYXNsb2E0bDhWWkwwcDNtaFBwSAoyYmRhUVhKdXQ0RTRHMkVncm85ZDU0RW1BR2pNUUtNQStnOE5OT21UL3dtQXlzY2J5UFZFdlN1QUhGMHdOd0NWZEF3NktrQzRoRUNLCnVwNkNFQzB3b2d0V2lqZkNTanNIeXRyN2dXeEtPcnRMdTNyS3VudEx1L3VMTzN2ek83cnoycnVxMnJyS09ycnpPL3N5V3p1TGUzcHIKZTd1dnBDY3l4Q3d2TVltUGVFdjRYb2pBMTQvRC9SOGtmSk0wOVIxNUhmNEtXdUxNUm1YcEp2OHlFQUNnOWJJeVYvMjhvUHdEc2w1UQp0VUZVdmttWThUdms1RmE2QUFLSXV0T1g3a09td210UWZjaGJkNU8yQUFidG9zR2JNZkQxME51bFlucTRRbkRjZnh5QVRvYW9ybW5VCk4wK2N0S1JrWVBtbFdHMDk5cVFkYThXM05nUE5kUGZETllaOUEzQVlxRzhJNnhsWDd5SE9lZUhEem4zMkR0eE1ZN3VlVyt4UG1tMlAKbSt6M0g5dnVQclRkdkVjc1BJVDZLU3JIQ3NyZ21hK3NBbHRhcm12bmk2ajkyS0lTYmRjVDdGZGpKdWpIZnZveWV2S2k3Zmc1MnpGWQord0g2c1IwNGp1MGZLLzlZQS9ZN0FUUVlHRGFvRE5IS1ZPMmF3RTdwbmdHWnVpbEUrVXgwK0xqNDlHK0ZHZk9GZGJDcEpNbGFLUzVhCko2cGVKeXo2cmdEMGdieG9nejlrN2hmQzA5K3dPYnZnUHU0ZEpEYThEZjVmQXREWFhNV3Z1WEh3SmxULzRqV3k2cFhjd2srVnFaS3IKZFJhN3pXakZkTUEvZGhNODdHN0hMRVk3Wm5mUWg1aitBZTZ4V3ZHeElHd0svZUFBbW53SXVoTzF0S1BtRm91NTBXSjliQmtGa01WOApCOVBmUXA5WG00YkxUY1lLdTY3RTFsdG9iaTgyM1MreGRPYmE3bWRaR2xQczNUSFlrV3ZkbmlmejM5QkVMNVFBQUJXQ0xKWVZMNU9WCnJCWkJBeTFYRkRrQk5NRkFVMVdBTmt4aG9IOFZRSnZWSlJzQ0NqZmhBS0xKQkdyNXJpQUZUYTFpYkF0UXpMb1c5YVBFZ3AvRUZuakUKVjNqRTVNelB5U0E5YXJodHd1NmgyRU96cFhua2VZdnU2V1BqMEdPRHJsMW5lb3dhSGhwSDd1dWUzZGNOM1RXTTFKdjFsU1o5cVZHZgpaVEttRy9WSkJsMmNRUjlwTkZ3eTZNOFpET2RNeG5NRzNTbUQvb2hPdjM5RUY2clZhM1E2ZjcxV29YL08xUFZLckFaT24rNFBhYmZtCnF4UGU1c1l0NHVVc1lHUk5weWErN2hmN3FrL2t6N3hoK2VjblhwZEFnSUYrUkR6akc3bWVkUkw4K29OVkJJQW1PUVB2QkJDSU80REUKVWpaZlNHZnhPWjhqZTJheGttWndzaGF4RWhjZ1dRdVJOQkNjUWFsT0F5MFJwRGxtZy9BUjZSWENER0FnUE9tdTZIRjFqeXQ2UUpiegowb2dBQUMzbTU2M2x4VzFUaElRRWNYQUFpUWdBUVFPNUFBaTQ1ejhDRUlkTlpuT3BiTDhkQ09WTFR2QktKR1lGQXR0Ym84V2UrQ1hzCk9KQkZDTXhDVGl5Z0Q4aENWZ3pJSW1hTXgwcDhNc2c5N3ZSeEtmOGtMdVVtd1l3Q2FDRWJqdjY0QW1nMkpRNEVHc2hsTEpvdzBHTGMKUVBQNDhZdVJsUGNZMS81S1UvOTNBT1R0Q2lCRUJBQkUvUlh2MUZRQVdzekxjamZRQkFhNVByOVFXQWgrZ3drQUxlQVhmU2E0S0pRcQpRdjJGVGdBNXg0Q2NBRHFvNGU0SEFBcmlId2lBWGJBUWY1cE1zdnZ2b3FEM0VRaWdoWUxjSmJ5OHhZTE1oY0wwUlp5Q04wVlpLL2dGCnY2VEUvbzI2ZndkTHVJUE9vdEU1WWlwTHlHQUNBNFVkT1pkVWVUK2x2aVd4cGlHcnZpV3I5Z2w4T3hwWENibVRpRWpodlVrTUJCbjAKWFFQSTNVQ1R4cDA3N25rWkFCRUdtakFFRFEzVU5naW5lVHFlRWFNL0lCV2R6MHFKMmcrK2twSEkyT09lWndCRGNMVmplMzlGMjJCMQoyOU9hVnBqaTFxNnlsdDZLNXY3UzVwNlMxdllyMmFrQ0dTS2c3MUl3bVlpVURQNllNVms3dithSmZpYzU4d3RwN2daNTNRWkZKY2c2ClpRWElCaVZzZTRHL2xOL3pMM3hIVVVFQXlGVS9uc0lpNHJGNzFra0sxa255Tm9uaVArTWQraWVMNVVQN3hwZnhOWUFPaGJJZEdJaEUKMmVaTCtjWUxNSWl5RlJxSTlnMEFFQUR6UHVWRUFCM2VxODdlRno1NE9Rckx6c2RLeTdENmUxaGpwNzRaT2diV2Nqb2hibUNCcDNjUQo2MzJHZFRuYzQ2b2Z1T1c1RTE3emJtL3JJbTU2Unh0YjBNZE42S05HMjRNRys3MUh0bHYzclhXM3JGVjF4TUpEb0I4NDlad0phejkyCjU3NGZYRCsybUJSQ1AvamdNejc2QS9SejdocWhIOXVwUzdiakY0Qis3RWZQWW9mUHdObG5sK2tmVkJQdUNxQitWYWhaSHRLbmxyWDYKcXpwbEIzb1VtdWRTL29ETXYwdXgxMWNhTTA5YXUxSmM3U25JOGhRWGJaQlZyWlVXZkxjQTJxd28vVUp3RmdmUVR2Q1Zmd0dBMkVKZgp0cERrQk5EWUVEUkgvbXQrNHJ2S3lyV3FJc0NnbjR2eS9XTnVEMExSMkRDN3lXNFp4bUNEeTI2eW1JR0I0S3BEOE1ac0J2Ung3WVZOCnFBQzlBRURPWS9BNGdDeW1ack9wd1d4NVpMWThzQkFBc2xaYnJQV1l0dDQyVUdzWnJMRU5WbHA3UzgxZEpaYTJFdHVUQW5ON0p0b1kKYTdrWGd6WUR3VjdXZlNMTFhpQW84SVNUYWtVTFpVVkw1QkJBcXdRRkx3YVFjd3pJSFVCT0E3a1VnWXJkbFRQcGswUTJxVXZXYThZQQpGQ0RiRlNxakJmZ3pOQ3BrM2Q3OXIxNkovMkZraHNlbDdCa0ZWZVJublk5dFdJTkoxMjR5ZE9qMUhVWkRsOVhjWlRhMUczUWRSbjJECndkWnNSRnVOdGpZOTJxZzEzeCt4MUE5WmFvZXNSU1k5SElYV0RTY2J0SEZHYllSdStMSjI2S0p1K0lUeCtUR2o3b2pCZEZCdkR0ZWIKd25TNkVPM1R3SkUrbHZVcGVhUUxNVDBUREd2L25IOTNrWC9TVytURUJkU2lOMGh4ci9wRS85UUxyLzE0WFgxbDkwV1FuM2hkL0tIMwpkZkFrZ0pFRFFHcmZmeFZBTWdrVFZvQWtMSjZBeHVTeC84RGUrellyY1RvbmN5RXpZVDRuM1FWQTQrcEFqbzRZSGdBZ1p5YlZ6d1FBCk9mVURBY1NOWGNUTjkrVEZiWkdIRWdEYUJ6Y2lDdjlWQUdsa1lyVmM3QTRnNm1RQStoTW5jQ1VIVHZZc0c5WFBZZzdVRHdpZ3oxaHcKL1N4Z1JvTjRFTlBSazJWTVBLNXhiWDRSNTc4V0lFbnoyQW1BUGhNeWt4b0hNb3NHYkpRMGg1RThsNWt5ajVYcURHQVErRzFZdzQ3NApINmJhbTA0aU1lQkplRjgralFEUW1JSHdkLzBRSDErdUQ4NGdraTlDcHZCcExBR1RKNlFMaFF5eEdHWVVRRXo4Z1dNUEVGdEs0OGw4CnVMTGRESWtmUit6ankwZCt6VHU4bXBjSzFMSWMwaWQ3TVRkbkNTOFhQQUFNY3FmUGl3RUUzbDJCRkt4QThoYnpjNWNJY2o0U0pGREYKQnc0cUdJNFdXSURna0FhV2YvQlRZREFIaWMxQWdZTERBWkJIKzlWSWtKTGhMeVh2RktvKzVGNWN5Q3RaeEM5YnhzMVlpcVNDN3d3QQpyUmJ3OHNHdjdSMU80dWVNNDE0VUtVS2hJM1FtZzgzbk1VVU1Qd2FYeWpoNTlGaE9RWEgrelFlQVFWRTNPL0xxVzNOdk51WFVOWUJrCjF6Zm0zR3JLdWRXY1BUb2M3ZG9JbXhEWHZ0aUxUb2M5N0oyUTBrZDlJRlBCeUowNDduSEZqZnRIM1grTXE0UktHdnRLbS9xSnVOUEgKT2Y1YzN2R01pT3NNVUZuWE01ZU1iYWt1N1J3WVM5dEFXZnRnZVdkZldVZDNlWHQzWlVkUGRXdDNkVk5uVVVkUFFVc25lTEswdFRraQpKMVdnRnBCcFcrVVNrb2p2eHhQNmNQbmJtY2p1TFR6bEorTG9qZkxDVGZqRUQ3NHhyL1FkZkFCb3M2cDhzd3Blb2JCV1VqSjVYQmIwCmpZdTBlSjJzOHVlaWpDK1o0VHVwZEcrR2x3OXJKNFd4alVMYlFRRElqK3FJTnk2aFhjemRJZ0hsZ0FJNXFoQ2NWdmxmREE0NUU2dysKczBlVklwTTJuamxuakVuQjBvdXh5bnI3L2Nkb2M2dWxxYzNlMWczWE4zZjB3blQxT1RwY2NLL1BBRkNSSXgxNHc2c2Qwc2ZlM0dacgpnajB2KzVORzdHRUR2dWo1UG5IVEJYSGd5MTVhalJWVndjNFhyUDBVd2JiWDZIM3ZVRDl4S2JEekZaMkVYUjhiZk1hUGZVSDkyT0RjCnp3V1lFK2V4STFBL1dQaEorOTdqOXJCaldOZ1JlOGdoYThoQmMxQzRLWEMvUWJOUHA5NHo0aDg2ck5yelRBV0xRUDJLNEQ1NVVJOGkKcUZzSjB5TVBhMWFGL29ZZnQ0aGZzVlp3MTFOYXNsSllzRUZTN2FTUHEzN3c1WWVqK25HNzlIVFNiRlJVZ1pmbkQrU2x2K2RIZnMzaAplek8zK3pKMmVDUGI0Vm9tWkxkei95SFVEOStYd2ZNQkFISVVnWGgrTks0ZjNJWElndms3d3Z0U2NtV05KSCt4dXU1ZFh2SFJxUHNZCmtJOGRudTF5TnJuTVppc3gxZ09lSDUzK2NSbjN3Y1hqbklDMkVpZS9iS2daRHo0aFpJY0Ewc0ZkaU5hbmRyVFBadW14V2xwdDVoYlUKM0dpMU5OaHNqekhiUTh4NngyNithVFhkdEJ0dW9DTTE2SEMxN1htMS9XbVZ2Yi9NMWxOc2FTK3d0aGVnemJuV2hpejBZWWJ0WHBydApab0s1TWtyM0IrbU4rYXlNUmZLaStiSzhhYktzcGNxaUZkenNaYkxpVlpLeGdDOCtrZFd5aWJmRUU4ZkJRSnkxSDllNDlzTGNVanhwCk5nYVVyRmZEMzgzUHhSZHBjcFpLNmgwZ1pmcHJhUHVrM25JNTU5MGo0UjRYb3Q3T3F6NmpOVFlPNnhyc2xrNnRvVXRuN05ERGRCcUEKZm94RVdrejZacU91U2E5L3JEYzgwQnZ2NkkwM0RQcEt2VDVYYjhqVzY5TjB1a1M5UGxadnVHNHdYdFliTCtvTmU2ekRGN1NXNDhQbwppUkhzbU40YU5ESWMrbHlyR2pFcURVTzhaNFBja1dkOC9ZQkkzLy9ua2h0dkNDSmVvK1M4NGd1Z2MvWDFYWmRlOWJyOC9WMlh2N2ZyCjhvKzlJMyswNC9KclhoZGU5NHQrMVRkbU0vTUlXNFlFQnRBMWdmeDkvb3hKM1JPaTRvU3BrQkIvTGc0Z25rcUpLR1JzaVlRcEZETUYKWXJaRVJLRklxQjh5anM0bUo4OWt4ZU92eFFuejJKa2c4emtnNlF1NGFRdDVxWXY0TUFTRzNEMjBmSW9zNDZjVFdjcExjdzM0eEpYYwp4RlZJL0JmU002cEE0ZUVndjcxQjdBTmhrb01oWXBCRElUTFhGaGdlS0tHRG9SQkF4QzdFVURYY2hhaFNpUDNsOEJTWVZNSVhpcmhjCkhvdkRaU0k4RmpBUGc4c2lJeHcvRG9QRW9aQVErbllPKy85WTNMWE1xT1dzT0xpS21aY0NBY1NPWHNpT240OGtMMkxIZ3l4a3hSRloKd0l3bDRrRk1SMDhXVi9Ra3VpUjVLYXo2SkJKM25TNUdrb0YrNWpEaVo1QmpuQmt2b2ZpWjFBU0NRVTREeldlbkxXYURUMHpEQWFSeApBUkQxdXdhUUx3RWdyb2dBME1FSkFBSjVNWUNteWdKKzFsSUU0Q2wzb1NCN29TanI1NEo0WDBuNFhpVjlBb0NPd0NWQVl3QTZvdUU3CkFSVHN6d1FBMmlWVWZzUzd1SUJYQ0FHRVpCRUFXc1RMQlFBQ3Y3WjFuSVRmTTA3c3BzaFlGQWFId2FTemVDdzZYOEFSaXRtY1FMbjAKektuVENlbTVPVGNlWmQxcFM2aDluRjdmbkh1N0phK3VLYWUyQVdMb2Rrdm0zUmJYbzJHVEdzajFiRHpNdlM0aUV5dERVekRvSll0RApVOEhvV3dFMEZZTUFnSndHR2xjQmNqdi81UTZnOFFhYVREK2RBK1VkNEhQN1MxcDd5enA2SzdyNlMxcTZRR3A2bnVaMmRCVzF0RmMzCk5TZG1aL2tIeUJBZVNTeW4wN2c3UkR3eVQrakg1ZTlrSXQ1YnVQNmZpR0kzeW9vM3lVc0lBTDJyS0FFQTJxZ3NCZ0RhNUE5ZldTZTYKWnpRVDNUUDZPdTBDb0gwN2FUUnY1cTZwQU9STCtjYUh2SFVuYmFlQVJ3cFhJc2VVd2xOcS96UEJRYWNDL2MrR0tpcENRbnN2WFVNVApNN0djY3F6Mk5yeWlxN2tOYldxM3RYWUJBMkh0UFdNTTZvQ1ZIcmpYWnpURU9TOWJheWM4TTQ5UC9BRDkyQjgrQWZxeDM3NW5xNzlqCnUrSFFEd3B2ZXErRW5hK2NFbnRtb1QyOXdIbmluWmg2aGlmZW94SWRPdyt2eG96cTV6cDI5cW9Oci8zWWo1K0R3V3MvOW9PbnNIMG4KYkh1TzJVS1BZcUdIMGRCRGx1QURCSUQwQVhzSkFBSDlPQUVFOUVNQXFNYy8rRmxBNkNQLzBCT0treXQ1Slo2U21uZjRSZThJTXoxRgpZMS9ZOGVVZmgzNytEUUQ5VmhENUQyUU1RSTdiNExsZUxqdWdZWEQ5akFFSWJqN0RBYlNESy9ndE4zS0RvbllCa2lHKy9tUVlYbWRoCk1lTHVBZitZVENhZGJnUmZlV2dGYjYxVzgxUUFjcjRMQVRScUlCQUlJNHZOYWtBdG8vMHZvQjlyRjJwdHM2TXRkZ2lnUjFiemZhdmwKbmcwQUNMMkxHZXRzaGh0MkFrQkRWYmJCU2x0ZktRb0ExRkdJdGhXaUxYbm80MnowVVNaNlA5MStPOVYySThGME5RTDlhMUROTEc2TQpwekQxUTM3MldtSFdhbVhCS240MmZqQythQUtBb0lFbU93NEdqOFNQYjRHOWhJRW0wb2ZJZW1YQld2OHk4RHY0UitsbGhwSVRJUGNGCkFGS29LWHVENk9vQTdtNko0dGVYWThLZTZtOW9MZTJvOVpIUjdLb2ZrQTZqdzBCT0FEV01BcWhXWnhnRmtJRUFVSXhoREVCSHJJYWoKei9XSFRGYi80V2ZobUdVdlpwQS9HMURxVEpMaGZ0SHdrRml2NDJvSEJOcGUvdFBuZjBpKy96M1MxUi81WG4zVkorTDFuVmQrdHZQeQpUMzJ1ZSt5ODlPUGRWMysyNjlvYlBwZmVJTVVRQU9KSVh3cEFvU29lQUZDZ2t1dXY0QkFBRWtsWUJJQklZZ29BMEN4UzB0dk11Rm4wCmxObk0rRG5NOUxtc2pMbXNkUEFxUEI5SlhjQk5BVm5JU3lFV0Z4TnhsWkFUT2hNeUpwN3g2NDdCSjY3Z0pLM2tKUHhCZkVhcGhnRGEKRTRTRWgwTDkvSmNBdElNTkFiU0dFYkdNR2J1UW5iUUFTWUt0TG1ia2ZHYnNQRTZTVXp3Zzh4a3hJUFBvMFNBZTdqVWUxMHFQTTQ2ZQpGNTRsU09JaUR1eDhFZE0vZ0pPemFMRnZrYUtkY2NYUVc2VFlHZVE0SjRPY3BhREZ6Q1R3cGZka1gvK0NFZWpGb1BneHZXRjdpL2NkCkFvak1obWZCZkxsU2J3ZUFCT3hmOC9jQkFLM2lwZ0VBTGVWbXZReUFSbSt3bjlnZ215c0VmempnSlBVaVVjWmljZVlIb2pndmFYaXcKUDZ3QXdSWVlEaUNpQmZZQ0FLbGtGQitoOUdQZTJVWGMvSVc4VWdDZ0pVZzZyQUJ4YzRHQndOdTFuSlRmTU05K1ExWFNxU3dDUUhRRwpnckM1UWhaREkrWWZDdFdjUDNVOE9TV2p1T0pHL08ybWhKc055YlZQc204MDVkWEJnZWlNV3kzcGQ4Wk5CVTNvZ2preDVEUVF6TjFPCkVDZURuSm15SVBUU0RiSkpBZVRFamZ2ejdwa0tRT01NTkFvZ0dCeEFqaUhvOFFCeU1kQWsraUZTMFRsWTJ0WUhEQVFlRkxmMzViUjAKNWJiMzVIZDBWclcyeGlZbjdsWEpnOFZzT1o5TVorOWtLU2hDUG9VSEx6M2R4VVI4dG5BMW40aml3WXZvSmpuOEszaDBES2hvazM4SgpBQkR3MEFacG1UdDlKZ1dRODBWNm5iVFVBU0RXbnAwMHlpaUFkaEFBY2pXUUEwQ2tiVHpFYjYrQ0F3QjBYT04vSWtoelFpTy9FcXhzCk9YVENFQmtQOXk4WFYyTDFkMjBQSHNQSjVjWldXM01IaUwybEUvYkMycnVkZ1RkYXdIUTZ1bDNOcmRhbUZoRHNjU1AycUlHWStMSGYKdWd2dnVLaSthYTI0Z1I5M3J5S091OE9ydmpJZEY1M2FraktjblM5aTN3OGFFZStzL1JBYm4xM21maTdZanB3aDVuNkFmdXo3b1g3UQprQ1BXNEhINk1XajJBUUJwVldFRWdKNzZodzdnQU9wVndnRDlnQXhwZ2h2VmdiMEJ3VnZFU2ZPbHBSL3ljemNLMGxlSkNpZDhlYWNDCmtOTkE3dlFaQlZBbGVCbCtYMXIybVNENkswVGd4ZHJ1eDl3SkFFVDB2eVlBQ0xxSDd6MEJRQlEyR1dRSHd2MlVuZURKS2ZVNmQ3TloKQ3dkNzdKaldCUDdYaGxsTVZ0ajJBbzlnd0dPejNXYjZWZ0NOR1FnUGFnRS9qODJxUTYzRHFQV3AzZHB2QS9veGQxZ3NUVlpMRTJxRgpXeEJSWWd1aTViYk5jZ3VXZjdTMXRwRWErMUExK3F6U1BsQ0JBZ0IxbGFBZHhiYjJJbHR6Z2UxSmp2VmhGdm9neTM0L0U3dWJqclZrCllsY2puMzJtU3RuSXVQb2xMZkY5VnRJU1dkWnFvUU5BVGdPTk1jaHRFb2lJc3dVMmdVRnU3dm1XckZQa3IxR1dndDlIQUNDbVArSUUKa0NLWUdxSmloVXFsMXlxcTdtRDJYb09odzJob01OZ202TWNKb0RhanZsVnZhTkliSCt0TkQvU21lcjJwV20rbzBCcHlESVlzdlNGVgpaMGd3NkdQMHBnaUQ4WklCcmdLNnFyV0UyazM4OXNhbExOYjdnVXBoL3lNRlp0UU1HV1REQXhMdHNFaXJGeGlIV2NPZENvdUIwNlAzClBKWGw0WFh1aDlzdnZMWWo0cFV0bDE3ZEhmbURIWmRlMlhYNWRhOXIwL3l1VGFQRXZlWVgrd0hyQ0UvR0NWSlRBalM4Znc5QUlqRUUKME0vcFIyYjZKVTVueE15Z0pNNmt4ODVtcElITVlZS2t6R1dsenVPa3pFZVM1K1ByYkVDSUJwbXpSMGJjNXZtQ09IZmNPQVA4QkFDMApuSjM0bWZDTU5FQjBJSkFVRnNnSkQvN09La0FjWkJJQWZjWGtybVpjV1VJSDZFbVl4MHFFbFI3RzlibjA2RG1zaFBuMHVIbTBXQ0p6CnFURkU1bENpUGNaWGQ4WlZlaWJWRHdRUUJ3NzlBUHFBQUdyTnBnUGZSRS8zaTNMR0ZVUFQvV0pBWEJsRWRNUVcwaFBBbDM0bDg5cm4Kak9EZERCcHNoSE5JZmp6SEhxRC9IRUJpQ1JtUlFBRHhKVDRNQ1prcjh2SVQwSC9OMytNT0lQRGdYd1VRYkljSk04RDNOK3Q1V2F0RgpjRUwrSTFHOGorUmdrSXJwbUFGeUE5Q2hJSUVyZ01MaDhuS21XazRsaS9pZjhrNkNYOFpDWHNrU0pCTUhFS0JQL2tJdXJBT3Q0cVQ5CmtubnhIOVFBS29VRCtNTUVBR0x4cUZSNDRlTitwZWpjdnNBemV3S3VIVCtVRVJXUlhIMC81Y2JqbEp1TnlYVU55VGVhMHV1YnMrcGIKTW04MFRUVWM3VjRRZWpHQUp1Mkx3VXd4TU9ST24yK1YwTXRrQW9EY0RWVGFBa01BQ040cE5tcWdrbzVCSW00U0dvZWVrbzUrSXNYdApQZUJ0ZVFmc2hSVzI5aFcyOWVlMzl3SUFsVDErRXAyYXNpOUVIU3FtSDVBejFRSS9EdUtGeUJsQ0hvMG5vQ0I4THliSGJ3c1M5SWt3CkFiOUpDdVlkT2R4b2g1ZC9TZ0dBZ0lmV2lTZTZaMUlBT1YrZVhRQ1U5aVVyYkNlTjVNM2M0UUFRWXllWjdqQ1FnMEhrYjN4SlczZjcKYkdlemZjSVViQUNnWXdIeXcwSCtaelhLMUpDQWtlTVhzYWhrZUJTcnJNcDIrNDcxM2tQMEVhQk1FMXhkQ05MVUFjOXo0WUhIMmxzZwplaHhwYWtjYlcyeFBtdUc0enhPaTV3Vk5tS2xNQUFDQUFFbEVRVlRwWTYrN2JhdXB0MWRDK2xoTHF1eEY1V2hCS1pwYmJNOHFzbVVRCmk1NnpVWUkrTHZweEZINnV3QlB2aEg1c3B5OEQvZUNYWFp4RGp6cm9ZenR3Y3B4K2doejZNZUwwSWNvL3c2clE1LzRoUUQrdUFBTDAKNlZXRjlLaEMrbFNCM1lIK1JyVW1UbjF5aFRqM1hVa2VuSUNXT0lhZ1h3Q2dDUVp5cDg5b0lJQTJ5OHArSTR6OU8vaGJoclVEWHV5RApmRE5wQmNnSklMWVFYcEhyQ3FBdFROYXZhUkYvOGkrdDZZYUxEdTJXWjJicmN5c0t6ZFBSMm5laitsWkhXN2NkeFd4V0ZMVUFBOEZ6Cjc1TUN5TUVkMU81WUNPUWNDVExDNlIrZ0g4c3pGQjJ3VzN2dDhQQlhPMnBwc0lKQS9lRDNZSmp2Mk0zMU5tT2RGZGVQby93RDlOTmYKWnVzdWhRRUFhaTJHQUdySXR6M0t0VDNNc2QzUHdlNWwyeHVTYlk5eXNQTlgyLzR1alArRjMrV05TTkp5U1RaY0ZTc3FCSmxnSU1nZwp0MVB4N3ZOQWNDUm9kRUdpZTAxb0Fvd21QRTlVZ01CM0dwK0xMOUlWYkxYTUJ3QklHVUNWK01QL1UxeE91SFpuZU9DT2NhalJNdEw3ClhOdG9RaWZvQjZRTjZNZGdiREVhbXcyR0JyM2hrYzU0VjIrczB4c3JkY1lTblQ3YllFelg2NVAxaGxpOUlWSnZ2R0l3WFRDWXp1b04KRndZTmV6SDdiNDRkZTJYRzR1a0xscTNoa3NXQU96cTlRdnRVcWh2aERRMkxESHFPdGhjWVNHZ1k5bTV1ZjBzUzViSGxLQURRVDc2KwovTW8zVjM2MDQrS3JYcGVuZVVWTUoxK2ZUb1ZuNHo5a0hSYkkyQTRBcWRsVEFXaVBtZ3NBRk9TUGFCU0lVZzRub0VjQmhJakVORDhSCitRUHEwUmsrOFcvU29xYVQ0dCtpeE15a3BjeWtKY05xRUNNVnZCQkRCckdUUVlpMU5TQVRKRVFzTkhiUG1IandiWC9PZ0E4dDVTUXYKWVNkOUtqd25Va3ZDZ3loaGdjaC9BMEFrTm9QQ2RnWFFwY1gwYTNQcGNYTVlpUUE5ODJtUmMyaFJzeGh4cnVnQm1VMk9JdUt4bEpzdwphYVlFRUpKQ0FJaTQ5eFJRYXlZVitDWjZtbStrTTY0WUlnRGt5aUJDUWd1cHNUTnBpY3ZvMXo1akJPMmdNd2dBa2JqZkhZQ2tmamlBCjRFbDRwcGdBRU8wMy9CQlBiZ29BRUp5MmNRSFFVbTZHTzMyY0FKcEFIeUxnbTV1TnZMd1B1VGtmQ0xJM0NiSSs0eWVSUkVlQzVWd0MKUUFmVWZDZUFqZ1ZCQTdrRENId2pBZ0RFbExCL3h6MENmZzBMdU1VQVFBdVJET0NlUlVqZUlpUjdJWkszakFNUGd2MlZHdUpINVRQcApIQ2FMQzd0Z0xPQWdTcGlNZTNHUC85VjlxdWdEZ2JHSGdpT3ZKMlFWMStUZmEweTQ5ZVI2ellQa200MTU5YTM1Vlk3aGFDZURuS1dnCnFmcGlVOUhIUFJNQU5DbUQzRE1WZzl5Rk5OV1BKRkxjQU9QT0lBSkFoSUZLaVh0Vnh3UElqVUVUNlVPa3RMTXZ2N21ydUIwOFA1amIKMkZYVTNGM1IwVlBVM0JvZkczZGdUM0NZV2hpdVFkUkNieWx2dDF4QzQzSkpBRUJjQVEzaCs5QVJ2Nis1UVIrTGtrYXYwaHdIb0UzZwpMMlZaeVZwUnNUdDl2ZzFBWlRpQVVyOWtoZXlrKzQ0Q0NBWUFpRVJ6QUloTTNrWWlmZVBydThYYlp3ZVQ3UjBrWndJQUhWWExEZ2NwCklvSlVOV0Y3YkNldllaRkp0b3djVzBVMUFKRGx6bDA3b015RFJuaDgvVWtMWE4vYzJPb2E0QjdIK1haNHhMMFJ0c3p1UDdiZGU0VFYKajlISFhsNUxuSFVuTnYxZ09ZWDJ6SHo4dUh1Mjg1b0xZdVI1d3JaRFl1cVpxUDNZVGwyQ3QzM2hiUy8wOEdrcy9Eak12bU8yUFVmUQpVRGowQTQ5OUJjTENENkVmUUIvWS9GS0hBUUFOS1lNSGxTRURlUHI4UXdCOVlOU2hJRDMrbXY3QW9FNTFXSDlnNkM1WnpFeFp5UnBSCnhYckpKRi9rU1lhZ1J3RUVza2xlTmxYQXErOG1lY1dud29TL2NTVzdXYnNBZ0h5NTJ5YWRBY0xqcUFBQkFORjVKR2NMN0dzZS8wKzAKNHdsbFQvRmJMWFRFc3VmNjB2b2QvNlI0THRtNGF2RzdDMmV2M0xYVnI2N3lMb1ppcUdIS0dTRGl1THNWQnhCNHhnYm9ZOGFqdzRqbQpsMlhRaHZaaGFCZG1iYk5iV20zMlJwdjFzY1gwd0d5OGF6YmRSVTIzYmNaYkVFQkFQeUJEMWVqVENtdC91YlduREFYNjZTcEIyMHB3CkFCV2hqUVhvNHp6MGZpNTZMeHU5bTRQZXprSWZabU9OV2RqWlV3MGZDR0ptQ1JOWCtWZUF2OU1JQUUzQ29DbVdBNjJURnhHWklDRjMKK3JqSHRYcEVWSUFJQURsbmdBQ0FWRXJ5MGRNSGMvdGFiZ0R2V1UwUDlmcW5CbXVqUVQrcGZtRHR4MmhxTkJpQmZ1N3JqSGo1eDFTcQpNeFhvREJrR1E2b2U5citpOWZycmVQbm5uTUY0V3FjL1pMQWNzWmcva3lnWExWcTdadG1hSDg2YTg4WGhRMExNTE5NK2srbTEvS0ZoCjd2QnpvZWs1VjkrTDZMb0Zwb0UvcE4zNUFlbkVLOXN1dmZaTjVJKzNYbjVsOThYWHZLK0ExOUFaMU9pM2FBblR5ZEcvWWg4VXkxbkIKS3RLL0J5Q2VHQkdLcUg0aTZudlVJOU44RWw0blI3M3VGenVORlBVMk5Ra0VHR2lVUWNrRWc1eER1dlBaYVNBTE9PbWpnUjc2MWpqOQpCSTk3QXlFd0UzL0p2OER6bCswTG91OEo0bjYzQUdKeVdaUlJBSkU1b3dCaW5sOU12enFIRmdzWE10UGk1bEdqWmxNalo5SmpDZmM0CjZUT0xGRW5FWXdtU09HbVd3cFhOWXdIb0liS1luYlFZcDg4Q1ZpTFFEL2czelNBRDNFUzVBbWc4Z3h6Nm1lWWI3UXg0ZHg0cGFnWWwKZmhIdDZxZjA0TzEwbGc4THlvWnd6M2NHSUNsVktBRUE4bU9LS1R3aEFCRGxOd0xOVkFCeVZub214SjFFUk5ZSnNqOUE4ajVoNTN6TQp6UVlNK2dNM2hTdzhFU3dUVFFvZ0VIY0FoYXJaQVFvYVYwejduQmUrRkVtZHp5MVl6TWtBQUlLMUh4eEE0Smtsbkp5TnpLZ3ZhZnU4CnFFSTZqYzFrSUF3bUYyRnpCVXg2a0pCOUxrUWVkU0FnN3BBbUpsd1ZlZkJnd3BWcmFYbUZhWFYza200L1NibjVKS3YyU1VGdFkrYk4KWmhEMzAySHVESG94Z0tiMDBJTk9rQWtNK2xZSnVmdm1aZUlPSUhjRGxUU1BHWWdBRUJGQUdVSXpiaG5uSHJ6MjB3ZFMwZFZmMk42YgoxOWFYMDlKVDBOSmQxOVZYZnZkZVpGTGlNYlhxU0tBaVBGQWNFc0JXeU1rQy9tNEIxMGNtb1BMNU5LNFFWb0JHQVpTd1lmUzFrd0FRCjN2OHEzYWdzWFM4dGZoa0F1ZXBuSElEWVFUdnAzdDdNN2E0QUFxSFFkbENwTzZqa2JXUy9yU1FBSUsvdEZOWnV0WXgrVEM0NHBwYUMKWDNOS3NLWnIveEhzMUhVc0t0bVdsV3Vyck1SdTNyYlYzOEh1UHJJRDBBQURnVHhzZ2dFWUFublVOQmJ3SWVDa3U0K3cydzhCZmJDYgpkK3cxTjRtcUR4eDJMcTdBQ3VIOXBzN1RYbzU1NStSTUxERURpMCsxeDBINllGSGo5T01jK3NGRzkvMFEraUZxUDRBKzJONmpkbHcvCnhNb2ZFTGoyY0xUdEJUdGZ1SDZlKzRjQUFQVXJZSUIrQ0FEMTRmcnBDd2pyMHdTMmE4S2JnL2ZvQW9JU2c0N1BreFM4SXk3ekZGYTYKZjUyZEFKclVRTzd1SWJKWlZnWmVlamZKS2o4Ukp2MlZLOXZKaGdEeVE3Wk9DaUFHanhnQWNyVEFBSUNJSVdnL2h1OVhWRmJBL2hpNwpEYk1abm1Gd3N6TjIrdWpsT1QrYUMrakRKQWtQaHAzaVVDVWZiZjd0bW1XYkM3T3FnSTVlQkNCaTVRK3VIN3NaYWdsbUdMTSt0d1A5CndLUHYrRDN3S0hIOUJYSDAvUUVLWXIySG1lL1k5VGV0STdVV29KL25OYlpubGVoQWhRV09QNWZCL2xkbmliMjFGT3FucWREYVdHUjcKVkdCOWtHZTltMnUrbTJPOVU0aFY1MXRiczdESGFSanR4TzFYQmJGdmkvTFhDR3VYQ3d0QUpoZ0lNc2p0ZE5nRUFFMHdrQ3R1eGtWZQo2c3g2V1lremEyUzVxeFVsNExmeUM4a2xvZ0trbGpBVWFvb21rSjkwOThaZEMzWVh4ZHJOV084enROV0VkcGkwUk1OcmduNUFuZ0Q5CkdFejNkWWJiT3NNTnZiSE1ZTXducG44TStpU2RQbDVudUs3VFhkT2J6dXNOWi9TR0V6ckRJWVBwc05YOHA4dm5makovNmVyMTc3NjEKYk5tTVgvM1d0K2VKd3FpVDZrYkVXcTFnWkZpc0h4YWJoeEJkRHdBUTBqY3lQL0M2eDlmSFg5MFc4ZE1kVjM3bWMvbFYzNnZnbFhFNgp6UUdnVHprSHBRcEdxTm9QQUdpUGV1SW02Rzl0Z1FFQUNVUlVieEZsTStYd205N3hQeU5IdnVZVCs3cGY1RnZrQkNJektJbXVFcG9ECkpJU1BxUkJ4OFpCRE5sUEZlUlc2Yy9ITklrYmlQSHJ5Kzl3TEhILzUzaUJtYUJCL2Y5QjNOZ09FdUFGb0Y1djlEd2JYazNGbUVlM1MKYkdyTVRHckNYR3I4WEVyMExNcjFHWUJCNU9oWnBDZ2lNLzBpaWJ6dGUzMUtBTGx5eHpVTG1RbUFkVTc5ekNRQjJVUys2WE9kaUR1RApYTjBEOHFaUEZKSFpQbGNCZythVEwzMU1EZDVLWjMvbkFKSktmTGtTQ0NDQkdBZVFhTGVma1BRYlFZQXJnQUF5dmhWQUU3S0ltMG5FCms1dTFtWlg3TVRQN0kxYkdCNXpzMzNKU3ZmbW4xVEtaRTBBSEEzRHh2QkJBR2lVZC9Bci95TnU3REVrQjNGbkl5WElDQ0R5ZWgrUXYKNE9TdVo4WjhRVHU0aXlLaDB6aE1KcHRCUnhBR1I4Qmdoa2o1WjBMVlYvYXJvZzlxWWc5cmtnNW9vc0pEb3MrZVRVdkx5Nm00azFiegpNS24yUWNyTnh4bDFUU0NFZ1Z6YllWUE5CaEV0TUdmY1BUUlJRamlBM0Eza2pwN3Z4RUNsb3d4eUFzaHBJQ2VBbkFZcWFSMHpFQUdnCnlRdzBpWDVBeXR2N2l6c0dzOXQ3TTF1N0M5czZpbS9mam91S1BCVGdmMElsUHF3U0h0Q0lRZ1A0Y2lsZElDVHhCWDd3TFovQ0ZaSTUKQWdBZ242KzVtby9GOFJ2azhJNTNWd0NCZ0FmckpFWGZDcUFKK29FQWtsUkFBSW1UdjJScmR0Szl2Rm5mUUFEUmQ1TkdEVVFBaUViWgpUdkhkU3ZiWnNudlhObC9HRG9XVWVrTE9PNkdVSE5mSTg0SUMwZjJuc0hQWHNkZ1VORE1ITFN1M1Y5WmcxZlhZclFlMlcvZXhPdy9oCk5NODlIRU40amNlUnV3OWhxK3YyQTZ6K1BseHNXSE1McXdMMHFiT1gxOXJ4U1dlVXVOc0xYL05qejh6SFVyT0pvMTV3eVdGQ21tUFAKSWQ3MndpSmc1d3ZvQjcwWTZUcjBnNTEwSEhjZlhmWnowcjRmbnZiQ1F2SGo3dmk2WjNQQVBoQ0xHcDc1SW9aK0FIMmMraGxVQmhFQQo2bFhpQmlMb2c2YzNKTEFqOEdCdjRKNytJRTNEM2xBdlJkeHFVZEZLVWRXa2xUWW5nSndHZWdrQTRZMFllZVhIb3BRLzgrUTdXVjRFCmdJQiszQUVFNG5vS2pNRW4wN2hrRXRQUGgrWk5ZWWphR3JXWUdUT2J0SmdOTzdibnpLc2ViOUIzaUpvZk5tTVd2QjVreFJydnRYMzEKNWJiUFAvbExaOFBnVkFBeXV3QUlGbjRNc1BaajFXS1dJWnQ1MEdicVE4M2RLR3grQWYwMDJzMVBnSHNnZ0d3UDhRWFFkK3lHZWhRQQpTRmVIRHRmQzZaL0JjZ3RSL3VrcHMzZVd3Z0dndGpJNzBFOURvZVZ4a2VWeElmcWd3SEl2ejNJbnozSTczMUpmWXJtZmJXalB4NUxUCmpGK0Vsci9OU3ZhVVZCTUFjbVdRdzBDU0FoRDNFL0pyRkJNREw1TlJ1cm5IQlVCTzlNQ0RBbmpXU29vOEpkbXJaRVhyeENWRUN5eEEKN3F1UnNmdzF0TVB4Rnlzc3BydEdyTTFrN3g3Vzl3eGJIdXFOdlNhOTg5aVhVejh0T24yVFh2L1FZTHBuTUFMOTFPbU41WHBqb2Q0SQpSMy8wdW1TOUlVR25pOUhwaVl2QXp1b05KL1g2WTFyOXNhZkQ0Umo2UDVYWnI2OStkK21xdFRNMmIzaHQwZXJmeGx4V1dhMmlrUkdKCmJnUXdTRGc4QkNJWUdaSVl0QkxMODg4emFuN29jK3JIV3krLzZuWDFOZksxMThnUjB5Z0oweWd4MDZueGI1RWlQME1PeUJWTUFDQTEKRUk5cXlnclExQURpQ2tRMEhFQkhYUUFVL2FadkxNZzB2empZRVlNU1NweEJTUUtaUlUwbU1wdVdBaktIbnVvSUsyblNFR3R1UU9ZdwpFbDB6bDVZd241NDRrNUswa1gyZUlaZUhCYkpDZzRUN0FrWC9EUUJSV1dNQVdrVS91WUJ5WVNZNWFnWXBZVFk1ZGpZcDhtM1M5ZW5rCjYwN3hnTXp3aVhER1l6RW5ZZElzWWlWT0NFNGY4RjhWdjRDUkFBQTBqeEUvaXh6N2xrL2tHOTRScjN0ZG13cEFCSGNtQU9nTjc4aloKM2xmQWc3bWt5NytraEd5aHM3M1pGQ0FiOG44RlFHUzJDQUtJTEFBQVVrMEFFTWlMQWVRVUR3alV5V2lXY2pMWE03SitUcy80T1ROagpNenZ6VTA3YURzRVptVnc1QVVDSDhWdkFYZ0Fnc2RUM2YzaGh5NUFrQWtCd1JSVTNad2tIQW1ndWtnOE10STRaOXpudDhBNnFoRWFICkFHTFNFRDZURHdBVUtPUWREMUplM0tlT1BCd1VmU1FvT1Z5Y2NrQ2RjT2hBM01sTFNYRTVtZVd3RG5TdC9yNFRRRTREdVFMSWZUQ0kKdUVERG1XLzFrQk5BN2dhYU5QK3FnYWI2WVVWUGVpWXRBaEVBSWd3MEtZRGNERFNKZmtCS1ducnltbnZTVzN0eWU1L21QRzQ0ZHozaQpnRXB4UWFVNHBoRWNENVljOUJjRWlkbEtFVk1ncE1EWE02bnZLSUIyUVFEeDFMK0VBQ3AxQXVoZEJkUVB5QVlaSEVCNUFZRGM2VU84Ck1Mc0FLR0FuWTllTEFVVHkvbnJuanEyNzZUdmtFc29KS2ZlVUFxNENLZ3NLeHZhZnNaKy9ibzlMTVdkbVd3cUxiU1VWOXBJYXJQYXUKcGU0T01CQUlnQTRJZXNjUkszaGJmdyt0dTJ1dnUydXJxWWYwS2I4QlBnWFF4NmtmWXR5SDZIblowbkpoMVljNDZvVVhmaHo2aWNMbgpuZkZiVG9tUlovVHNOWGphQzllUC9jUkYyOUh6TGlQUHg5QzlSN0RnUS9hZ2c3WkF1TzBRdU1lczJndGk4b2R0THdKQWdENUVudnBECkFQWEpvWUhnK0ROZS9pSDAwNk1KYXd2VERBYnVmYVlLNjk2cmJONFhuS2c1dllCWENGNllYZGNOZkNjQStxVW81VTg4SlFBUWliVUwKQUdpcUlXaU9DSzRDZ2hoeUFaQTMxU3NwSXQzYWh4bWVtUUYxc2pNcVozM3Y3VUMyRXRWam1CMjR4b1NaemRCQUtQYmtUdE9HbFp1UApoNTk3ZVFCQi9ZeGdRRC9HZnF1cHgyTHN0SmpoM21jVTZNZjB5SVkxWU5nVERIMWcwOWViaHFwMHo2c05wdHVZL1NFR0FQU3N5anBRClp1NHJzemdBVkdKdkwwSUJnQnFMckU4S3pCQkF4ZGFIaGRaN2hSYVFoeVhXeHpuNmgwVW04TGkxQkxzU285MG95bjBUU1Y4bXlKOEEKSUFlRGNBQTVEZVRTQ3l0ME54RElSUGVNWm9KK0FIMklySmJtckpRV3JoRVcvVTV3amlwanFtVStRUXFPSm9TVjJQV28wb3pkc0dGTgpBd045aHFkM3pMb09LOVkrTXV3S0lLZCtHblU2b0o4N2V1Tk5uYjVhYnlnekdQTU14alNEUGxHdlRkTHBBWUNpdGJwck92MGxuZUVzClh2NEJBRHBwTUlYcmRkemh6ZzEvMlRKcjN2S2xHOTliTkgzNWhnT0JTZ3NLQUNRZWVRNUhvWitENkNValJ1RnpQV0pxNS9ZTXo1WEcKL25qYnBUZDhyMCtqWDMrVEZ2V2FYNXdyZ0JSS3hoNjFyeHJuemdzQU5Pa3hlRVNNOElWRUJXZ2NnRjczaG5uREp3Wm5VRHpJZEZJQwp5TnZrUkJBQUZ5SmpIbUltVGg1NmdtdG0wZUtKd05zZ3FQRkFJUnRZNTZreVdhaUdIUklvK0c4QWlNS0NBS0t5SFFCYVNUODJuM0oyCmh0LzF0L3ppWi9uRnpmSzdQc012WWhwcFREeHZlVjhqTXQzcktzaEVBQkhINWNmaTBFOFNuaFFRQUtCNU5QRGZGanVMRk9YNjA3M3UKYy9WTm4ydlRmQ1BlOG8wQXlKcnBjMzJ1WDlROFV2UkMzK2g1dmxIZ1hmaXY5SUdaNWczL3hkTkpFVy82WHA3bmUrb0RjdWhYZEI2Wgo0VWRoZWZzaStIMm9DSW5DODNPR3pQVUdjUVVRc1F1Uks2QUJBSWxFZEdpZzBWMklUZ0FKRkJTaGlNb1RlekZsdmt3Umd5Y2lrVVRrCnYzSms3N0RqUE5sSmNQdVRJSE14UHhWV3VUZ1ppN2o1QklaQWxvQndBRUZ5bHVKWndNNXl6WHhXNWp4bUJzaFNTdDRLWmhvdzBJZjAKN0YreDB6OWhwMjdsWEpaS0FJRDQrOVdDOEFEK0FZM2djS0FJeEhrWUhnRG9VQ0QvSUo1OUdtNm9QeXRRUVJmS2ZQL0pDM3FYRVRPZgpXVENYbTd1QW16S2ZrejZIVmJDUW1UbVBVemdYS1ZyR1NQb0Y5ZFEvcUlFMG1wQkhZeU1NSHBPQnNGZ3NmeEgvVktENitwN0E2SEFOCkFGRFVrYUQ0bzVxa1k2ckVvOHFFMDJHSlVWZlM4a3R5NnhyU2J6eEp1ZEdRVXQrV2ZLc3o3VlpYK3EyMjdQckcvUG9HSUNIQ1F3U0EKQ0FrVjNPL0t1OU5LSlA5dUcwakJ2WFpIcG1DUTYwRDBKQk5DNDFQeXNIZkN1Mk5iaGR5STR3UVFTREdlRXZBdVRwOEpjYTBHRlRmQgpGRFgzRnJmMGdaUzA5aGUxd1pTMndYRm1wM3VLT3dhTDJnZEF5bG9IOHB1NzhqcTdjM3U2Y3pvNzhqczZ5OXA2eWhzN1U5cWY1WFQwClZYWjFGTndzdTNqKzhGR041THhHRGdCME5GaDJTQ1VFQUFwUklHSUpsU3YwRTRySUNoR1ZMNlN6eFdTV2NDZUw2N09UcmY0TlB3NjgKaU1JcEJMdzREN3NrOEVicnN2VndTVzZScDdCbzNEVVhMZ3NQM2ZWRHZEQ3ZsOER2ZEg4aGl2NExLMkFYemRlYjRlWE4yZzBZUkdidQp3Z0cwblV6ZEJnTm5nTGFUZkxadjM3V0Y0clV0VU1BSlVRdE95SGtSS3BGVmN4UTljczU2S1JvV1l4TFRzY3hjVzI0aFdsQ01sVlJpCjVUV3dtVlZlaTlYZnMxVFVXS3Bxc1p0M3NhcDZyTGdHSzRib2dUZGFsRlpoeFdYV3ltcExTVG1XVXdZSGZiSmh5UWRmYjVobFQ4NGMKTytkRlhHNGFCUys0d0llZEhlNlpVUGlCN2psK2dXaDc0WmQ4blNhVy9kaENqOXFDRHdQME9OMWpWTzB4K0lmcGxhRWdPdis5SS81NwpocFZoei8zRGhwU2h4TGwzWXZjUFh2NEo2bE1IOXdlRTlHbENlb05naG9MOEgrNExIOUNFZEljZkh0Z2IxTHovMEYvRXNYUEY5Y0E5CndFQUVnMGJwQTc3SVk4MHYxMEFEalM1Rm5KQjNGSERGSlhqd2lURGxiOGdlT0FQRS90cUg3ZU1jZ2diNmNUMEd6eGI3TUJFZk5rSkMKUkZTS3dJZkU4L2FsK2tuNHNtZVBlKzE5S05xTFljK3dUOS81NDVlZi9vMFlCTEtiYlhiVVprV05GcXZlamxsTUJyTUlVZno1OTF0cwozUVo0Smd6RlVJdlZDTS9GVzhEakVjeHVzbUUyTzA2ZkVSdjJ6QTUrTnF3UHczcHNsajRyMm1teHRkck56ZUJkYk9DMkR1dkVzRWZvCjdiSUhCelFudnZtejcyY2YvUG5EdGIvL2NNTWZ2dnJmM2NHS3c2VXBkNGJ2WWJvS2JDUWZHeXkxdFZkckd3cUhCc294dlBrRjg3Z1EKZlZTRTNpK3kzaXV5M1MxRWI1UVlHZ3Jzandxd20yV214NVhHZTNtbWdKT3RiOVBUbDRoSzU0cnk1dk95Vnd2elZ3ank1NG56RnNtTAo0R1hTa2lMM0VGZW1UNWdLY2o4cDVocm5EM0IrSWlHcU5hS3FaWXFjRmNyc1gwb2pHQXBCdUd5YldFZ09MOGdwTWhuTGpLWWFrK20yCjBmVFlhR3d5R3BxTnVsYUQ5cUhaTkdCQTc5c3Q5ekhzTGhRZ0VKTGhpZDUrVS8vOHBsRmJyZGNWNi9UWmVuMnlTUmRqMVYyekRHV00KakVTTURGN1REOFVZZE9lMXovY2JoL2FidFNkMHVtT0R6L1phN0NvTSt5THkrZzlYZWE1ZXNYem02aFUvRnpLVlpyUE1ZQkJydFpCQgpXcTFFcDNNODFobDR6d1kvVFM3MThEN3h0bS9Tak4yeDAzd2ozNkRFdmtWT2ZKTjZEUUtJdjFlbXBBY3BXV29OYTFMOU9LTGlBUUFCCi9RUW91VW81UnlwbGlTUXNBQ0MrZ00yVmtMOFJDVmFUajcvdUZmZUdUK3lidTYvTjhFbWM1aFg5aGxmMDY3dWpRT0FESEVNZzA0QzkKOExMUURDZUdTQWtnczBoSklMUEp5WENaRU1XUnQ4bEFTQ2tnVGpETnBDWTRRb0ZzbWttTlcwNDd0MFd5SnhTOElLcm9ZU0hTOENEaApnV0FSQVNEd0ZnOWNoQWoxRXl3bkZpSGlBSklDQUFYN2k5UnlvVW9tQUFZaTdrUGxDbGdzSHBQTlo3RzVkQVpDcHlFMFFCOFNRdmZqCk1Ielk5TjFzeGtiR3ZsbmVWOTRneGJ4TnZ2UzIzOVhwNU92VC9LN005bzU3eS9jYURMVEhsV2xlRjZmdHVrQmtISUJjNmVOWUdZUlgKZlJZeUUvRWtnOEQ1YWxyc0xFbzBRQmFoR1FnYW4ydHY0RzhCZldiNVJzN3hqUVRvV1VDS1dVeUtYZXdiQXd3MGV4UkFFRW40cDhCagpmdDVYNXZtZWVmLy9MNEEyc0dKWHNCTVhJaG56ZVpsdzJ3R2NWODlZaU0vY09MT1FrNzJZRGJPSU5ibCs1akxTRjFOeWx6RlQxOUV6ClA2RG5mTVRLK0JVejdaK2NTeEtwLzFRQU9oWUVSNEpjQVJTbVlnY3BHV0s1M3haZTRMdU02SG1NL0RuczdQbHdyMUxhYkdiK2ZEcGcKVVA1c2RzRVNldkxQcWFmL1RnbWkwRVFJZlJ5QVRtcFVUZ0JGSDlxVGNEUXMrVmhRNnRHZzVPTjdFczRlUzdvZWtaS1Vtbkc3TStWRwpVMHJWZzZ5YUI3bDFqNEYrMHV1YlUyKzFPd0ZFMUlHSTdoZ3NCWTBIMEppQnBpZ0ZUUndKR2g5M0E3bVRhS3JqOUs3NXR3RUVRZ0NJCmtKQ3pDQVRvVTlqV2o1L3Q2aS9wZVZyWTJaL1QwbFhZM3AzWDFwUGQzSm5UMHBQWjJWZlkxcEZWVlhueHd1bkRHdmtKamZSTWlQSzQKUmc0QWRGZ3RtZ0FndVpBaUVEZ0F4RVlnZ0Q3anhXeVFsZndiQUpxcUJlWUNJQlVFRUhNWEFKQXZjd3hBRkRnSERRSGs1N2NOQW1qbgpWcExYamdBQk84U2ZEd0FVcDVKYWdvN1lqcDFGTDBiRFc3Y1MwckMwYkZ0V3ZqV25BQzBvaFVNOFZmVm9jYVdwdU1JQ29IUGpqckdnClhKOVhpdDE2Z05VLzBsZlZvYlUzQVlEc2VVWGFyQnhUZmpHV1V3NCsxNWFSaDZibm9tbFphSElHbXBodVMwaEQ0MU5zY2Zpdzh4VDYKSVFvL0U5cGU2T0hUTnZ6QWwyMGYxSTgxK0xBMThPQ2sraGxSaGdEOUVBQWk5T01FRUhIMG5RQVEwRTkvWUNnQm9NR2dnSVo5K3dlQwpRcnYyaGZmczM5Tjk1QWhQYzMyeHNJYjRPcnNhYU5TYTQyYUF4Z0w3bUpORlZnNEJKSy80V0pnR0FBUmJZQzRBSXNvL3JnQ2k4M2R4CitINGNMcGt0SUpONFhpVEVoMHFseGx5S05iZHFzUUVNMDJOWEQ4ZSs3akd6dHVnVzN2WkNNWGlZeTRiYVRCYlVhTGZEcStERGc0LzkKNzZkLzc2aHJ0MW94TTRxWkxYWkFJWUFrOE9QaGNYazlhdGVhMFJHTFJXczFhMjNHWVp2MnFmVlpyOEhhaTFxN1VFdWIzZkRRYkxobgpCUHJwdS9WVWc0VE5XN0I2em9MVm5tcy8rdmpUdi83dTh5MGJmLzc1akxtZVAvanA3Q1h6TjlGM0tCL205eit2dzlvTGpVL3luZy9jCndKcHpyWEQ4dWNqNnBOZ0s5UE9nR0wwSEFXUzlXMnk5VTJGNlVtUjdWSWpkcmdUdkRqZVhZM0hadGwrcXl1YlFNK2FKQ2hlSUM1WngKODFZSml3Q0FGc29LVndyemxvc0xYZU0wa05NeFUwbG8wcmpTaDhnS2Zza3lXZllxV2M3SG9pdDBLUzlROEU5VnFPUnE0d05YQUQweQptcDhZOWMwR2FLQUhldU1UazBWMjllSTJmLzhUT1RsMVp0TjlxLzNtc0xIR29LODJtRXUxeHNKaFU1N1drcU8zWm1nTlNjOUhMbHV3Ck0xYnNsQms3b3pXZmZtNDhxVE1mTVpqQ2g3WDdiY1k5SGM4T0dqSCt5TUJLSWZQVldYTTg1aTE0NS94K2hjbEVBSWpRRHdFZzRUQTgKR0MvVmEvK3YvTjRibkd2VGZSTm4reWJNSU1lOFNZMERBSnBPR1FOUXNPSmxBYVNHUTlBVEFiUlZ5UGNrSFh0dGQrenIzakZ2N0xyNgpsbmNDUVIrUTE3eGduQVdoMFpvUTNocnpHd3ZCSUlKRXpzRDVJWExTdUNjcDhZNlFvWWZlcHNRdW81LzdXcnczV01NUEQyRDhod0FTClMzamZDcUROMUwxenZTNU44NDJlNFh0aHB0ZGxnSjVwM3BkbTdZb0M3bm5MNjhyMDNaZW43YnIwNXM3ejAzYzQ0akd4NURPcW53V00KZUpmQXpoZVJXWERxT1dxYWJ3UVF6K3RlVjRpQXg5TjJYNW5oZFExQUI5QUhpQWU0WnlrcGJnVWxZWVZmM0NLZjZEbmUxOEZIZ1h2ZQp3QU0rWmJyUDFUZTlMcy8xT2YwZUtlenZEQjZKK1Y4QkVGL2k3UUNRMkpjazh2c0xSN0tXSGJ1Y25UeWZrem1YbTcwQTBJZVZzb0NkCnVSQXBXQWpmaFIwb2tQa2NCM2RBblBRaDlBUG9BektIbnJhQWtyT1ltYkthbnJHWmx2MGhLLzFqVnNZL2tDc2lxUm9BQ0lRQUVKeUQKL2pZQVNlVytXL2lxall5SWVZeWMyYXdzZUtjc00yMFdJM2NlTFcwV00zc1dLMjhSSS9sOTJzVy9VUGY0MHNRSURaa0tRTEVBUUlmMwpKUi9kazNac1R6S1EwTkU5aWNmMkpCM2ZmemtoTTZQMFJuSDlvOHlxTzhubHR6THFHckx1ZEtUVXR4Rk5NUkRDUUdNRm9kc3RjSnZpCmVBTkJCbzBIa05OQTd1aDVzWUVJN2t3aUlUZjB1QU9JTUpBN2dNWVphQlJBVGdNVnRrSUR3YVBzK0FQNEdFOUJheDlJZHZkQWZ2ZGcKQWY3UmtvN0J2TGErdEphdTlDN3dpVTNKeFVVWHpwdzhGcUE4L2Y5NHV3K3d0cTd6ZitCa09sNWd0cmNkTzU1eG5MMlRwbTNTOFcrYQp0ci9HTmtNZ3hBWnRvWWxZWW9tOTk5N1RZUGJlNE8zWWNSS2I2VzBEM2dhMGRhOTAvK2ZvZ2l5RG5hUy85dGZuK1Q1NnJrQmdnMnowCjRUM3ZlVStBYjM1NFlGYWtLRUVjWUFnZ0h0K1R5WEZkQUpBWGcrZkI1RHJSV1NSSFJzRHYyT1Z2K3ZiRHdXNExBQUw2Z2VOSmZPSGgKWDd0NUE0dU8rbG9Fb0tjWmFPZ05IWUQrUVFzZ2Vqdi9Jb0FjSEcxZFNZUUFINnJZM3lkRDZOTVJGSUNFcDJDcHVVaCtPUVpjVXRPbwpxVzlGbXR1UjFpNmtvd2N1WTNVTmFvRitCazVnUjAram5VZTFBNmV3NFV1bnlpb1kvenowemZ2dlozSTRzRkRVT1FBTXBPN29RUnE3CmtPWk90S2xUMHdnTFA0QSt3RDNvNFFhMHVoNnByTmRVd0k2ZmhRV3Y2bm42NUpVQi9hQ1poZlA5enFueitnSDBRZU16a05nME5Eb1YKaVVoV2h5V3FRK0tWb2xoOHdXdXhmZ0xFZ0Q2NGZuQUEzZFBwUncrZzIwR0xBVFFsanJ3UkhYazNNbUlxVWp5Wm1ISS9LNjBzSWVkTgp6dVBUNEhFREdaU0NIdWZYQTJpLy8vRlBlQzEvWThiZ0FIS2xrd3dCWk5nRDVPM2o2TVB6cExNOHFQQ0htNHNuelZYQUVsdzdleDI3CnFWRmRVbUlQTVJFMS9EZHYvd0dWWWhnYzk0eG9VSGdZaGdiVHdtUGRBWGswV0U1aTRVZXZmekhXTmFKcmhjWTA4SEJVM2RpZ1dUV2cKRDdpVUt4Q3BUQzJScWlRUFZQSzdTblJhcmJtdWxGNlN5NjZvWjhjVm1pdGE3SkwyK3VEMS8va0Q0UlhqelFmZWRTa0lxQnR1bnI3YwpQWHUxVjNLdFQ5cVJjemFRbFB6cWF4K2FySG50MHcvL2NhTDd5dlIzMk5RZ2RxMEh1enFBWFI2QUFCcnJWNC8ycXdHQUxnSUREZXB5ClVqNHhwTGs0b1AzeGxQWjgvNk9iSnpVLy9vRDVsVnpaNU5rSUM5dkNveHNaUGEveEJqZHh1emZ4T2dHQXR2RjZEYU9Ya09GVytTZG0KSnk2QjBYeDA3OVUvWHQ5a3ZkV25kN3VnWXllLzR3dDJNVTNnSStUYVJwZWxOeWtsZlFybGtGd0JUUE85UW5VUkZvRlU0M0lGWU5BMQpERXNZN05uMCtXYzdQL3BzN3hlLzkwcE02RkZLVDJ1MDNVcGx1MUxkcUZUWHl0RXFCUUpTSVZOVnpNbUtaN1VWTTFqSnJDWkRyazVDClZFbHFlYXAwTG1WMkpsd3lrNkhDUkkvVUFZaVNmM1g0TjZHaXRUUXYwbzFoZjdsQ0tKWDVTcVQ2Q09Za3ZKbFp6cXdrUUtYd3VuSi8KYzBqektsTFZXZytJQm1QUHcrYnVkV3M4U2lDQU9GRUFRT0lBYW5Bb1BVcjBUQUFCL1R3TFFFeSt1dzNIWjZkNzBrcGlOYlFPc1hDTgpFN3hZNlZSaEdGeENxMGpscTUwclFJd1hHbGZtdHpHNTFvQ1l3Wld5SndMZVl1NStaRDY2TGQ1NExOM2hyWmxuOVZiUG5IOXlJME9ECk9mOE9nQUtFM0Y4Sm9QZTlJalk2NXBrNWwxdVI4cXdjaWdCNlRCeHpyQW5sWm82RnBnNEZab1FDVS90OFUwS3V1ZjE4NWdHa0h4SDkKZUZiMGduNTBFNFJnMW5rZFh1dFpEWjRTRTVkU0lKaVZ4RUxEbUJFS0xZa2w2MG5sbTV3cnQ3cFdBL2ZzY0svZDdWRzMwNjEyaTB2VgpPcWN5TXljZ0hxaWxWYzdGSzBsRnBzUmlFMktoTlNuakxmZUl2NE1mRWxSWEQ3cXJHK00vQnlBL2J4eEFORDhYbW9Dc0E1RHIzeGk4CnZZenFWeGwxNjVodDhMOGxzMzBUclhVVHRXMER2WHVqYmk3NGVucXJMbkJNdUc1UVpxdWVQcmgrQUgxQXJMMmIxbnQyYktJMjdDQzMKdk9YZC9oNjE5VU5LNi84d1NqaUM0T2hBSDEwUnlPZFhBc2pQejVuQURuaVhXclNSMHJxT0NnRFV0STdXWWszdDNrQnVXVWNGSk9yYwpURzErazF6OEorOTRrcmVRN3MwQUFLSlJXUUJBQVZ5ZjlPQkFQWUJxRThKcms4Ukhrb0I3WWhyU29odFRvNXBTd2hxVFJOV3A0dHJpCjNPYU9ucmJUWTAzbmJoNDVmYlhoekhqMzk3QXhDSSsrT1hxK0NLUURrTjVBanhuMFMxMUJTK256VkFNOUZVRGdNVXZSODFRQWdTelYKajZHQitpOU53K2dBaEJzSXA0OGVRTGgrUUlCMVFOcXUzZXE0TnQwLy9iRHYxb1BXaVZzZFY2WjZKKzkyWEp0c2JXL0tTazFNQ2drbwpFQWNYUjRoeXd3TXlJNElTd3VFU0dBNmdjRDhHb0E4T0lDSEhnOGZ4WXZLOG1GeG5CcE5FWlBDL1pKZThLZXpkNjM5c24zRFFFRUN3Ck8rRnBBTkliU1AvQy9CUUQrUTU4ekszNEI4MlBCSGVCT1FBQXVkRWNjQURwSmlMcURLUURrSnV6dlJQQjNvbEVFTEFvRVVKV3B0RG4KUkpBSWpRUUF5Z1lRMFJaVndRMVp0VTFJZll1cXNSMVFCZzdzYWV0Rk9udWxIVDNxcmlGczREdnMrUG1Tb0ZEclpjdGVORElDMmZqaQo4OStuWm1NOXg1UzF6ZmgwSDdSaHZ2Q0QxZ0w2TkFMNndGTzlLdXZRTWpqaFVLK2YrUmsvY05rTDZnY2ZjZ2owTXovaU9URUxqWU1kClAwaFVrbHFjb0E2SC9jNUtrWTQrQVpHQVByaCtwUDQ2K3ZpSGc4ejRSNEFBL1R6MGYxeittZmJIMTcvRStQb1gxSThPUU5QaDRwdVIKQ1ZOUllYZGlJMjdIaEYxUHpYNlFtZlJUUnR4ZkJLMjdPZjE3dUFPNGU1NEZvQ2NNdEpRK0N3SFA4aHYrSno3bXRmMlZFZU5BZHdFQQpjbU00UHhOQVhDZVd3SXZHY3FXeDNlazhUeTl2dDZ5WWJOVWxCTHVFcWthVTJBUHMrdWxibDg1ZVF5UmFBQ0NWU29Hb01ZVlNJNVdwClZFcU5Tb0VDR09VbUZMNno5WVByUXhNb2lra1JUSzNDNUZwTXB0WWlNa3lsd0REQW5TbWw1cTVHZlU4cm5WU3JicURZVFV4N0dkVmMKdzVRVGF1d1dwaGhYUGJnd1ovTW5aOU5WMjFnK1lYZVB5bWJQd0pNdUhwM0M3aDdWM09oVDNEdXBmWEJHVzF0KzdNTzN2ekZacysyegp6LzgrZlBUaHZTSHNTcXZtNmtudHhJQVdWbnFnZnRRWEI5VVhodFFYanlJWGpxRVhUa25IVDZJWGptbC8rZzdUWVVneWZnN3JPcUg2CnJmOVJDNDg2YS83UU9tYi9xejREbTduZEc5bnRyM0c2WHVYMjRGbkVJTDFnSHU4WE05ZzIvNVFZdU1ld3gyZ2JDTGRySjdmelMwNEIKazg4VUJMcWxEcllkMFNJOU1ubS9YSGxjcmp3clY1NlhxeTdvZXB5aGhEQ01tSkcwL1owUFAvdnNxOS8rdjcrOS9wdXYrTTExblpoNgo4SkdzNTVHOFhhS3FtMU5XemlyS3BmTFNPV201VkZvbWY1U0R6YVZnczNrUEp6dE9YRGhhTWRUU2Zxcm94cFY0cVR4QW9oQktFTEZDCkU2V1FCeW9lQ2xWei9rcWxuMHl1QnhCK2dRT0kvVkFpbEV2Wjl4WDcwd2FYRVV1QUc4QXJyTEY3dFpuYkVRQWdDL2Z5cnpqUi9nR1UKZndOQURBQ2dRMnpXRHJmRUZVU2RkUnp5ak9GRkdjZ0tZcWsrcTV6S1FGWTdscTdVWGE4R0VpS1ZHd01KNlRDa2o0bHJsWWxlUlFzdwpnbms4N3didS9yWndyVFIzclZ6alhybkpJK2NidGxnVXpJNExvZjR2QUJUc3p6TUVrQStYamdPSTRVUEJBZVROb0FBQXVUT3BPSUErCjhReDcxVEhYaWxpKzFqSGYycjdRM0tGd2pVTzJsVzJ4dVYwK2lKbHRuamxNam9WZHJxVnRycFZkbnRHVGxaNTU4ZWd5WC9MUjBhY2EKM3pwdjZWWnVRaW95ZGlwYzVaaXZEL2lHcmlEa210bm1XeEtLMWhQTE5qdFhibk9wM3VGYXM5dXRkcTlIM1E2M3c1dWRLNndkaTljUQpDMWNUQzhESHJuUXFBREZ6TERJbUZGZ1JNL2U3aWI4aCs3aFEzWFFBOHY1UEFZZ3Q5T0p5OFNOUmNRQTV1L09kLzhiZzdLR1hiYUVkCkJzaFlwK3Z2MlV4dDNVUUJCdXJZU0cxWnZ4Q2NQdGE2NFBSWnBCK1FkWjRkR3lqMTI4aXQrNzA3M3FLMnZFdHAvUnVqak9rYjhpc0IKRkJ2cWd3TW95SS9reUJGK1FNL2JRbXRaVCt2WUFNblZ1bzdSRGRWRjYxaEw3OXBNYjl0SHJmcVNuT0xnN1Uvem9qUElMQnhBL2h4VwptaWdBQUtnNlByUXlLYlErSWJBMlVWU1RISDQ0TGJJbU02NCtPNjQrSzZvK1BidzdWWGdrS2FnMEs2V3F2clg1K0lYbWMxZGhTOUNwCkVid3oraWw3eE01ZkFYa0tnNTdSSEczWUQvUXNCaTBDMEZMOXdNY3NhWmQrSWdZQTZodDduS1VNd2dIVWQvbXhnUXdCcE5kUHo0MTUKQUExZHY5TjdmYnI5NXAyRzY1UE5WeWVIYnQwWkdKNm9hR25QRjRka2l2eHpJa1NGc2FGWjRmNXB3Y0xNc0lEMFlQL2tNRjhjUUdGQwpPb2ZyamkrQkFRRHh1ZDQrUEM4V0J3Q0lTR0p3dnVUa3dabDd3aWNBQkc3MUFNS3psRUhQQXRCK3ZnNUF2TEovMEgxSlpDYzRiSVpPCndnSGtCUTMwR0VDdXJuWUFRQ1I3ZXdMSm5zTWlSL2d5czMxOXhrUmlUVlNxTmlVTHpTblZGbFJnNVRXYXd3M1FMblV0bXNZT09LNncKcVIydVozVU5ZTDNIRmUxREhkR3A1b0ErTHhpOXNPeGxvNWVNVmhnWnhkZ1FzRVo0bnBlaXVoNXJiSWRWSDEzaEIzeWV4NXU4eWc0RAorcUNBUHNXSERUcCs1ZzgzblIveHZIQzRxVzdPWVpvbUtobFpHTzZNNy9iQzlTTUxpQUtSK2tmTytVZk8ra1dBekFqRmoveGdBSDFBCkRHcy9BRUFMdTk5aCtRZm81MDVZNUcxeEJNaTFxS1E3RVdIVDhlSzdpWkhYTXZMdnBFWGZ6NHBnQmRYczlPa0ZCc0xkOCtRM2ZBalAKSWdrOUsyLzZEa0xtK2gzL2tOZnhOU1BCSHZ3UW94L3lvTStmaEdvSUlEajdoK05HNFR2VCtiRDh3K0I2TXJqZTN1NGV4NDhjeDRZeApiQXpUam12VkV3aDJIOFBtTU0wc3BwaFJxcVJLeGF4R0xkWEtKU2p3RFNMQk1BVjI5ZnpOK3J3RzVRU2NHS1JHd0lPMW1CS1RTVERwCkREYnpDUGIzWUxjeHpSMU1PWVZKcjZIcTY1ajJHb2FNWXNpWVZqdU15TCtiQXc4SUMwcTN0Tjd2NVNTOGYwRTZkUktkT3FtOTFLTzgKMG85ZUc5U0MyeHZIc2N1RHF1a3o2RkRWNkdmdmZQUHlDa3NoSy9iZVVXeTZIeHMrTmd2ME16YWcwYTEvUVFCZFBLcStlQUlGQVFBYQpQYWthT1kxZE9LY2RPWStPbnBBTW41aTdOSUw1RlUrdWQ2MHdaZldzNHh6YlFPM2E2dE8xaWRVR2JyZHlla0JlNWZiaWdWN1JaV203Ck5KNUZTMlpQRGE2b2VWb0orcmF6dTNkeXVyL2tGMURaVkdFc0wvZnl4VElFN1pESmdJRUdaZEJBcCtXcXN6b0pnWHluMHRLTEMvZnUKZmU4M0gvMytpNi8rL1Bzdi9yTHZ3SUg4aDVPOWFtV2JUTm9zbGRiT3p0VklKZFVxZWJGaXBnaVpMYnM5MGpONC9QdTg5dSt6MndmcgpqbFVkUDVjd2VTa01leFFvazBUTUtTUG1VTTdEV2I1U0twUkpoTE15MWd6VWoyRWVWNEFlU1htU1I0Slo5Y2VsNTE1MktySndxNEtyCksrNTRyYVZvSGtDQjNnQkFvU0cwUmR2Z2Z3MkFPRndtays5NTBJZjVtbXZDY3NkeUFKMlZEamxBT2ZQdWNTekJzOHFoQkx3UnhKaFEKdE5vQnh0aXhlTFZqc1RHeFpKVlR5V3BTNlNwU09SNmNSS2JPbFF1cDFrVi90eHlQdWE3UnhkaTEzTm90ODgrczhFQVJCRkJFdU9EZgpBWkRBbHcwQUJQUUREQVFBUkdWUkRBSGt5cUFBQVAzV0syU0hRKzU2WXNWR3g0SU5kc1hBSk9iMjJXdHRpeTNzOGtHQWZpd0JWSFQwCldXdVh0ODQrMzJpQk96RDZXZEc2d0pJUGlMVkhGWENQdVVzcDdCNXlLbHBGeUZ0cG40c0hYT04zVjlqbG1OcmtXZG9Wcm5jc0JRRGEKN3J3QUlMY2pXMTJyTnBES3pBZ0ZxM1NQWCsyUUR6L0tQdGZjcnNERVB0L1NNZU1OMTRpL2tuMmMvMjhCQkp1QjNIaWt2ekY5ZGxQegpObm1YNk03bGFObElidG5pM1F5eW1Rd1lCTzQyYjZEQVFPdFE1Mk80N0dVWWEzTG5XbXJqcTVUV3ZkNGQrNmx0YjVQYnZxYVgwd1ZoClVRRXNZQ0Q4UkRCREFLV0VRdjBzQXBCdUdEU1J4T1Y5d3NyZXhtamF4T2pDVjl6V00rRUZyRUl4T2pjeE9uWXo2ajZqWk5sNEIxRzgKR0RpQTZIUzZINXRwQ0tDNlJQL2F4TURhbExDYTlNamE3RmlRdzVuUlZla1JqVW1pMW96dytyU3dzaVJ4UldGMlUxZHYrNW14K3JOWApXNzY3cERlUS9ob0VCNUFoZytZTjlNTU5rRVVNZXFxRWxnSm9rWUgrRndEcU56Q1FJWUNXR3Fodllnb0hrTjVBdlZkMTBTMTQ2ZldqCkI5RHhtM2U2cjA0MlhiM1JQbmw3Y0hLNjU0ZnpsWldWNlpFUmhVSENFckVvUHlJb0k5d3ZReHlZRVJhUUdTVE1DdzVJQ2hYZ0FBcjEKcGVFQTR2RTkvYmllQW80M20wdjJZYnV5bUE0a0p2TXJUdWJiZ3M1OUN3QjZNM0FJQU9nTmZ5Q2VQZ0FnQUoxbkdjanc5ZGpRUUcvdwpqdTBYQUFDVi9BOU5RS0lRQUgzZ09ndkZVUThnTDdnUmJCNUFyaVE3VjFzSE95Y0NrK2tWeFdQbUNsbDNnbUkwTVNsWWNnWnN3Y2tyCmg1TjR5bzhBdXdEQmFPdGFzUG9PdEw0WmErNlUxelpyZTQ1ZHFXblp0Y0xrWlNNam8rZWZNM3J1UmFPWG5sdG1aRVQvL0hkWXg2RDIKY0JQVzJpVXZPd3lyUGxWd3pRcy96aDJmN0t3dHFrS0xxdlhMWHZQNnlTckNNblVqbmxQejBSVFk4YVBmNjY2TlR0R0tFeDl2ZE1lWAp2UUlpNWY0UkVqOFkzRDE0SGdyRFFSNzR3UUQ5NkFHRW4vdzF2L2tMWC93eUFORE42TVQ3a1pGVENlRjNVaE51WnVaT3BZVFBac1hrClJoYy9GVUM2Yi9qakxPWE8wcndsNkFjQTJ1dC84bjFlNTU5WlNjOENFSlVMOVFQaXpYV2k4ZUNCOEF5ZUI0WHU2a3ZuM0QxNUJ6dUwKb1QrZzJBaUdqQ0RhcTVqcU9vSTl4QlIzMUlwN0t0VTlWRHVEb1k4d3hYMVVPcTFDSDJDWUJMWUtLZVpVOFBLaFRIN3FDbmJoSGpJeApnMDFwQUo3azRBTWZZYko3Mk53a0pyMkZ5VzlpMHF2WXcxRlVNNEZwemlteFllMlZvVnR2dmZIbnQ5Ly94NFcrcWRraDZkMHU3RTRYCmRyc1R1OWVEVFhkaE4xcXh5VTVzdWh1N000VE5Ic1ZTZk10TnJEYS85OUZYbHdla1Y3c1F3Sm9GL2FERFF3alF6NFhqcWdzbjFSZFAKSVJlL1F5NmNWSTdyOUROOEFSa2ZSb2JQeWE1ZTBEWWQxMzdFYVRRQlAxUTV4OVo3dDI5amRzSWVBMWIzRnZaOERDVUVEY1RweGJPZAoyMmVZUlV0bUJwbVhrOTVTK0NmY3pPM2N6dW9HbHZxZGI3NDd3eU1vTjdKMDVuNnBDbXVSeWRwbDhpNWRIZWlvVEFVamg5TjlUbW14CndPYm1QZTk4L1BGN24zNzQyUmQvK3Z6UCs3LzRFN09ucFZNcHE1RFA1R0xTTEV4ZXFaVDFYcnQ3c3ZYOEQza0RvNWxkL2MwbkMwZkgKNGg5TnBjdm5jbWZsaVk4a0lxbkVYeUVMdnkrSmsycjhGQ3ErU2lHY2tRYlBLUHpsQ0J3R3ZSQS9pUlJFT0NmeG5aM2p6OHE1Y3cvNQpjNm8vTkkwdWN5c3lkU3VIY2E4MWQ2MVo0MWFvQTFBa0FGQmtBQVVBS0NibzV3QVVIc0FNRFdEaEFNTDN3QU1BY1hrc0F3Q1ZyU1NWCjZBQlV2SktvcS9RQTl4QmdqSFZaWTEreXhyWVF4TVFPQnNjUWtCQUlZQkFlUUtJMVRxVWdabkJWcDh5TVZHbnFWREVmVWhrSS9sNEwKWW9FSnNYQTVxY1RNSmVOTFdxaGZJRHNtbEJvV3p2OVhBUlFTd0RjRUVKdkhNQVFRbVVVR0FQSmdVWEFBa1JqVUw3MUNkam5tYkhRcQozK1FBQUZScTVWQU1BTFRldGdnSGtFNC84d0FDK29FQVduUTZoajV3RDcwSDNPcGw0VnB1NWx3Q3ZwaFZEamtyN0xOVzJXU3Z0czFaCkZHTTdXQUd5c29jVm9DMHVWZHRkRHdNQTdYS3QyZU5hdTlHbHdwSllEQjZ3M0NacmhXMDJ1REMyeVFFeHR5azBzYzJ6Y0VqZjV4YngKdFRmYmllb0tCNEw5SndGRVhnSWc0amNNMW5hUEZHdVhMQk5Tc1luellTdVgyczJ1UjE3MWFOaEdiZ1dVMlVwdTJVeldNWWc4engwcgpjdE5TL2VCdnNTUjNXdE9idHVnQXRJL2EraGFsN2YvUktxZ0NNUTZnbUNEV1V3R1VFT0tqQnhEZ1BBQlFpQi9SbGMvN2xKMjVuUVVCCnRKbld1WUVHM2JOQlYzeGFSMjNmeU94NGpkSDRFVFgzb0hjSWVMWU5BWlFhNUs4SFVFMWkySkhFOFBya2lNYTBpSWEwcVByMHFOcTAKcUpyVXlKcVUyTHFVaU9hMDBLWlVVVVZpWUVGYWJHVk5iZnV4czBlT1hXdzZQWTdycC9uTUJMaWRid242L2pMSUlnTkJCdWtBOUdzTQp0RlEvaGdaNkpvbVdvR2NSZ1BRR1dnU2dSUVlDQUlMUkFRZzNFQTZnSGwyQWdYRDNnSFJkdTkxNS9YYmI1U3NkVjIvMDNwcnV2M3FqCllXZ29QeThyU3h4VUdDSW9qUWtyamdySkNRbklDdkV2aUF6SkU0c3lnMzJ6US8wU1EvZ0FRUEVCN0JBQmxjMXhBd0RpQzd3QWdJVHMKeHdCeVp0TCt5RWw3VzlDK3ovZkVMd0pva1lFV3ZSN3JEWVFENkJOTzhmL1FlUzVrQUNEN253ZVFtNjJERFlsQVkzcEhjNWtGUWgrNQpLQjZDSXlrZHR1QmtGOE85NktYVmNNV3FxZ0dhcHFaWjI2d2IyOVBRaVhRZmRmajQ4Mlc0Zmw1NDhhWG5seHU5OU9LS2w1NTMvZUJqCnJPc1llS1MwcEFwcmJFSEw2OUFLdzlVdU9OWlpXMUNCNUZmQ2RoOWR4NDhtcXdUditNSFNkRTAveWRsSUl1ejRRZVBTZ2NiUXlDUTQKM3prMFZoMGNyUkpGS1lNaUZZRVJJUElBc2NJdmZHN0JQYkR3NHd2cEEvWGpHM1pmQ0hQWER3WS85WDBwZ0tCK3d1Y0JkQ3N5NmtGTQo3TTJrME1tTXRPbXNyTnNaNG52WjZmMHAyWUErZTdnRCtsV3dwd0xvMXpEb1RYN2Y2MzVIOS9pZmZwZlgvVWRXaWgzZEhRRElrMDdVCkEyaCsvV3NCUUY0OEp5clhCZmJMZzJ1eVUxWlVxdnlzRER1SnFjNGhtZ3RhYkFKRFIxSHNPcWE4Z21EVEdISUwwMDRpcXVzSzlTMUUKTmEzUjNzZEFOUGN4OUk0Rzd1MjZvOFU2SjZZUHhja1BKTXc2cEtpb1JScE81VXhhcnlyL0JGYjVJOVp5QlR0Mkh6czdpMTZRWTljdwp4WWdXNkFlN2lKMnBPUHYrcTM4TW9tZmVQWTNLajJLVFE3SWIvWktiL2ZMcnZmTHIvYW9iQThxcnZSS1FzVzdwN0JBMldISnAxOXVmCm1PNTRyYkhrM0wyVDJQaUFlclJmQy9XakE5RHdNZVRpQ2FBZjFVK25WVCtkMVFBRFRaeFhqLzJndkRDaXZqaWh1VENNanY2QWpGekUKUE5QUG1aS1BXTEg2TjNwM2JLWEM3b0wxck41TnJFNDg4T1FmUXdteFlmUU0wa2UvWkxZazgrN1Iwd2YvYkJ0OFdsNWo5VzFnZDMwcwp5SEwzOFlxb3lTNVJLTXBsV0lOTTJpelhHVWloN0pialVRQVBEYUJZNGVTTnJYLzY2cjEzUHR6Mzluc2YvK2FyUFc5L1JzakxxY2V3Ck1vV3NUQ1l2ZVRoYitVaFMrM0N1K09xTjRrdFhVakZWQXFwSVVNaVRaMldKczhwWWhTWlNvUTJmUmFKa3lsQ1pYQ1NWQmp5YUFkWVIKeUdVQk1ubmdQWGh0Q0NDZ0h6eThHUmxQOG9ndlZYN2RmZVVWejZJMWJxV203bVZyM0dwd0FGbTZsLzZCRXhrWTRCMFZDQ3RBL3hLQQpZUG1IUitGeTJYb0FyU0NXcjNJdVhVWE1Cb2lCMVIzSFl1Z2JRaEd3RGtDUHVWMFJpS1Z0Z1lWdGdibE5QbmhCWDJPWGIyS2Z2NFpRCllFd29XSTBYaEJ5TFRSeGd6QnhLTEJ4S0xSM0xMSjBxTFlnVklPYU9wU0RnN1RDT1JXWU9PYXNJZWN1SVJXdWNNcjZnaGdyQWEySW8KUFRTTTgzOE5vSys4QXZjU3N6Y1RBWUNLOUFCYVp6Y1BvQVVHUVFCWjR3QmFkRWFHUHBadU1EcjlsQUw5ckxUUGZjVTJZNWxOK3VwRAoyZnFzT3BnRkFqU3p4aTdQM0s0QS9HRWJuTXEzdWxiakFOcnRWZ3V5MXJYY25GZ0U2UFBLb1V4Z0lQQlJKZ2V6VFE1a21SOHNNTGJKCk5TZWt2ZTRxL24vay94cUFtRnRjWWkwY2sxZlk1YTRrZ0Nlc2NpT3A2bFgzSTY5NU4yK250SUVBQmdFRGJmQnVYdWZWdE5ZVGJ2QmIKV3Z2QkFXUkY2UUlBMmt4dDNRMEFSR2wvZzlJT0FFVGhoLytyQUFvTmNIVGxjejluWit4Z05nQUFiYUoyQVBkWTAxclhVWnJoK0NrcQpYS3JieG1qNmdKTDNyWGV3SGtBMEdrM293ekFFME9HRTJOckU2TWFreU5aa2NWdEtPRWhMV25SemVreGRla0p0Y2xSdGlyZ3VUVnlkCkVscVNHRnlZSEY2V0ZWZlJldzRZQ0tjUHVNV2JnZUJDbUE1QWVnTXRCZERQR01nUVFEOGpvYWNheUhDZTBOTFpRdjhxZ0hvdnpSdEkKRDZEdUszQ3VEekFRY0ErZWptdlRJTTJUTjlwdTN1aTlmSzIyYnlnbEpTMDFYRlFSRTFRbFpxZEhCZ0VKRll0RFM4TkQ4NE1DOG9JRApzc0w5d1JNS0FKUVl4TlVEeUlmbkRnRGt6L01TY3J3NEhBQWdkeDhHQUJEbGo5eVVSUUFDQVFEYXpldmR4ZTM3R1FBdHJVbmcyYzg5CnNRQWdqZ3ZGZmdGQVRrOEZrSXVUclpzTjhaQXpnYklBSUkwb0VRQklrNWdDNSs0QUFPV1hveVZWZ0MvQU1kcktCcXlxVVZaN0JLdHAKd3VxNnpzU21tVUw5R0JrdGY4WEk2TVZsUmk4YlBmZjhDMFpHUVlmc05RMWQ2c29qV0Yyam9xd0tLYTlGU210QTBPTERhTkhDRnZmOApjaVMzRkNhN0JNMHMxbmY4NEdOKzBLU3NoWDduWkZ3L3FyQTRWQlNOQkVXcEFpS1UvbUk4UUQ4Z2V2cmcrZ0gwd2FNSDBCMERBRTBGClBBYlFmUGtuUFBKT1JPUzBMZy9qRTY4bGlhNW5aTjdKVHIrZkV6MlZVM2doS3cyT1Z1SVBQYzFBZzBzTjlEUEJBYlRiNzlRNy9NVUEKOGpSc0FOSlhnUGdrTWc4Q2lNcDI5ZkoyYmk0K0lqc3B3WTVpNnU5UjlBY3RNSkQ2QW9KZHhsVGpLSFlWVTQ1cnNSdHE1TEpDZTB1agp1b0VxYjJua3Q5VHFhWGlRKzh4TmpmSVJoZzNldnY5VkNQWkZDUGFsQ1BsRG9QSlBnYW92Uk5pWDRkcmZoU05mUmNpL2pydC9JR21HClVvckZEczVkVUV2UHk1RWZWTExUc3BINnk5ZTdaeDRleDI3M2FtOGUxVnp1VlZ3YjBGenFSYS8wYTI4Y3hTYjYxRmNHMGRHVHNxc3QKMktWdVpNY0huNys0ZlVOT1d0ZjBFRGJSalYzczAwRDlER3FHajhHVkwxajdPYVc2Y0VaOS9qdHM3QWRzL0p4OC9DZlp4WEhscVZIRgoyUkhrNG8rYXlWRXN1bkhTa2x4clR1dmFRdTBHUDEzWDBWclgrdlJ2WU9qMm1qQTdRSEFHNFJMQ0FhU1BIa0JiT2QxUGpTRjk5UG9CCldjOXEzc0VaTXFPM3ZTOUk4L1pqSkhaVUZTclY1WE5ZdlZ6YUtKZTFLT1FkY2dVZWdLRld1YnhOcW1yQnNJTVpNZHUyNzNyOXZYZDMKZnZyWjF0M3ZFck96eTFGTnZrUmVJa2NMSmFvOG1TcFhyVTZTejZWcTVLa1NSZFNzTkU2aVNKY2gwUks1VUNuMVY4bkNaNlhoOTJmRApGUXJoN0NOL3lheElxZUJLNW9ReVNZaFV1clQ4TXcrZ0J4S0JiQllBNk8vOTE1WjVGaG03RmNFQk1jN1ZaaTZIOVFBS0Nsd0EwSk5ICllUd1ZRRUYrODFNUW53R2c0dFZPT2VEM2Y1d3lRRDlyN0l1QWZzd0FnR3dLTFd5THJHMEtRQ3hzOHZVR2dpRVVySElzV08wQUpRU3UKelFpRjVnNUY0T1YrclVPSkZiSFMwckVDQkhqSW5GQUNBdDRMWTVleHlqNzdaY2ZDMWNTMHo4akIvQUQydnc4Z1h5R0h3MmYrSW9EMgpPR1pzY2l6REFXUkpLREVsUUFDWkd3REl3ZzRDQ0RlUWtabG5OWWk1UnlVZUMvZHlFSE8zTWl2bjBuVk9aV3NkeXF4c2k4ME81aGdmClRGdGhrN0RNTHNiNFlNYnFBK21ydjgwRUFZNVpjekRiOUdDdTJTSHd1UW8zT1padWM2N2M2Vks5eS9Yd0h2ZmFYUjYxTzl3T2J5Q1YKV2RnWHJEcVVzZXBRMm1xYmRHUGJyRFdIY2t4QkRtU2JIOHBiYjVQK2hvUDRMNTVjUjdxSEs4M0ZmYUVKV2o4RkVjVE54eGtFQUFoRQpEeUJ2TnBrQmZNT0RBTUlOQko1eUF3TlJ1SHh2cnRDTklYRDE0WG41Y01HRm80ZXYrN2MwOGc2WFlEUGJtT1YybVMvYlo0Sm5hQ094ClpvZEwwejdQcHJlOW05L3pibm1IM1BJMnBXVWZ1V21uZC8wV3I5cE5YalhXbmpXV1hrZDB3OEliclhXcll4c296UnZKelJ1cFRlc1oKOVZ2b0hkdThPM2JRV3ZZeE8vNUFPK3pGVGdnTFlNT0Rva1Q4ZUJFM1NjUkxBUUFLNHlmcVJrSW5oWEVBZ1BCVnNIamRnZkJSQVRTLwpBSGVxcjlkZjZJbmJLUzJXekk2MTFPYjFubTNydlZzdEtJMXJ2VHMza3J2Qmo0bk4xT2I5bnRWL2Q0K25lTEhvM2t3YWhVbWxVbjFaCjlPUWczOUlvVVhsQ2NIbVNxQ1pSMXdTZExLNVBqV3hJaTlJbEFxUStQYW91TGZKd3FoaWtPbGxjbFJSZWxoQlNIQnVVRmMwdEswaHAKYXU5cVB6UGZIRjEzR2c0TmFqOTdvL1hNbGJidkxuZCtyMXY1QWhJNk45WnhkblMrUTJqSjdNUkZEUHBGOXl3dS9QeGlEQUFFMGpzNgpIOE83d0VDOTQvUFJBd2hQOTJXWW5pdlRnMWVuVzYvZmJidDFaK2pHcllFclUrMVhaaHR1U09xdVRiZmRudXdjSFM2dnFVd1BEeXdRCitaVkdCQlZFaW5Manc4RnRma1JRbmpnd056d2dXeHlVRlI2WUVRbzdnVktDQkFtQnZQQUFIMzhJSUE4TzExUElJL3R4dmVFU0dNK2QKeVNYU2ZJZ2VET29CUnZTSDNDTmJoU2YzQ0hxQWU5NEtQQTRZdEljL3Z3VnNVUllCU0o4bkRDUTR2Wi9YK3h1ZjdJTTBGb2xpVDZRUwo0TWdabXIwbnpVbmZBK1RoQlE4Q2MzR3hoUUN5SnppN09Mb3luUDJGdEpvQVBpYUlSY1R4OHRRVVlCRzRHcFZkaXVTWHF3dXIwT0lhCmJla1JyTHdlcTZ4VGxkUmczU2YvK3Rubks1OS9hU1VRMEF2UHYyVDAzQXRHeTNXMUlLTU9kNDY2dGtsYlVZZVZOYWdyNnJSRmgwRTAKaGRYYS9DbzRYQkVlYWxFR0FxcytHY1Y0MVFjbUpYZWgzUWNXZnBDb0ZDUmk0VmpUa0hpMUtFNFRGQTBNSkEyQ2MzM3VCMGJkOVk5NAo2QnMxNXhzdEIraGhCODRKdzJiOHdtWUVZWE1BUS96UXV4elJ0RzhJbnR2QzBDbS8wRVh0enppQXBzTENKOFBGVUQ5UlVWTXgwWGNUCkUyNm54RStsSjB4bko0UGN6a202bDU5S0NpeTE1cDk1blhmaWRWN0hMczd4YlVKWXp0bko2MXBLejllWGRxTS9tVGNCVC9sSDN4UjAKZjhITnNtUFFQR2p3RUpLbFRkQTRnSHg0bmt5MkM4dlh4WXRENUhqNWpGZGQwL1JoMm1OcTlBU0NudFpvem1vQWc5Q2ZOUEJnaWpHdApla0tEam9JTEZCM1hJSmRRNUlvR25sOXhUUU9pdVlFOW1rSVVGKzZyZmh1R2ZSQ0UvUzRVL1gzb3pGY2kxWjhoZ3hSL0NWRi93c1crCjhsVi93cHQ3TDFBWmUxSnlVaXM3alVtL3cyUm5NY2taN09FSjdPNmdkcnBQTzlXTFR2YWh0M3FSRzczSTlSN2tXaTl5dVZjTk10NkIKM1RpT25XaVpmR2YzTjl2V2Z0cFk5c1BWMDlqRlRnME9vSkVoN2NoeERRRFE4R2wwK0N3NmNrNHo4cE1TWlBpQ2F1U2llbVJFZFhGMApQdU5qeU9CUDJ0OExXbGU1dDVneWoyNGd0MjMwYWw1UDdkOUE3Y0t6a2RhOWlkNERzcG5SQzJKWUdkS3JTRjhmV2hyOHZmZ2o5UjhMCllzbnUyY2hzM2N6cy9weFZST0l6WWs2Mlo2aXhVcG1xV3Fhc2thdnFaSW9HbWJKWnBtcVJLNXNVTUlPemlqcTFQRjl5L3gxUGl1WDYKL2J1M2ZtVDU3bS9ZZ3oxbEtxUklyc3FWeXJPa3NreTVQRTJoVEpiTDQyV0FQckpZcVF6UUoxSXFGMHRsb1JKWnNFUUtDejh5dVdHeAp4OEE5YzdwQS9lQU5RUHhaS1lqZkk5UkgrWWlybkR2UWMzbTVjNUd4UiswcTl3b3psd296ai9KWDNLdk5YVXEvWnZ2NWk3d2ovWmtSClFkUUlBLzBZR2tnY3hEQ3NBQmtDaU0wbDAvajBieGgrcjdvbDRRdFlKazc1SzBtRmVEa0g2QWVuRDY0ZmM3c2lpME9GSUZhSDhzR3IKczVsTnJvbHRMbmlWWE9tUUF5N1cyT1hoVGNTQVIydHRDemZhbDJ4MktOdE1yTnprV0xIUm9Yd0RvY3phdnNqS3JoRFdrR3p5alE4VgptenFrclhSTVdFMU0yZThkUVEwV1JJYVFZMFdjNkRCZXJGaVFFQ0ZNalBSTGlJQ1REd0Y5a2lJQzhHdGNQN0hoZnRHaEVFRGlJSDZ3ClA5d0loczlDNUF0ODhBb1FvQStEUllVQVlsSUJnTndZM2lBdWRES0pRZjZiUitBK1VySVZvUnpRWlFNaHg1cVF1NVpRdk02bUdDQUUKL00zQlZ3UmlhUS9wQXdLYm9DM2dyT2lGd0NuUmNGZ1F5RnBpeVRySDBuVU9KZUJMQlFCYWZTQVZBc2cyVGc4ZzR3VUFBZjJBTDlnUQpRTHZkYW5BQXZlWmF2WUZZWm1sZllISW9FK2pIeEM3VDFEWWI2TWZzWU80aUFEblFQUC9yQUVwZkJDQ2duM2NwclNDNGdYYVJHN1o3CjEyMGkxNi8zcWw4THAyRTJXc0doNExBd3M1N2NCQmkwbGxhL2dkYXh4YXZ0VlVyakhuckg3eW1IM2RtSi95cUFBZ0xjYVFLdnY5RGkKWGlNM210TmJMS2xOYXoxYnJieGJ6Q21OVnQ0ZDY4Z2RzQnBFYlh6ZG8vSnJ0emgzQUNBdkh6MkFrZ0lGdndaQVIxSWpsZ0lvSjlZWAovSjhSaFFTbEZWZldEY0x0OFUyblJ4dE9YR2crZmJYMUxFelQ2WEh3bHZaemw3cC92QXFpM3liMml3RDZlUU10OXMwdnhrQS9pd0NrCnZ3YnBHWnRjTU5Ca3o4VGtJZ0NCZEl6ZjdMNHA3YmoycUdOMG91ZlNsZlpydDl1dVRnOWV2OVY4OGxSNmZtRmNhSEJlV0ZCRlZIQjUKVkhCZWxDaFZIUEF6QUlvUDRDNEZrQytYRERlRmNaM29iQ2NQQnZrQU0vSWo3cEh0d2xNNGdONE1PUFp2QW1nZi8vUitmcmNlUUU0MApCeExkQ1FESXNBbmFFRUF1ZHZZa1o5Z241T2RMUGV6UHczalJhR2lzTWpGSms1d0xlM0V5QzlHOE1uVkJKVkpVclNtcGhRYXFyTU9xCkdpZXlTclpaV2Ixb1pMVGE2Q1dqWlMrL0RFcy9MejIzN0NYVDU0Mkd4VW5nQVdoUk5WWlFMUzg1akJaVWdRRDlHSFE2dzNZZm9KLzUKWm1jZ3JaUTh2WDQwTVk4M3VpT2hDVWd3MUE4U0dEc25ESlg1aDZ2OUl4Vys0Ukp1cU1JM1F1a1hNOE1PbmZVUHZ5OEl4azg1aFZVZgpBZFRQakZDOENFRHorbmtTUU5QaFlqMkFwbU5qN2lRbDNFNUxtTXBJQlBxWnpJRUF1bCtRNWhWU3NaNTNaaC9uT0FEUWJ2YnhiWUtCCi9ZS2gzYnplcGQvNVh6UVFEcUQ5L0s3ZmNESnRtRG9BMGVGQllFOEZFSlBqRGdERUZJQzNFLzBZZnBkcmJtbDdNTTFSQkRtT29pYzAKd0VEb09RMXlYcVA4RVZGZFJGUWp1aU82UmlDRGdJR0Fod0NEMUpkaHNCRk1QYUhHemo5Uy96TlIrUjd2M2xmQys3L2pJVjhGWUw4TgpWdjR4UlAzYklPbnZCTkxmODVSdnNtZHRjNlQ5TXpQSGtFY240T251SURNbk5mZVBhZThNWUFCQVFEOTRidlNpUUQvekFPcEJKenF4CnNXNTAvRGhTbWpxUUdkTjZydmZSeUNBeTNLMFo3dGNPRDJwR2pxSWp4OUhoazhqd2FUVUEwT2ozS05EUHFFNC9veU1xQUtEaE1iVXUKU25EM3pEaEdpRHU1MnFWeE5iVjNMYmwxSTduRml0SUxmcktCcktkMGd1QU13ck9CM2dteWtkRUZzb25aclkvZVE4OEs3aDY4cEFSaQo1ZE96Q2Z6cXFBT1FpeThyNW5SSHFnYkxVeWhMRklveXVhSlNEaGlrcUZVbzhkUW81YlVLZVlsYVdvYXAwcTlkL1RZc1p0TmZEM3lkCmtweW5sUUg5NU1rVTJWSlp1bFNhTGxPa0tCUUpjbG1jVkFMMEV5dFZBQUJGU0lCK3BDRlNHZENQeUtEU3M2ams4eXdBQ1dmVWRPazkKam1MdW01YlJsYVNpVmE2VksxM0tUSjByemQzS2xydFhXdnpuQUxUVk5YRWxFVFkxQXdDdGNJSkxXaVlPRUVCdzVXc0JRREJQQWdpZwpaelVoQjdZTjZScGQ0R29QZVBrK2xBZVVzNEZRc3NseEhrQWdBRUNBR2dCQUFBTWdKallscGc3cEt4MlNWaFBUM3ZBU1UwVDhpQkNxCkhrRHhZbDlnSUQyQVlQbG5DWUFpZzMzMUFBb1FjbjhsZ1A3dTViK2ZsR1R0VVBFWVFQYWw2MjFMckFpRmVCTTBDS0RQV2tJQkNLd0EKbVpOSzliRWtsVmc0RlpzVGk4d2NDOWZiRjIwa0ZHK3dLMTVyVzJCMk1Hdmx3ZFJsaHdDQUVnQ0FZUFRsbjBNNTVqb0FyU1VVYlNhVwpiWGVwd3NzL2V6Mk80QUJhNzFBT3ZpbXc2bU9iYlFaN3BYT0Jmc3dPNUlPUEJSKzQ3bERHR3c2UmYvYmlBd0RCNldFTWovODZnS29oCmdMd2EzdlNHQm5xZjNQb0JwUTBFTU9ndGFzc2JsT2FkNUtidFhrMGJQQnYxRXpBWGprcHBNaWZYV3BOYjEzbUEvOUtOMjJudG4xSnEKU2V5VVVIK2Zmd2xBZ2Y3dUxBQWdldVEycjFwVEt2aWNEUmJ1eldaZURhYmU5WlplUUVKdEZ0UW1TKytHMTl5cnZuUkxJSHB4SUlESQpMQjJBR0RvQWhmeEtBRlduaEJzQ0tDT1NteEhqSnc3aE0zMFlQRkZJZHRXUjVoUG5PcjhiYmpnNTNuaHFBdHcybmI3VWV2NXF4MDgzCldyNi9VbmRxZE9seHFvWm5oLzE4SjlCaTAvd3JlYXArb0hoR2JqM09HQVRRZkNZZVI2OGZXQVM2Y2JkeDVFNzNwWHREMTI2MVhMN1UKZEhPNlkveHFZMmQzZmtKeVVrQmdsc2kvSWpLMEtOU3ZJTXl2S0U2Y0d4UDJMQUNsaW53WEFjaVBUOUVCQ0k1ZFlQRmNHQnlTTjlQNwpFRXY4TWZmd2E4SVRlMzE3Y1FEaEl4Q2ZDaUJEQXhrQzZJbFhZdDZKTjdsZHYvSEpPa2hqQUFDUmRBQnlweE1XTFlIcEFVUzB0eU9TCkNDNDBKL0RYcS9ibGFObVJtc0FvTkNvZWpoeE16Z1pHUWJKTFZMbWxTSDRsVWxpbExhcEJpeXF4bXBaeUd1ZGxJNlBuakl4V1BQZXkKMGNzdmdRdllCTDNzdWM4dDFzNlcxV0dsZFhpWGo2cTRXcE5YaWViQ2c5em5lMzB5NElHbU1HbjVhR29lbXB5TEp1WG94eHNDK3VnbgpIS3FDNDNENnFBTmlWUDdSVW4reHhEZE1LUlNqZ0Q2Y2tGbFc0RU9lQ0xqbkRqLzRubS9vSGIrd1NXSElkQ0JVem0yZTZENXZYajg0CmdCNlhmNTdjQUE4QU5DV09tSXFNdkIwZFBSVWJjemM1RVFjUTBNOVVic3AwWHZLOW9uUkJaUFVXN3NuWDJjZGU1M1VDQU8zZ0Q3ekIKSGRpekFLREYzL3huWjY5Z2NEOWNDenYraHFEN041eHNHd2JqNXdGRVpUc0RBREg0SkFySE9ad3Z2bGwvRCtuQWtENEVHVUNSb3hyMApCSWFjMHFyT29NcXppUEo3UkhWZXJmNEJRWDVFMVJkME5hRVJqWG9VQkZHTm82b0wyTnhWRFhaRm8vS3RVZTVqeWIvZ294K3pzYmRvCmlpK0NWQjhJbEo4SVpyL3lSWGVSa1k5RHJ1ZWN2ZlVkZW5kQWRXOVFmZitvNnNFeDlmMWo2TjBoOUhZL3JBRHA5Zk1ZUUQwb3lMVWUKYkxRVEhuWXhkaHh3QjdrNHFCN3VWY0xEdnhiV3Z3Q0FMcDVDUnM0Z0krZVEwUjgwZXYyTWpxcEJSc2FSa1hIVjhJUnE3S0o4NUJvVwpYSDNEektsMnBXZW5tUmZzcWpUejZyTDJhZ05aNjkwT29wY1FpRzRVU0FjZUhFTjZEejAxT0kvd2EvM2pRYXpwUGJDTmt0YnhDYlBBCnhaOGRlYVlqRHNNU0ZmSmNwU0pQb1NoU0tBR0RLaFJLa0hLbEhDUmZyY2lSU1hKbVoyb3hyRVNESkR5OG02bFJwR3JnRWFkWlVsbWEKQko3emxTeVhKOGdVc1BBamxlcHJQeUI2L1FSSUpNL1F6ODhCaURKN2x5T1ZmVlZ4SGdCbHBWUFpLdWRTRTZkeWM5ZmlWOXdxQUlEKwp5dkVQQ0NZREFJbURxT0puSDRYeDZ3RmtUTXdEQU1LWHdFeDFmVC9BUFpZMk92M2dGem9Bd1ZVdzJ6d0FJR09IM0ZXT3VhdnNjMWZhCjVjQU80RVBaYXc3bG1zTlgvT0lOUkFnZ2ZSRklEeUR3eW01NnFNU2NBQUNVc3NveDdYVVBzWGNnQkZDMGlCTVZ5bzBKNStNQWloZjcKZ1NTRUx4eUNJWVpMWUQ4UElId0o3R2NBOUMxWitMWnowanJIOG5XRXNnMzJlZXNKQmZEQ3JoUUF5TksrQUcrQ0J1NEJiNGZ2Z2t0ZwpjRW12d053QjdwaTNKTUJZMk1Oc3NDbllhRnU0M3E3UTJqWjN6Y0gwRlFlU2xoOU1lTVVtRWVqSDVBQklGZzRnODBPNTRBc0dIbHp2CldMTEZxVndQb05jOTYzYTYxNEM3NEk4SDMxUGdKR2dnbTF4WS9qbVFyd05RcGhrRVVOYnJoS2cvZVFnY3FPQUxjSEZqL3A4RGFLZXIKeU53dUZnRG9KYnUwVmZhWkd4eXJYbk51TUFUUVI5VDJqMmtkNEJZd0NOemRSMjdaNWRHMHhhM0IyclhPd3ZXSW1SdWMrS1E3TGFYSgoxS3ZXeXJ0bHJXZnJXa3JEWm1yYmg5NUhITmhwQUVBUlFaeGZENkFRZncrT3IvczN0TEJ0WHVYRzNuV21udlhtYmszZzFzVHppTGxICnM2VkhpNWwzdmFsWDNSYTNxay9ka2c5NitkSThXVG9BMFhVQUVwWkVCcGZIaDVRbmhnQUFnU3dGVUYxYXBCNUFoMU1pY0FDVnhJa0sKRTBXSm9UNWhmbFR3UWs2amUzaFF5WUZSTVlWMXpjMm5SMEZhdjRQOTBZM2ZUUnc1TmQ1NDlscjdUMU9HdStVTmkwQ0wyb0QwQnZxUAo2R2ZBQUVDR3hSNllCZjEwank1a2ZMSmJWLzdCMDNVSkJ0Q25TNWZPaVd0RHQrNE5YYjNaUFhHbDZkWmM4ZWhNWEhWbnNGOUFwbEJRCkZDWXFqUWd1RFBVckRQY3ZqZ29wamduUGovb0ZBSVg1c3dBc0FJQUFlcDRBRU5lTnlRWUE4ckpoaVQ3bFZ1d1FITVVCdE4vLzZNSUkKUkFpZ1hkeW5NT2lwQURKNEdUNzJKcmNUQU1pR3luQlpBSkFIemZHcEFISW0yaEFJZGc3Tzh3Q3FFUGdnekhDdE1BSUxpOVhHcHNOTgpXS2s1QUN2QVFFaHVLWFJNWHFVcXZ3eXJiaEw4NVJ2QW41ZGZXZmFDMGZOR3p6OFBLZlR5aTBZdkdBVjkvaWRsWFN1V1Y0WGxWNm9MCnl1RldyOXdLT05od1FUOUFWUGpSRnBxVVBFQWZKREY3b2RrNURiYjdSQ1NpWVlsb1NBS2dqekl3QnFlUHlpOUtLWXhVK2tVcGdtSm0KL2NQdmNnTWxmdUV5VWVUZGdKREp3T0JIdlBCWlFjUURmdmd0YnVCMVFkQ2s3clF2UFlDQWZwWUNTTDhGREFmUWRGUVVBTkIwWE95ZAoxS1Jwb0ovTVJLQ2Z5ZHlVcWZ6ays4VVprUWsxcjNHUDcyVU43ZUYxN3VHYzJNbnJlOU9uZng4UDlnTTk3WnYvZUY3aTRnZ0czNEN0CjY4ZmU0UGQrenNteFliQUFnRHgwUjhFL0ZVQVVIeEtMNDBybk9aSFpwTGlneEtuR0dXVXpwdXBDMWIxYXRGK0xEbW9BZzVEanFPcUUKV25VS1VaMVJJMmNSOWZjb2NsNkQvS2pGSmFUU0JUdVB5WWN4YkZ5akxQcE85Z1pYdlllQ2ZjQlNmVVNiK1ppbC9ZaXQvcGlwZkllRwpiV2RLdmF0dmZxZStleHk3MDYrK080QUFCdDBkVXQ4WlZOMFpSS2I2TlZNNGdIbzFlZ0RoK3JuVWkxN3VSSy8wWWhmYjFXUDkyTmdRCmRxRmJkL1JwandKSTZNbnlqM3JrUERyMkl6bzZqQUQ5akkycXg4WUFmWkRSQ2ZYSUpaalJFY1hsbTFqcGtHcWpjODF5dDZiVlhnMFcKNUNaanp6YncyeDBlOERzZWlEVzVIV1F0cFVPZmRWU0FvYzcxdEs2RnpLdG9VZlRpd2U4Q1ArR3hKSGV1SlRkWmtNR3ZzcmtrUDA3dwpxWll3VENOV1NOSVU4aXpGdklHSzVTQnlrQ0taTEc5T1ZxbEFEeXUxQlhQeWJLVXlDOU9reUtScE03TnBVbm15VkpZb2xjYkxwUEZ5ClJheGNIaVdUUlVpZ2U4TGd5dGQ4N1NkSUlnbVF5RUNlb1o4bkFBVDBvd2NRNzVHQ01mZUFPNnY2SU9Qb2FvZWlWUTVGeHM0bEpvNWwKWnFUQzVTN2xWczZsMzdEOUEwVmVVUUVzc1lqOHZ3QVFDQURRWCtuQ0xTNEpLeHlMZER2Ym53QVFqcDVmQmhDKzQxdG5JR01idU9mSgptbEFNcDk0c0FSREFBQURRbW9QZ2s2ZXV0RTllU1VqZjdSTGg2YzhQQzZIb0FSUVhEb3RBZWdEQi9Hb0FNVGowbndIUVFZcmdYWmY0CjlZNmxBQjZiN1BNMk9CU3VkeWpmUkNoZjUxQnNiVitJUjYrZjlYYjVSbXRzc2tETWJMTG5HNlR0Q3ExMFdYOG9mNjFOcnJWdHRwbE4KcHZIQkZCMkFZSFQ2Z1FBeVBaQnRkakRId2lZUFBIaWRYZEVHWXVsV1VzVnJybkQ5YTYvSEVSeEEyNXdyMTlxWEF1Z1lIOGpTdFFGbApnQXVUYjdQMUFMS0dBSXI5azRmUW5rYlJBY2p0dndLZzZPVjI2Uy9acDZ5MHl6QUUwRHZrRm9DZVR5anRuMUk3d08zSDVMWVB5SzF2CmVqYnZkVy9hNGx4blRhd3hkenBzNWd6Nzh5M2NhaTNkR2t3OERsdDRObGw3TkZsUmpvQmZhOTd4T21MSHpnenhZd0VBeFFieGZpV0EKUXYyOHVBTFh2OUVEdHJzWGdVOW83bDVuN2RKaTVWRm42bDVyNmRKbzVkcGc1bkhFeFAzSVJwZnFqMXpULys0WmhBT0lSbU1BQUNVRworQUlBbGNVRkF3QWRUZ2pEQVZTWEVyRmdvSjhEVUlhWWx4Yk9qUkhSQTNodUxBYUpRbmVIQXhVWTlLRDR0SUw2OW80ekY5dS9HMms0CmNSRVlxT25jMVNPbkx1RmI1WmN5eUxBdDJ0QkEvNmtLVU4vd0xaQ25jR2Y0SnN6QzNhNngrWFNQdzNSTzNNSUIxTG1RN3ZGTDNaZkcKZWk2UHR0MjRsL1NkOUVEU3lXOFpxVEZCb1hraHZzWFJvbHl4WDBhb29EQTJ1Q2c2SkM4c3FEQWk5T2NCRk9ySFhBUWdBV3lDOXZMaAplREo4bkwwWnJyWk0vMC9aeGJ2QUM2b09RTHIxcjc1ZFhCZ2NRSGlld3FDRnR0eEZlWU0zOUNhdi9iYytHVFpVR2c0Z1o5bzhnUEJCCmlJc0FaTzlnNStnQ2w4Q0VBa3FKZ0tWa2hHcDRZVmhRbERZcUdaNjFucFN0U2N1RkJadXNFbTEyS1d6ZkthclNsaDQ1OE1aK0lKOFgKWDFrRyszNmVCL1I1L3JrWGpGWWFHWjFnaHlpcmptQ1pKVmhPcVRLbkJNMHBCeDhGUHpaemZwOFhuRzJvRys2TUplVnFFckp4K21paQpValg0VnErd2VDUTRIZzJLbTZlUGZ6UjBqekJTN2hzaEY0Z2YrSWJkRTBWQzMvQkZFbTd3RENkSTZpOSt5QXA5UkErWlpZYk04TUluCithTHJ2aUk0N0ljZmhOTm5FWUR1QmtYY0RwNmZBSFE3UEZKZi9wbU9qWmxPaUx1YmxudzdNMmtxSzJrcUx4Vmt1aURsZm1sbWVtck4KTHM3Z0h0YXgzZnh1QUtEZHZONzlyTDU5M0dlT0oxajZqT0FCVHlzRUVPL0VQbDdmWit6Y2d3eW1HODNlblU1NEZvQ29iR2NBSUJvWApIaE9XR3BvK1hTK1JIOEdVclJwMU80WjJZV2d2aHZaajZDQ21IdEtneDdUb0NRMXlDb1U1bzBIUFliclZNUzJJR3R4K2p5bk93dUtRCjVvSmM2MTRtMitXajJVbEYzbWRqNzFDeHozMGtlNTNsT3p3bDdnWFREVGZtVG1FUCs3QzcvZGpkQVExd0Q2NmY2UUVVQjlDdG5vWHkKVDQ4RzE4OUVEekxSbzVub1VsL3V4WVk3ME9FdWJLUVgrNmtUR2U1VmovU3Bob2VRa2FQSTZBbk55Q2wwb2Z5RGpQK2swZXRuZkVLTgo2MmYwTWpKeVNUVThvYng4RGV2NkFkdFBybC91MnJEY3M4SEVzOEhZdmNYY285WENzODBDU3FnZHhNcTdBdzh1SVQyR2NBYUJHTnBvCnFaUDBEOUIvT1B4c1hnMXJQSnZmOXM0bStiTDlCK3FDTk9wZ3RTUkpKa3VSeVRQbHlseTVva0NxaTB5ZUw1VlZLTENDUjhyY1I0cDgKR1pveEkwOTdLTTJWSVRsekt0anVJNU9EQVBwRXk1V1Jja1c0VEI0R3F6N1NZQm1zK3VDRkgwQWZIRGZQQXBCd2JuWXBnSGd6RXU1RApPVWN1WmQ1VjdRNXJNN0dEZlRsbXJtVnJITXZNaVFYTFNXVldwS0p2T0g0NkFERUFnTUtDbjNrYS9LOEVFQURXYXNmYzVjUjhmUCtYCm1YMnhwVjJ4bGUxOHdEV09vYVVBTW5Zc2dISElON2JMTmJHRmU1NEFnTlk1bHVMclh6aUExam1VV052cjlwSFo1Sy81dHNqVUptV2wKZmRwS1F2Wk9rdGpkVHhBZVNvME80UUlBUllmeG5nVWdvSjlGQUFvSjRBTUErZXNPUXhYNHNuRUFVWmprWndISWx1THp2a3ZNUm9lUwpEWVN5emZhRkd3akZHNG1WV3h6TE56b0JxNVZ0Z24vaDBzMk94U0NiSElwQWpJeS9UVFU1a0daNktBTVl5TkkySDljUDdHYUNDMXM1ClpyYnBxMjJUVnh4S0JBQUNXZlZ0Q2c2Z05kOUNBSmtmeWdVZkF2U3ozcjRZL0FHTEFMVEQ3ZkJXcDNJTGU3ait0ZkpnK25LZ3FFT3AKS3c2a3dlN3BnemttaDlKTkQrWmFIY3plYXhmM0IzZWhIWlhzelBodkFHaVhXL0NUQUtyUUFhaitMVExzQVRJRUVORFBlOTR0YjNzMAo3M1Z0M09wMFpKM0RZUXRDbGFsamxibFROWWlaVSsxcWx6SlRIWWJNUENzdFBldmY4RGg4a0FVQkpBNWtBd0RGQlhFU2c3aS9Ca0I4Clg5ZC8wQVhiM2JMTlhTdlh1ZFJ0SnJWdWNtOVk2MWEzM3JscEk2bkIwclhXM0tWMm8xUHRlODdaMzNpRVVUMThhR1EyQkJDVEJRQlUKTEE0QkFLcUF1OENlQXFENlZERU9JTGordFFDZzhzUlFBS0RjYVAvTVNOL29ZS2FRN3dhYkVqZ2VkSmFYTjhYRGxVcnhZTEtDWXhNcgoyM3E3em82MG5SNXRQRGtNME5OOFpnTGZNcVkzMER5RHZyL1dkZjc2VWdZdEhRdTBGRGUvSm9aTFhZLzFBOFF6OGxUOVRBTDZQSTRoCmdDYXU5VTNkcTdrMHhhMC85NmxvNEUxV0Q5RzNQREZZbkI0bXlJcnd5NDRPeUk0S3lvMFdGVVNHRkVhRWxFWStzd0lFZ2dOSXlDTUQKQVBINDN2NENLZ1FRMXdQdUF1TjRNMW5PRkFiSmxzSDl6Q2NmRU9kMVlkOCt2MzdkK2xmdlRnN2NBbVlJb0tVR3dnRzAxRURnVmZZdApidXR2ZmRKd0FPa21RVHNEQU9HbndSdnVBc01CWk9zNER5QytnSnp2eTV4akJDdTR3VnAvc1NZOEhoZ0lUaUJNaGdhQy9Ub1p4Y0F4CldGNkZPcS95NHczcjRPRG5GNTQzZXU2RkZTOHROM3JPNkFVam96OWFiNUpubHNNU1VXWXhsbG1reWl6QzBvdmhtcGR1Mld2K1hBdlkKOFROL3B1bjhzbGRrQ2dvTFAvRm9TSnhhRklPdmVRSDM0UFNSK1VWS2hSRzZoRTl4L0lGZ0h2cEZBdTVvMk5Fb0oxck9qMzBRbkRqRApqNTZqaDByWjRROTh4YmY4UWlhRkl2RElad0VJNkdjUmdLWmlvbS9IeFU0bHhkOUpUNTdPVElMclgzbXBrd1ZwVTRXcDk4cXk4dE1xCmQ3SDdkdmtjZTAzUXU0dDNiQmUvK3cxVzl4N3UwQlBQeGE4QTBDNSs3MTd3U041SmNBdWU4WU4wbjU4SEVLQVBVd2NnVHdZcExUVHIKMXVHNXVVcE1XbzhvR3pUS1pvMjZUWXQwYXRFdURkS0RhdnEwbWdHOElJUkxTSXVleG9DRWtMTmFFQ2xrRUtZNHBaVGV4TkFqMTJZUAo1dDdldzUvYVJyKzl5K3YrRG85cmI5RnYyNmZmckJxYnVJQTk2c1h1ZDhDT0gxMmdnVzRiQU9oNmo2NzN1VWR6dFZ0WCsrbEd4cnRSCmtJbGU3WGdQTnR5bHZkaXArYWtUQlFDNjBLY2VPd3FYdy9EeXoraHBaUGlzZXZSNzlkaVB5UGhGelpodTVXdHNYQVgwTTNZSkFmb1oKdmF3ZXVhSytjRTA1ZmdXMkFYMHA2RnhPcW4zRm8zNlYyeEVUNXlZejl4WThpeVQwSklZNjhheWxkT2xsOHpQQmkwbnpoU1d2VGl0eQprNmxYQ3dDUUM5K0gwMWJ1cDFBRXFLV1JVbW1NVEpZZ2w2Vko1Umt5UlpaVUJydWJKZEswT1VYQ3JEUlpya3hWcXRPa3lreVpPbFd1CmlwNlppNUxKSXVVd3dEMGdvVEpacUV3ZUxKTUZTcVdCc09OSG9ndTBEajdsK2FuNndRR2tNeERjLzZYVHp4d09JUFpEQ1UrcGRCcSsKdTU1NTJNS3UzSnhZYk81U2F1NVlidTZVdDhLcEdBRG9yMnpoZndSQW01M2psenNVNmdHRTcvK3lXQURRV3IyQmxnQUk3d0V5Y1N3QQp3VStUQVBxeHRDdUV6Y1VPSmNBOUlMaUIxanVXNm90QVpvZUtJQjRJV2FzSWVUdUlVVzVDUVZnb1BTcVUvU3dBNGRkNkFNV0VDUUdBCklrUUNmQmVZSGtCY0Fldm5BV1JQcFgvb0dnbDlReWpmWWwrNENmd05kUUFDT0FGNTFibHltM1BsZHBjS2tOZEk1U0JHeGdlU1RRNm0KckRtWURvdEFOckM1Q1JySXR0ak1Mc2ZFTG5PbFRjb3JOZ25MRHNVdlA1Z0E5TFA2bjJrNi9Ud0drTFVOQk5BR1Fza2lBSUdBNnkzRQpNdkFkWEdXVCtjcWgxR1UyeVRDQVFRZlRWeDNNQWdCYWN3Z0NhTGQ5d2gvYy9lMG9GQUFnUUp6L2V3Q0pMT3hqNWdGa253WUI1RklICkFJVHZBdnVRMG9ZdmdYMUliWCtQMnZZT3RmVnQ3OWJYM1pxMk9kV3RKeHkydEs4MHQ2KzBjS2kwZHFneUkxU3VBaUltbHBnUVMxYTUKRkppNFZPNXhLZnNuTXoxWXlQeVhBU1IwK2llRHU4TTEzY3E1YkJPcFlhZFQrMDYzaHEzdWpkdWRtN2M1TjJ4MHJyRWcxV3h3cUhuUApNZWRyMTRoNUFGRlpFRUQrZmpvQWhlb0JWSnNVamdOSUZ6RU9vTm9VWFFPUURrRFZ5ZUo1QUVYNXBVYnd3NEo5T0FKdktzZWR6dkZpCnNyMFlESGNHMDR0QzkzUW5lM2l6MkdFSktSVXR2ZTJuaCtGT3NkUGpoZ2JTRDA1c1AzdWw0OXhWdUdYc3llM3gvNmwrb0tmcloreUoKYTV3K1VEOEdBT3BZQ05CUCsrWEp0dXNQTXMvZkl4YWUzeS9vMk9IVC95Ry9qeVRJamZmM3p4VEQ1RVNJUVBJamdzdGlJOHJqeElYaApnVDhQb0JBaHd4QkEvanl5TDgrVHk2WDRzQ2tzSHhjYTA0bkFaSC91azd1YjA0Y0RTTGYrOVhRQUxUS1FIa0NMRExTUE4vQVdyeGtICmtDdlpGZ0RJaGU3aVRTUGlBUEtpT25xREN3TUEyVGpZT2pnVDNLaE80RDlDaGkvOURpTndsaDJvOGc5VEIwZWpZWEdhcUdRMElRMmUKUWdyZ2twb1B0MnRsRkt2VFN2WmJta0lBUFdmMC9Bc3Z3VGFnNTR4V0d4bVZmdXVDRmRiQVlZWlpCZHIwUElBZUxMVVlUUytDQzE2NgpOUzhON1BpQjR3MjF1aFBkZ1g1Z3MzTjRQQklhaHdUSElrSFI2c0JJUlVDMDNEOUs3eDZKWDhTY1VEenJHejRqQ0g3Z0YzclhMMnlhCkhpVGp4Y3o2SlhVNFVxTysvS2Jlblh6WlAySldFUE9RRVhLWEEvUVRjc2MvNUw1d2Z2RUxCTjhEYndpZ2FXQWczUVo0ZmZzekFOQjAKY3NMZGpKVHA3T1JiT2NtMzhpR0Fwb3ZTQUlDSzAwdDMrM1R0WUI5N1ZkajdHdmZvYmtIUFBsYjNidTZ4UlI3Vk0yZ3BmUllBQk5qVQpEd0FFbnE5UDJJVTRnRndaZHM4RUVNK1p3WGFoODV5OW1NN3BJVG5YeW1jZWxXaG5xbFNTYXBXc0JsSFVvNm9tVk5XcVFkbzFtazZOCnBsdUxES0Rvb0FZdkNBRUpxVTlnNnBNYUVHeEloWjNTb0VQcW1kTWE2UWltcmJuN01QV0hPMkg5dDFrdER4bk5rcmh6OHVhNWU0UFkKeENCMm8xL3pvRWMxM1l2ZDdzZGczODhBcXRNUE10bUgzdXpUUVAxMG8wQS9WN29Rdlg3R3VwQ0xYZWh3dDJhOEh4c2IwSXowSVNPRAptdUZCellWQjdmQXhBQ0ExWHY3UnJYK3B4MzlDSjBaUVhEODRnUFQ2QVRsN1F6RjJWZkhUVmV4UTVJbVhIU29BZ0ZhVGpwZ1JHNDFkCm0vQ1l1RFd2Y1c4Qk1mVm9OVjNBME5MaWtKNUhpNkxYRW43MzhZZDd0RnQ0TlpoNHQ3M25uZWZpdzZKVjUvamNmeUNRUFJMSzVnSVYKYzJFS2FaUkNIcWRReE1zaGh1SmwwbGlsTWxZdVQwVTFNYk9TYUNsOHIvK2orekVZQ3VzOWN1aWVFRjJ4UjZSekR3Z2M4YXlMNGRsZQpncm1uNjBjUElIenJPdzRnb0I4UXppTXBSNjc4Yy9mRjFjNEZHeHdQV3hKTHpKMUxMSjJxTFloNUs0bkYxc1RDYjN5RWdjRWVBRUFSCndaVHdrQ2ZtQVAxNkFIMU44d1VBZW9WUXNKSlF1QWhBNExWK25WMEp5T002MEFLQTlMdkFWaEN5VGV6ejFoRHlnWDRzQ1lWVzlrWFcKOXJEcUFWNzNOeERLOUFhQ0MwKzZJaENzb2RpVldST3l6WWk1SnNTaW5VNnhyZ0xmMEJCYVpJalBzNWJBbGdJb0trVDR2d0NRSTQzNgpzWnY0VldMUlpvY0tBS0NOaEdMZEVsanBac2RTb0pGWFNSVzZmVm93dTF5clFJeU1ENmFBNEJVZzNhRG9lUUN0SWVTdXRNdFlacHY0Cm9rM2N5ellRUUt2L21XTDhQMms2L1dUZzYxK1dCM1BYMmhiZzM0aW5BZ2o4cWNaMjJTdHMweUY5N0pKZ2RBWmFlU2hqQVVDNU9nQUYKL3RjQXROczlXQWVnMUVVQWV0ZHJIa0N3QVlqVzhRRzk0ejE2K3p2MHRuZkliVzk0dEd3bjFRTUFXZGxWNmxJQlltcFh0c0l1WjZWOQoza3JiM0ZjY01sY1NTM2M2RmYrRG52cS9BSkRBai9RdGc3M1RKZFdhVkxiTnFmRjFZc2MrMTZaZEhpMjdYVnAzT1RWdUp0VllPZFp1CnRLOTkxeUgzL3prL0FhQUVQK0VDZ01MK1ZRQmxpUVhKWWtGb0dJOGJ3UFRtZW51d1hHa01GNDZQTzRmcHhxUzdVR251WGpSdloyK0sKQjRzZmxweFQydEtuMnhUMjJFQ1BHZlRkWldBZ2ZSMW9hVXZRdjFrSFdncWdlZkVZWWtpdm4vSEpqdkdiaXdEVWRna210dS9IUDBSMQpibVVON3ZRYjN1Vjc1bU4rSXprd0l5M0FOemM4S0RjMHNDQlVWQndXVWhJZUNyNmZoUkdpZ29objdnTFRBOGdYL1BON0VrQThIang2CmtPUGpTbWNSSFZnK1g3QnpEQUcwaTl1REEyaVJmbjQxZ1ByZTVEWjl3VXEycFZJTUFPUmtDQ0F2c29NZVFJY0lOa1FTQkJDYjc1VXEKb042aSs5OW4rOHQ4ZzRGRmtKQVlKRElCaVUxUkoyUWd5VmxvY2k1QURKWmVyRTR0M21leHhtajVjN0QxeCtqNVY2Q0NYdHhsc1VZYQpWNnpNS2NmU2lsUlplZXEwSExqRlBha1FkanJqemM0Ni9lQm5tcUp3dm5PNkppcFZMVTVTaGNYaHc1MVZBUkVxUHpHdUg0bXZHTGdICkR4endJd2liNVFZOTVJbnVjWU5uQlZIMy9STFMvL2p0bHVmZzhXT3ZHUm5sZjJ0N0p5anVFUy9pTGk4VXR2NElSZmY0b2tVQXdodUEKY0FEcEp3QVpBdWgyU3VMdEJRQUIvVXdXcFU4VnA5MHZ6eTVOTFFJQTJzNDV0c1d2ZHp2djZDNWg5ejU0WFBuUnBUVTVQRXZwc3dSQQpRNS80RkIya3MzOFJRSFFmWndiZmhjeDBTd3ZPdlZyODZINkI1a0daNG1HWmZMWlNJVDJzbGg5Ukt4c1JkVE9LdHFMYWRxMjZGMFg2Ck5EaURrS05hOVRFTmlQS1lCanVxbURvalY1N0hsSjJxaDJjeHRGOTc3M3ZzM2ptdGJCQWIreDY3MW8vZDdjVHV0R0IzNmpCWTR4bVkKbWV6V1R2YWd1azN2YWp3MzROWjNGT2puMm9KK0pycm05VFBhaFZ6b3hjNjNLWC9xVW96MHFYN3FsZi9Vcjd3NGhGMDRpZzBmVStrQQpwQjQ1b3hvNXB4cjlRVDEyUVFlZ01hVUJnR0J3QUoyNktaMjRyaGk3aWJrbG4zL0p0blFlUUk3MXE1d2JRT0RXTUJlSUljQWdQR1p1CnJTRG03bTE0b0dQd0dNQm9LWklNOVdQdTBRcGk2dHF5eHFQTzJLdjFYYTljSnhyTnZTQ0Zjdk1XKytFZGxtS0dvNWdWS2lRaWxUUk0KS1JNclFDVGg4cmx3T2R6Wm52UlFrdmhJRWdtZ281SUdxcVFCOHRrUXVRd0VYKzJDUGM1emN5QUJFdG04ZnFSemV2M3dKVEwrd2tMWQpFdjFJbmdVZzdxeUVPU3QvdjNMb1padk16VTUxYTRrbHBrNUZWc1JxSzhkNUFQMlY1UnNnY3RjQnlQdmZBZEFtVWh3T29GVU9PYTg0CjV1a0JaSzNURDRoaEVVaS9DOHpZSm1lbFhkWnllOTBBUDl0Y0Mvc0NLd0tzL2NBMUgvc1NrUFgycGJpQjRFWXdZcGtlUU9zZEt0Y1QKODZ5Y2k4MmN5M2M1eGVNQWlnaG1QYXNKR3VvblhQanZBOGlKVHZuTVBSd0FhQ3VoWXF0dDhRYjdJbDBUZFBGNnUwSndEVUN5alFnTApQemlBOXJoVkc2MCtrR3A4TU0za0VOeWdqbThTczhCblFkcm5tdHBtcnJaSmhldGZoeEpYSGt3R2oxeDlJTjM0Mjh6Vi80UVZJQXNiCk9QdG5IV3dBZ2l0dFc1d3F0cEdxd09mZDYzNTRuMmZ0WG84YWNCZDhtMVk2SkMyM2g5dkhnS1dXMnlZQmM2d2lwSyt5ejF4clc3alcKdm55VFE4aytZdEx2M0FRMkZHOVhocnM3dzhPZDRRWUNYbzlCZEZNUVhSY0dJWkowZ3hCZFhjRERkQUNpYzhnK1hPcXpBTVRqZTNJRQozZ3krRjB2Z3dlSTUwWGxPWGp4UE83cm5mamVSdVVQVXk0VFVGWGJKYTJ6U0xKM0tON3ZXditIWk1BOGdXdHRIOVBhUGFlMGZVZHMrCm9yWjhwRHZrYTc5bjh3Nlh4bzJFdzlhMjFXdnREcSt6clZ4N3NCejhFMWxoay9PeWZUcjQwbDYyU1Y5dWw3K1ZtUE5IV3FaUUNLY1gKeEFYNXhBZXk0a1Q4MkJEZnhCQitldWo4UVdENjB6QndBRVVIMGtXQm5yNENOMGNHZTc5ei9GcEM5VlpTMng2WHByM3VUZnM4NnZhNwp0KzkxYVh2TnVRSDh4OWhtWDd1ZlVQQzVjNUtMTzRkQzRUUElMQUdkRVJmb214OGRYQjRqcW80WFBRdEE0T0pJYWdRd0VMNE52aklaCjlnQVZ4WXV5bzN5QnljQy9TRjhoRmZ6V1NtRjVNbndvZEFZWmhNR2swT2plVk4zQll4U3FwemZaSGR5TmpNbzczSGFpOWZ6bHB1OG4KbW82ZjdUeDZ0dlBzcGVydkpsdk9YQU1BNnZwK3ZQUGN4ZTd2TC9hZUgrLzk0V3FQQVlZV3QwV1BUT3ZUTnp5bEQ4NGQvYnQ2Ui9XQgpqYzlQNGM3WXBjSHJVMTFqMXp0SGI4QzdvemZ4M3VlbUs1TXQ0emQ3eCs0ZUhYL1VQWGE5ZmZKRzRjUTljdlhvSHNIUVBsN1BYbjdmClR0OFRyL21lK3BUZlJCYW1wQVlKczBNRGNzSUM4K0NwRjhFRmtTSDZnTHZnallBK3VINHl3d0xTUXZ3QWJ4T0NCZEVCbkNCZkdvL2oKQ1FBazRIa0g4Q2tCWExLdmJoWE1oK2RKNFhsUldLNnVETm9mMmFtd3J1QS90RmM0c0l2ZnY1UFhCOFB0QjluQitSa0c0WTNTajdPSApQd0QzejNQUGZzQ3UrWm9aYWsvekpsR0p6blJIVnliUnpRZnVBdk9rRTcxcERwNFVlN2dOM2hNQXlON1J3ZVlRa1dUcjdrQW1FNFVjCmp3US9uNk5zNFN3OWNGWVFvUEFOVi9sRnFFVXhtdkFFTkRJSmpVdlZKS1pya2pPeDVDeHBYc20zTzNhdmhBV2dsNTkvYVFWZ3lITXYKUE45QXNKZWs1bUtaRmRya0lpdzVCNHROeGxLejVDbVpXQkljOEFNSXBVaElCMUVucEduaTA3QzRkQ3cyQzR2S3dFSlRzS0I0YldBYwo2aCtsOW9kSFc4ajhvcVhDcURuZnlGbEJCTWhEZ2ZnQlAvdytMK3l1SU9RK0wrUWhLeFRoSlNYWUVvMldBZnc4LzZMUnkwYlBQMmY1CjBrc2RiRCtOVDhROVFkQlZnZC9Od0pDSDNMRGJUM1pBM3c0U1R3ZUpiNHNpcGtMRmVLYkRJbTZKeFRlakltL0d4OXhLaXJ1ZW5qS1oKbm5BM08yRTZML1ZxZnViVjRyekpzcXlIRldtNWFSVmJtSDFiaGNmM2NGcDI4STd0NC9TL3p1M2R6bis2Zm40dW5MNjluSjdkM0NIdwpESDdFS3YrV0puU2pPbm95YkQyWlRsNHNFcTRmL0JoVW9CODYxNTNPOFdCeTNLazhvZ2VEbUJhYTgxUFc1SFF1Y2oxdjVuYlI3TjBTCnlZTnl5Q0I0NGxRdHFxN0gwRVlNYWRFZzdSalNDU1NrVmZkckZBT0liRkF0R1ZUSkJoSHBvRVl5Z000T2FHYjYwUWQ5bXZ1OTJudDkKMnR1OTJIUVBOdG1sdWRtdXVkcUt3clJvcnJkaE56cVFXMTJhcVI1c3VoZWI3TVZ1OVdodmRtdEFyblRCWE9yV1RIUnB4em8xb3gzbwpjQWR5c1IyQnQ3QUloRnpzZ2QwL0Yvc1JYZmNQSEg2SXR6L2ozVDlqK002dkVkWElBbjNHcmlEL243bTdnR3Z6NnZ2SHo3WjZLVlozCjkyM3RmUGR1Zlo3YjVtdUx4QU9CUU53VkNNSGQzYTFZcVNIRnRUNnJJUldLUTRKcnNDSmRmK2RjRjZRTTJzbjliUGYvdjlmbmxWMEoKYVFvSnpmWE9PZC92T1krYXB4KzJ6anhzblFLNXBaNnViWnFzNjMwbVNyaXZiNUpvUUVyVEoyVHBrelBYbUovVHN6aXZUN21nUjhsQwpnMHJJa0pvTFk1bGphSG5KQUY1RnhvZG9oWHJXZWZvMjRLQUFCQnhvajdWVUF1aEI1OVRRUjloQU9tZEF5VjFKeXpyS2pLZHk1VndmCkFiK213cnozaWFCZkxlenZFZzcxQ1VhR3hhTVRDczI0Qzh5SS9jU1lZamFqSU1yeFVlVUVIQ3V5Rysrekd4K0FHUnV5SFIrU2p3M0QKakdwa28wT3lrV0haQ0hTUDdjZzRFbFJDRTdZalR4UWpFdzRqRTQ2YUNhZkJjUmVZVWZ1aFNYQ0wvZkN3dUs5WE9qeG9PelltR2g0UwpEQTZ3WnZvWkRjTzcrYm1iaVJlQWV3emd0RmNHK0xDOXh1SzBQakZwSFRIQ1dDQnljYUk1Ty9KOWxTdzNGNWFYTXcvSmMvMTRPZ3BCCmdINWV1QkNpV0VwblMvaWZNWlU3U1VGNjZIckZ1TVMxaERUZ25vM3pSbjNRZ0Z2UUtUQll5SXlOQnlSWWc0dGNnUTFkamd0ZGlRbGYKaFlWOTAzckVCTGdLSWg1aEV5WjFDelp0RzM2MkRBZ05NQkFFRURsak0rWENEa3JhTGtyeTYvUTRrdGpGVThueGR1SDV1RWg4WFdlbgp3TkM2bjlrRytKZU1BTTB2Z2tZQnhKZnc1aFpDWk1LRkVQa01aRGQ0NEFjV2hjK2lzTVQvcERydEpnV3VOMC9hUUVyY2dJbmVoQU9rClNUYkN3UTFRTitNVHRoR1NabXVBeUtlM2trOC9CeEE2QXFTdGd3YjNCZ0RTTlFzRitsbHBHb2dDU004WUFrai9WSlNoQ1N3WVFnRzAKQlorc0JSQlFsUlpBZXlsbnR4RlRkUWxocS9HaHV0Z3dFRDE4bEFFeHhvQVFaMGlNMzB3OERldTBpU2xIU1VIL1E3WERzSmhVdnMxLwpIMERyeUdrb2dONm1YWm9QSU1SQStYL2d3R1dCanRIekQxcm1iaWVlQi9wQkFiVFJMQjBBZWFWWkRBRFFDbHpRY216a1NselNDd0hrCjcycjMwd0J5ZHFUYjJWTEpmQ0VDb0V3dGdONmdaUit6S1g2ZFduekE2dEl1eSt3OXhJdXZFeEwvU0FtaVVFVU1sb3lEQUNqUXdUYkoKR3dYUWJCSDB6d0lvSTlqdEZ3SUlaQlpBREJxSHc2SlRyUzA0RXBwSFRIRCszZnlxenFMdkgrZCtVM1ArOW9PY3J4dnlielhsMzIwbwp1dGRRWE5WWVZ0MWNXZDFTVWZWODc3QUZBSnFQbmdVQW1tK2orUUJDMjc1bURZVG9CK24yYWk5NTFGTDBvQVdnNTNKVEY5cjJWZnk0CnZiaXh1Nnh4b0tDMm9hemxRVVdYS3VKYkZTN2k5aHVDM1BrQUFnRUFZdHVIUkRyOWxnQ3lsZExtQStqZlFnaWdvL1pYRDl0ZUJmVFoKTDZtQUVWZUM3Qk5WSEJCWEhuZ1JnK1lLcFJjeWFCNkFhQkJBSEhNQUlDc0JYQWZvaFFEQ2tTeHdWQ0tEUlphS3JYM3QrQlVpdXg2TwovWkJZTVNwMUdiZHpuM0R3bW5MeGc3TlVua0Z3WFdiL3NHYytvUk1SOFlGbVJMZ0p4b3BYQVVQVzZPaVlIVHcyRVJUMkxEcGwyaS8rCmlWZlVzd0RnbTJBQW5abmcyQ2x3ZTBEWU03L3daejRSejN3am52bEhUUVpGamdTRmovZ0VhendEeDF6OUo1emgvTmVrSTJ4MEg3QjEKQVFEUzZtZEk1Z0VBQlBUVEszSHRsYmwwOEpVYXNYY2QyL0ZEL2JVNnI4SDV0Nld2cm56MTFTVXJkWFE4UHZ0cVN1STFZTytpbGp1MAoyVHYyeWQzbnQ0QjFLbDhNSUxXbnA4ckhHd0JJSFJMUUdoblJFUm5TRmVYZkVSZmNuaFRWZWpwYW5STGVueDRTRm5JV0FHaVA3YzFECm9nSVVRSWNsbC9kSkY3OGNQeHNBb01xRDRxc0hmeG1BT0hEN0ZCdXUzSUl1SVBzclErOUd0clJHalRiR0RhZ1RCanFUaGhZWTZFblcKRDA5eXB5Y3V6VHdwZVBxazVPbEUyY3hZK2RSb3haU204c25JNWVuaHlobVF3Y3FuQXhVenZlVlBlOHBtdXN0bmdINDZ5bjVRRmYvUQpXakRkbEQvZGVHbTZLUTh4VU5GVWU4bU1HbndKb1U5YjZReEljK2swMEU5anlRK1BTNTdXRmM4OExKcCtDT2tERERSVFcvSWNRTFdWClB3TFF2TzczNXdDQytua1JnTzUxUElVQTZ2bEJrdlRRME9TMGtYbUdBVDVMajVpaFJ6cXJUejVuWUg3ZXdQeWlIaEo5aXl4QUZnT3IKSEVRL2FDQ0FqTkFKTXVRQThVMmVOdkFXcXp3a3FKbHl3SU1BVjRHc0k1NHhvR1N2cEdRZW9rWllDR3k1TGd4dWFZWk54eUN0cTUzVgpxZWIxZFBINit6ajlmZnlCZnVIQWdHUm9RRGFtQVFHeW1TWE8yTER0dUFhaVo2d2ZqWHhzRU1uc1Y2WHpBRFJuSUFnZ3g4Rmg1ZEN3ClVxT3gwd3hMUm9ZRW80UDhzU0greEloa2JGdzJPaTRlMHRpTlR0b05UNGg3UitTREV5QzhpWkZQQ21yV1U5TTM0TTZ1SmNHOXhxRjcKY0ttcnlVbDZCQ0NWOE44S1FMdkl3ZnI0aEhWSUd4UUEwQUw2ekovL21nOGdYV3dFQU5BeWJNZ0tUQWd3MEdwa2ZXZEQ4RGpZeEkyWQo1RTFtS1FCQTJ3bXpqV0R6QVFTcm9Va1oyOHhUdGxPU2pqSUFnTndBZ01CM1BoOUFzeU5BdnkyQTJQeS8yeWgyRW4zWGttS01pTEZyCk1SSHJzTkg2MlBqNUFOcE9UQWFYVzVDbGdHWUJCSHV5MENrd1BKd0NnOTg5SHZuNXpVTFI1cTlWSnNISThFOEUwQStJa1drc2dDU2cKRHdxZ2JjUVVBQ0FnbmtQVXN3QkFSMjNPQXdEdHN6eTNnNXkrRmgrSFpqMHhZUU14ZVNQcE5KSVVnSy9OcFBSdGhOT0hDRUYvczdSSApBV1REcC8zM0FiVGRNdXQxbSt6RkFBTDZBWG1QQ2N1QURsbGQya0c2Z0FKb0l3UlFtcUZwM0FwTXpBcDh4RXBzMEFvcytMVTR2WnNjCi95OTJ0SzJ0ekYwcDlWTUtmaUdBM0J3WjlyWlVjNEhnT01Wdkl5RjlwMFVlQU5CUjZpWFlsazh2UFdaZENqQzBuM3BwTHluckNDSHAKZllzUUVoV2NZMzhFb0ZRL3A4ekEzd3hBUUQvUEFjUmxzOWxNSnBNT0x2bDBhMk5yMFdGajIzMFlQMk9ud29CTGpUbjMxSmZ1UGJoNAo0MkgyZC9YWnQ1dXo3clRrM0duSnZ3dDNFeXU5WFQrL01ucitSTmhpK3FCWm9KL0t1aTQwRlk4N3RHdjh6Tk5QUjJWalY4bWo5cktHCnp2S21UcVRucTcyMFNWWFdyTDdjckxyUzFsMm1VbVcxTkhoVVZuL3FkZVV3cCtLUTZDWUtvS1B5eXlpQS9pelA1U2hDbzV6dGZ4WkEKUUQvekFSVGdKTk1DU0N5aExRWVFSMkxERVZoU2VheFBoQ0dIWkNWSDdLNGRrbDhCOU5rbkx0OHJMQWYwQVFFSEtJQzBXWFJhblkxMgpwT0dnNUx2M1JXYy81Ym1nQUxMOE9RQVI4T1lrS2l5UjVvdXQzTzBGZVNKWkM5dDJnQ2NmRURzT1NaMUhFUU05Y2ZJQkRKcDI5WC9xCkh2ak0xZmRaVUd5clovQS90MjUvVFVjSE1JaTAvNURLM2cvYytNdzMrcGwzM0EvZTBSTmVnZU9lL2o5NGhEenppUHNoT0d3cU9IdzgKTUdURUwyamNOL2dIbi9CbkhtSFBuRU1udlFMZy9KcEh3Qk5YdnpFbmI0M1NXK1BrTStyaWgrb0gwR2RRNm82Ty9RRDk5SWhkK2lYTwpBRUJqOWtFdWYvZ0hNdmdFSjk0QWdkRGxwei9mdXh2OFFlQ25mcmxUbTYxVEQ3SVFZdGZjR3REekFhUjJjWi9Wai9zc2dGU0JmZ2lBCndqcWlRenVpQXRTeEFSMUpZYXJUWVIwcElRQkF6bjduZC9LdjdKSGZPQ0FxM2llNWZsUlVma2o4bndEb2dMamlFSGdGSmRlQmdUN2cKcDUxaTIvNDBnTmdTQ0NCa0lVUUxWNm5udHhGMWowTDdIa1gxTlVYM3RNYjFxeEtIT2s5cit0TEdCakltaGpJbk5PY21SODVQalY2WQpIczJlSHNtYkhpbVlHU21hR1M2YUdTcWVHaXlkSGlpYjdpK2Q2aXVkNlMyWjdpNmQ2U3FaN2l5WlZwYytCZnBwSzV4cHlaOXB1RFJaCm56UFprRHNEMGx3dzFWbzAwMW9DNlBNRHVHd3BubWtzbWdacEtINWFYelR6Q0xnbmYrcCtBUkxFUUNpQWtPR2ZtUjhEYUhiclV3Q2cKaDlWVHN3QjZwTzM4bWdMNnFXdVpRUUgwb0cycXV1T0hoMDFQSG5VL2xTWFhHNXFrYkxESU5NSmVOTUNsNitIUDZCTXlEWWhuUWZTSgo1OUVZa0M0QUVobGFYRUFDUEpRTlRBTjhzNWFhdjhIcUVzaDZ5MXlRdFpZNUlFYVViQmp6QzJnTXllY055Sm1BVm1zSTZicjROQVBzCmFUak9oRXZkVHdvaVN1eEVjZ292MW9kVDMwRHFVbHQzZHJMVUhiek9EbVp2QjdXL3cyYWdoenVrNFEvM2d3ZzBBeURDRVJqUjZDQ0kKYkxRUGpYUnNBR1owYUY2ZUF3Z3hFRklNTkRvSVlqY0dJU1hWRElrMWcwaUcwYll2VWQrb2FBQXc2QWwvZUp5bEdXT09qdk82Ui9kNQpYZ1NmcFEzTjRFN3N1aFlKNE9PMEhpNStKU2xlRnhkdlJBaEJBZVNrRkNBQWdvWkFBVFNybjE4SklIUUV5QkNYc3M0c0NVNTFJYU0rCkMwYURYZ2lnNVdiQndFQXJzT0dyc0ZGcnNIRHZjL0FJRzAyVHR1TFNkeEF6dGMzd0tJRFFSakR3dHdCaGJEYVBQMkFkaFJPNWVEaHkKdk4wRXZ6ZUF6RG1jLzZYWmJpTjQ2QkZDOVFuaCtxWkIrcGlRMVdhUjh3RUU5WU5MZ0NORG1GZ2RSRDhSaG1hd0V4NnBBWnB0QkFNUwpRZ0FVdnRJNENHU1ZTU2c2LzJWZ0hBMnkxaXdPcFE4Yy9zRW5ieWVtN0xJNEE4UnpHTkdQRmtCQVJWdElxV2kybWFlRGJEVlAzMEpPCjIwUk0yVVJLV0U5STNvUk5QSWdQQmdEQ3NqbklDQkRVei8rSEFIcWZYYkFBUU8rellCa1FVTWd1ODZ6TitMT2JjSmtiTUJucnpGSU4KekdKUkFLM0dCcTNDeHVnVDB2ZVpKLytiRS9kQ0FJVzdpSDhDUUFvN2EzTWgvempGZXlNaGRSYzU1eEFsRndEb09QM1NPN1RTdDIzSwpYcWZsSDRSRlNKY080Rk9PazBPd1ZoSXFVODVoaW13NW5DQUhXWktQSXdSUUFDeUNCbGtNSUhBVkJSQzZFT0l2QUJBY0JJSUE0ckFBCmdEamdmOGgvZEJ2eDM4M2R0bUxDVjUxS1dQNTV6RmF6R0x4N2JrTEp2V0preFNBQW9MUGZ3ZVRlYmltKzExUitiN1lxU0ZzWXBEVlEKeGYzWkxES1FTcnZlRDdyRGwzWjNDelFBUFdoS2tSUSs3Q2dHZDJ2dUthNVhGZFczbHJWMmxqU3JTMXM2eXVwcmlsdnE4OXBISEFvNwpqd2tMZHJDeWpqbC90MWZ5TFFBUTBJOFdRSCtUNS9BVklkRk90cjhLUUtGT3Rnc0FaQ3Rqb2dDeVE4cUFSQklJSUs3UXlvYkgvRlFRCmRGUmFlTmoyNmtIWlpWUS9jNmtFMlMrcTJEODNEclE0aTArMEIwVmZ2eS9JL0pUbkRBQkVtUVdRT1pWUGZCbUFpSGdTMllwa3lTR3gKcE5ZdUN2NVpxYnlHSSs5bHkzcEZEdjBTeDJHWkN6U1F2Y2VrZzllVTBudkd5ZmVwaDkrVXpQMlpmN0pLNlJmNDhaZUpCR0tic3hjMApqV3ZBcEdQQVU3ZndIN3dpSnR6OXA3d0RwMFhlZlI5emhrVHVrMDdCei94aDI5ZVVYL2lVYjhnTVlKQnZ5RE5INzJmT1BzK2MvWjQ2Cit6NVJlZy9iZXc3WXVmZlplc3dPL0VpUVVSOGszUktYTHJIemdNQzVUK3JSS25SL2ZjV0sxMWE4c2xMbmxWZVhMWVZMRU9tOHFyTk0KNS9nNmcwNWJqMTZwbzBicXJMWnpVZHZQamdCcEFkU0pBS2pEMmJQZDlVY0FVdnY2cUlQOFZhR0JBRURxbURCMVZFQkhYR0JYVXJBNgpLYWd6TmJRdk00THBucjJIZjNXZjlPcCtVZmtleWJVandoSWdtUDNpaGZYcDg2Q3o4RFdhUzhWQjhGS0tyNEUvKzU0QUJaQzVEUS8vCk1nQXhKVlNobUNhVVdiSEU1blpDaHl2aDFWWEJuYlVSM1E4anV1cWl1cHJqK3RxVGh0U25oN3RTUm5yU3huclR4d2N6SmdjeUp3Zk8KVFExY25CbkluaDY4OUxRL2J4cWt0MkNxcHhDbXUzQUdwS053R2tSZE5OMWU5QlRvcDdYZ2FkT2xLYUNmeDlsVElQVTVjRFNvcVdDbQpwZWdIa09iQ3B3MkZNL1VGMHlCMStVOGY1YzFBL2VSTjF1WlBBZ0RWRmtJRExRQlFMUXFnbTA5cnY1bWEzZjdpM3RTam1tbDA0NHRICmRVOW1WLzFCQUlUb1p3Ym9CNlMyWStaeHkxUmQxek5KWXIyUmNkb0c4dGwxWmhmV1l0TU1NR21HMkhRalhLWWg5b3dCN293QjlpeUkKSWU2Y1B1bU1IaUZ6RFRGVGozVFd3UHppT2tyT0JrcnVac3FsN1pROGtLMldNT0RxUnZPY3RlUXNRK0lGSThJWk5JYUVkQU44bWo0dQpWUStidkFhVHRNWTBYaGVmYW1DU3VCZnJaeUt4czVPWXk5eEV3dXNWK0c2MWVYZTN0YnFEM2RiRzZHcTFHR2l6SE94bTk0OHdCbnBCCm1JTTlyS0ZlOW5BZlo2U1BNOW9QSWh6dDAwWXkydjg4STRPU2tTSEppRVlMSUlBaG9CekFIWEM3SEtrTmdnVkFtbkVGRXZtNFJqSTgKYksrWmt2WnE1RU9EOHBFQlhuKzNmSHFjZUtOOU5TMWkrYWtJWFpPRVZiaTQ1WVRJcGZqUVZmaklaZmdZY0ZyNU1ZQTRXZ0E5MTg4dgpBOUNuREljZHhFQmR1STV6SERoMzYyT1MxNW9td3ZWK0VBQnR3cWUrRUVBR21HaGRwSDRYR1FFS1dtWUdTM2hYbUlVQlR4Z2dDeUJ2Ck1FdlloczhBQU5wcC90eEFLSUEybU1VYlllRThraEUrZkRzbHhKaXZkSGZrK2JpSnZaM0ZDd0NFR3VpM0FwQUZqLzUzaG5ncnlXa1YKM244MUlXZzF4bGNYRXdUb0JnQzBIbGtYVVF1Z2pWandWTVRvR0pwRklnR21RYnZBNEtxR203QkpHd2hKYTdISUZtQW13UUJBdXNhaAo2UHdYMnYrMUVaT0F6bndCL1d3am5ONUJTdDFOeWR4dmRYNHhnT0MyWktTMHJXUVlsRDRiNFBMYmllQjVnVVZWbVBqOStLQy9XVHBnCldUd3JuclVOMStxL0JxQ1YyR0FBb0xWQVpwU0xSNjJ6WGdhZ0QxaHdFT2dObS96ZEZyQVJiQ00rY3owMmZTM1FPaVoyT1JZQ0NEeS8KOEFjaG5UMW9tZm94TjFFdWw3bzVTRkFBQlRqTGZ4WkFya3FtdlMyVkl1QWV0L1RjaUU4Q3pEcHNrWTBBS1A4ZFd2bmJOaVZ2MHZJTwowL1AzVXZMMkV0S09rTUpNS1RKTGhqMmJKYkxqY2tPVXNtUnZDS0NNUUxnbEtnb2diU2U4RmtCQVA3OFNRSER5QzlVUEFpQU9nOEV5Ckp0c2RKZml1eE1mcUVKSjFNS2s2cCtLMm1nWDgwOFk3TERranZiQ3k2UHU2b3VyMm5Gdk5GNytweS91K3J1UmVZL0dkWnJRN2JMNkIKWU9ZQXRJaEJFRUJveFErcW44cjZUbTBxR21aVE5wZVN1dDd5eHA2eXBxN0NoamFnbjdMMnJ2d21WVUZUUjVtNk1idWxqNTVVYzRoWgpjVVI2NjVEajFhM0MvQVAyM3grUVgwY0J0RjkrRXh3REFBa2RndU9jNWY4QmdMd1ZvcGNDU0dvTlRuSThJWVhPbzMvRzl6MHF5VHNrCmh3VkE2S2dQcXA5OW9zc1FRTUxMQzNKQWRBVm00ZmwxRGtQaW0rOEx6M3pHY3lSeXJDbHMyTjl1eFNYL0JJQUlPS0tGSlluQ0pUR2sKVkZlRk1Oblc5cVpBM3MyU2RRc2Nla1dPQTFJWGpkeDlUTzR4YnVzNWFlODlCVmRrZG4vbUV2aEU0UExNTFhyS09laVpiOFJUOTRBWgpCNDlucnY3alRuNmpTc0FndjFGbnIybVB3R2xMcHdlRy8yNWQrWEgzUHZ6Z0YrSXhnZmNUbjhpcDRJaHh2NEF4TjY4ZnZJT2Z1UHFOCktEMUJuamo1VFRyN1R6ajRqTmg2YWZYVEk0WmRYYWgrT2tWT3ZWemxzQ0lnOHd1aTdtczZRRHdBUUs4c1hhS3o1SlZYZEpib0xOVTUKdkY2dlVlTFVJM1VjbGppcGJKM2JiU0dBZ0g1Z0hOdzZFQUNwbldZQnBITHpBUHJwOFBCU2VYdXAvZUg4bHpvc3FEVXFwQ00rUWhVYgowcFVRM0prVUFBRjBKbEo5TnU2RVE5NWV3YlVEUXZEU1hONGp1WEpFVkxSWGZPM2dpNTcvbnc0czV4S0J5MnZnY2Q3bHA1K0VleS8vCkZJQlk0TzFJWkNNUVd6R2xGaUtCdUREazVxMVExZDJ3cnBvdzlZUElycnFZM3NhNGdaYkV3VmJJSUUxSGlxWXJkYUk3N1VsWHhrVDMKMmNtZWMxTTlGNmE3czJaQXVuS2ZkbDZDNmNpYkJsRVh6SUNvRVBxQXRPVFBORjJhQnU1QkFEUlRuL08wSVcrNkVkeFlBT2p6dEw1Zwo1bkgrTkVoZC92U0QzQm1RMnR5WiszblR0Zm5US0lCZ1NxWnJFUURWVnN6VUlBQzZEeHZnVVFETkZnQkJBRDE0Z3BZL3p5NzgwelFMCm9BZHRzd0NxVmswMXRNM1VkVDlqUmRZYW5FcGZSOGhjWjNKK0Ezd0xUWU1CQmpMTEFERTBUVGZBWk1MZzB2VXdxYXV3S2F0eHFmckUKc3h2TUwyNnp5TmxKZ1crQSt5eno5MUlMZGxQemQwZ0FJM1lBQUlBQVNVUkJWRnBlMmtMT1drYzRCLzJFUzV1WEZBUHNhVGoyZzRFNwpiYS9HbkY1bm5MUUhGL2lWVU80a3QzS3l0ZUduUjV1MzFwRzYyc2tkSGRiTkxUYnRqZWE5VGVZOWFsYkhnRTF2RjB4L04zMndtejdjCnd4enBZNHpCY0VkN1FmZ2pNRm9KaVVmNlJLT3pBSkpvUmtGUUFJSFlhNTZBeURWamt1RVIwWkJHTUt3UmpJd0lSMGU1R3JWb29OZHQKZURSaWREeDJxRDkxdVBmQ3hKT3NzYWR2QjVhK2lnbFliaHE1eWlSMkJTN21OVXpvY21MNFNrTDRVbHprU2t6a2p3SEVkWFBtZWpxaAplUTRnRDZVQXJZQitJWUFrTWdaTHpQdVlacjhWNTdmU0pHb05NbjZ4eGpSUkN5Q2dIelF2Qk5CcVREaEF6MUpNOEFwYzhISnNFTkxLCkRRR2tqNnlCakFKb0ora3NBSkRXUU9nVTJDWk1naUVtRVpZUjQwSTNrSU8rNURxNE9QSmhHL3p2RENEQWczK3pKZHZKeWxVRW45V0UKZ05VWTc5WFlnQlhZMEFVQTJvcFBuQjBCUWdGa1pCb05naXpySEkvdUJ3dG5Dckh4K21ZUnEwM0RWcG1FSWdDQ2sxOXJqV1BXbWNSdQp3aVp1STZac0o2YThFRURhR2lCQW4wMEV1QUxqZW56aVdsekNXbnljUGk1bURTWUtkc0pqZ3NBQitCdjM0MEwrYXFuRU1MbFVyczEvCkdVRDZabUZhQUwxbGsvc09QVzhCZ0Q3aUZuNkU3SXp4SnEwQWJRU2JCUkRtOUJwczdGSUVRUHFZa0hYNHBNMFdGNDlZbmZrM08wa20Ka3l3QVVLQ3o5S2NBcEdBb2JhMHNSWngzcU82YmlVbUFXUUJBYjFEemp0SHkzcllwZTV0YWZKeCs2U2l6Y0w5VndWNVN4a0Z5eEFrTApXM09hSFlzcFZNd0N5QUVBS0QzSS9ZVUF5Z3FGQTBKQVArZERZQmRZWnJBN0FGQnFnUE5QQUlndllLRUFBdkpoczRHQmVDd216OGFhCithbTF5emFpanc0aFdJY1VwRU9LMU1GRXJjUDQvcDN1d2hkeVhEMDk0dFBPNUpiZEtQMjJ0dVIyUFFEUXhXL3VGOTZhYlJBRERQclIKUWtHMUtqUUxERlQrVVBWOHA0dDUrZ0hvcVd6c1FsTStGd0NneXVhQnkyMTlaYzNxc2paMVNYdG5VV3RucVhxNG9tY2l2WG1JRkgzMwpLTHRpSDcvaW9LSnl2K0xLZnZuMXcvWmY3NWRkT3lLckJOa251d0dPLzljMlI2d0lqSGVXdmd4QTRCWVFyWDVnQzlqTEFhU1VzdVlEClNDQzBZSEJwbi9OOVhoZmxISkpkUFNDQkFOb2pLRVBIZnREc0U4eG1zWVIrNUtIbnVmYWVJQTBGa0NXSFpNMzVHUURoOEVSTEt3Z2cKcG9UcVppK01Wc2lMeGJKMmxrek5zd2NHNmhNN0FRTU55OXdBZzBac0lZUEdGTzVqVHQ1RFNxOVJKOTh4ZTY5eHVkc0VSSXpicUtQbgpzSXZ2bUtQL2pOSnZ5TjUxeE5IbktjbFpwZnRGcno2dWMrV3A5aFdmcTlaKzBmY21jZVNVYUZyaytZTlgySkJIeUxCbnFNWXplTmcxClFLUDAxZGg1ak1zOUpxV3c1Qm1PK29pY1FRQjkwQUFBZGZNZGh4U0J6RU52QS8wQTg2eEFPdERnWW95dkx0ZDVUZWVORFFZTllzY2UKZTdjK3NiSk41cXlTdTZ2dElJRFVpcGNDU08wNUM2Q08wTUNPOE9EMjZDQUFvUGI0MEs2a2tJNUUvL2JrWU5YNXhQdXA4UjlKQ2dHQQpEdkhLOTRpdTd4WmZQaXdzMkNPNWNWajRVZ0NoSTNhTHN3KzVCQSt5VjNnRkFPZ0UyKzZuQWNTMnBRbEVkTDZBd3BhU3VYeE91bmYrCmQrSHR0ME83N29Xb2E4SzdIa1IzUDRydHJZL3JiMHpvYjA0YWJFa2VhajA5MHBZeTJwWTIxcDQrM243bWlTcHpVblZ1Q3ViaVRQdkYKR1ZYVzAvYnNhVlhPVE51bDZmYThtYlk4T1BNRjBwdzMwNWd6ZytvSEFpajdXZjJsbVlhOHA0K1IxRjJhZVpRNy9mQVNURzNXelAzcwpwN1c1UDl5LzlQUkhBQ3FkZ2FsQUF2UnpaV1lPUUUvZy9OZTlHUUFndVBVcEFxRFpkWitSNnA4SExjOEJWTnMrVmRVKzBkRCt0TGJyCkdjNzdhejJUVEVOOHhuclRDNXV4VUQvck1Pa2dhMkU1UVRvYWlDRk02aHJUNUpXbXlhdk1UdXNUTWphWlorMjJ6RHRnVlhEWXF2Q28KZGZFUldzbEI2eUp3eXhiU3hmVzRzK0QrQnRoVVZEOUcrSFFqZkNvSVlCRElXbHd5dkJHVHVvY1UvamxiNW1oSGRiSTFGL29vT045VwpVTnNlRW5vNkxOcmFhRzNOVnQxTmxDNFZxN1dYMnQxaDNkTnAzZGRsM2Q5TkcrcW1hWHBwbzMwZzdKSFpvQXdTakhRTFIzdGc0RFRaCm9CWkFJRktOQm9RL1BzRWZIUmRxUmtTRGcvS0JBWWZCUVRmTnNQZllXT0w0ME5rbk14Y0hKaXJISjhzSGVtNk9EbjgvOGN3cjcvWWEKODhoWFQvbXZ3RWF1d0VTdndFVXRNUXRaUll3Q3lGaUNEVU1BRkFRQTVPeG80K2dBQWVUdUlsZ0FJTFQvNno4QUVEb0ZoZzcvb05FTwpBcjBFUUVFZ3l4QURyY1NFNjJHampUQndFUndVUUxzc25odG9DeWwxSXo1NXN5a2NiVExDUmVzU3d0YVJBei9uS0p3Y3dQZi9ZZ0JwCjgzOEhFSlZQL1l3ajNXM2hySXYzV1lPZkJkQktYQmdzd3ZreGdEYmpFOVpqNDNUMFRjSU5UTUlOVGFKUUFHMHdpOStFaFNzN2c1OWgKSFM0QkRvS1poUU1Eb2ZOZitxZWlBWURXbThMNUw0QWV1TW9RNFRUSWJsTGFIc3V6Q3dDRWRvRVpZbVBBZzZ6QlJJQ25jaVUyRkdRWgpKbkNwV1FENHRuU3hFZUJaUG9BUCt3dkYwWXpCKy84dGdENWtGeDJqNSsrM3pOMUtBZ0E2c3hhYlptaVd2QW9ic3dRYnRSSVhZWVFOCjIwSk8yMFhOUDBvOTkwOW00cThGa0pzREUvempwRXA0NzlNOHQ1b243YlBNT21xWmU4eW02RGl0OEIzcnN2ZXNTOTVpNUwzSkx0NXYKVTdMYi9PeCtpNWpQek9WRW1qMkxJVlp3T1dFT0VoUkFHY0VlS0lET0I3bWhBRUxpL2pJQUpmazcvaElBZ2YvWUxENlR3YVZhTVQ0awoyYTBuK0wxS2luak56TzgxMCtCWHNQSGJ6WU8vNHJ1NjJuUEI2ZDlSeWdud2RzODRjNzd3K3EzQzI0K3p2cS9MLzY2KzRQc0dyWUdlCnI1ZFlzOUJBc3dCNjFGNVJwNEo1REFDa1JqZDFyMng4cnArS3BtNlFXUUExZFpVMGRGUzBkQmMzdDVXcjFVV3Q2c0wydml0OU0rY2UKOVg4YWN1c1F2MnkvOFBvUmgydTdwUVg3Wk9WSGdIZ0VaYzhCSkwxNlVIcmxIN1paVW9mQUJDZkpUd0FvenYzNThBOEFVSml6SFFDUQp2Nk1VQUVncFoyc0JCSTdCTTJBdlk2RUE0b3V0UkVJTE5zL21DNTdYNjhLTGFNOFgwTTl1ZnZrZVFjVmNMbXNCOUVzbEpMejhnU0RsCk01NERrV05GWmM4Q3lJYjNVZ0NaRVltVzFyQlpESng2UGVXQ1VIdlpCWW00Z1NHRkJ1TFlkdkVWdlNMSEhqSGNYYXRmNWpvZ2Q5UFkKdWd6WXVmWTZlSFRJbkthY2c1QmR1aUNHQUlENmxaN2pTcCtudHA3RENyY0JWMThOVnRHeDZrU2JBYWJURU5OcmhPczJNRzNWL2Z5eAozaWROVzQwN2o1Sjd6T1NqMXE3UHBFSFBuQ09tSElNMXRsNURVdGRobVF0YTlBUDBBOUNqVFFjQWtOaXRSZUR5cDdVYmdYNVdydEZiCnByTmtDUUtnMTVCVmlEN2F1cm5Eemh1S1IrcllKbmZwa25zc0FCRFFEd3FnTnJmbkFGTDdlSGNFK0VFQVJZWjB4UVNvWWtOYTQ4TTYKVXlMYWt3TGJVc01iejZlVlJVVWQ0cGZzRjl3NHpDM2JMZnA2bDZqeWtLaGdqL2ptWWNHMXhmVDVKUURhTGJ5MlczamxIVjRhQkJDYgpBbUQ2TWdBeGJhbENJVjNJdDJMSnlVd2VQZFFoNWV2STF1OUNPMitIcU82R2RWUkZkTlZFOVR5TTZRRU1laHpmMzVBNFdKODAxSkE4CjNIaGEwNWc2MHBRMjJwZ3gxcFR4QktRbGM2YmwzRFRNaGFuV2k5TXQyVk90T2RNdHVkT051Vk5vR3JLbkFYM3FzcWJyTGo1OW5QVkQKWFRaQXoxTTBEM05tN3VkTW82bk5lZ3BTa3dNTU5GT2I5L1Ird2N4c0RWRHB6UDJ5cDFvQTFWNmRRZmIvZWxyOTdSeUFhaUNBSHFBQQphcGg4QVB2ZVo4dWZnWDRldGorOXI1b0d1YWQrVXFkK2VrYzE4N0Zkc1o3Wk9YMUM1Z1pzMWlaTTZqcE0ybnBzQmdnd2tCRm0xa0FRClFDYW45VTJTVjVzbXJjYWNYa3ZNM0VISlBrak5mNTFhK0laMTBURmF5WnYwa3NNMmhic29PWnNJWjlmaGdKWm1wOUxnYkJvRUVCckkKSUNQTTZmWDRNMnR3YWJzb3NWOHlGTGIyMWdvSGtyMkNMVStLWk55OWl1OVZrZFZkTm0wdENJRGFHS3BlcTY1T3F5NDF0UmNheUdhZwp4M3FvMjJha0Y0USsyc3NhN1FOaGovWkFBNDEyenhvSUFaQlFNNndGRU1BUUJORFFvSFI0MEhsWUU2RFJ4QThQbnh2UkZJMk5WMDQ4CitYWjQ1TjdZMCs5NnhyNGZHUHBtcE8vcnFlbTRSME52Q2VKZk9lRzcxRFJvT1M1ME9TNThPVFp5T1FaMldpMDNEUWNBV29XTitoR0EKQUhGK0RDQ29uNThEa0ZoS0J3RFNUb0VaWXVMUktURFVPaWg5TmhQU0ZnTUk3b1NLQUdpWldmQVNNNkNmZ09YNDV3QmFnNEZGdzBBTApDd0FFZ2dKb3Exa2NBSkFCUG5vMU1jeVFGUEFKeDk1SnlkTUN5TThOZHNKRDhialBOc1AvVmdDeTRWSys0RXIyVVp6MDhMNTYrSUExClp0NjZtSURWK1BBRkFFSnJnQkFBR1llQklFdjdSQUhab0FzYkFyaG9BYVJ2RnFGbkdvNENTTzhrSEFFQ2Q5dUN0TlNEd09FZlBBVFEKWHF0eldnQzlRYjhJQUxUYi9BeDRLRUFmcEpVc0JObExOUWc4aVV2dy9pQzZPSDg5ZkJUNEsvWVJBSUNjQVlDc09OYTAvMklOa0JaQQpXeTB1SEtGZVhBd2dxQjl1NFIvWlJRQkF4eGtGQ3dBRWVBNEF0QW9mdVE0ZnNZTnlabzlONGV2VzUvOU9qNWRLeGE0S01maGwvZVVBCmNySzN0cEh4UHFCN2JLY2tIYURtdkVITk8wNHJCZ0I2MTZiOFBldmlkeG41eHpoRkIrbGxleW5uOTF2R2ZrcTJKZEIvVndBeDVnR0kKZ3dDSVoyVkovOERjMVJBVDhwcHB3cHFUNE5jZ2NhWFptVjJrQ0dPZW02Y2R6VmZCOExWanVvdVpydlp5Ly9DbzAwWFhjcXBhQUlDMApCdElDQ0JvSTNVUCtsd0FJNm1jV1FKY1IvYUFCK2dHcGJPMjVxdTR0Ym00QkFDcG9VNWQyYXJJYmgxalJPWHVFMys2V2xPKzNnNFVkCis2VmZ2MjUzOVlpaytFM1JaZUFlTFlBQVNuNG5BSWtsS0lESUtJRGVFRjRBK3RrckxOL05MOTNGS3dNQkROck5yd1RaeTY4QVdjeWcKbDJFSUFPaDkvdWxQdVFvdGdLdzVzSlg2WlFBeUp1TUJnQ3c1Sks3UXlrdkdEN0tYcGtsRUQraWlGcm9ZR0VqRnRldmdLenBGeWk2eApZNWZVcVVmdU1paHpCaG0zOVp5Mjk1a1F1bXNFcnFPMnZ2MXlyMEU3Ri9CVnVJSXp6N0ZQNXRqajd0OXBMR3ZYUGRXMHlhekI4R1NqCjNxa09BN05PUTF6ckdreTlyc2xqWFpPNmxYOS92UDZ6eHNObTdmKzA2Ykd3SFJDNzlpdmQrNXc5WWNlNzJLVkwrQ1A5Z1BUSVBPNVIKeEh0V3dQYjMxMkFEL0d1cmRGNEQvM3RGWjhuS0ZjcysyYk4zeURtNFdhWnNsenVwRk83Z3psb0FxZWNCU08zeUFnQjFoZ1VCQUhYSApCclRIQkxmRWhTSUFDbXJOaUgxMFB2TkNRT2dPVGhrQTBCRk82U3lBaEpkMmltOGNFVnhiVEp4WjZBakxYNXg1QUhwN0RrRFdBdExMCkFFU1hXWXBFREpHQXlwR1J3ZHVkbHpqeVJtVExOeUZkM3dlcmI0ZXA3NFYzQWdOVlIzYWpRMEhBUUhWSk1BK1RCeCtkSHFwTEdhNUwKMVR4T0c2dFBIMi9LbUc0OE05V1VPZDEwYnFyNS9IVFR4YW5tck1tbTdNbjY3Q2NOT1pOQVAvVlpVMEEvank3TW9BQjZrRDBOQXVnRApMbXV6cDJxeUp0SGN6MzRHQUZTZERRMVVjMmtHQUFqbzUxSHBEMW9BMVZRK0I5RDlGd0hvUWQyVHVzYXBsd0dvcWdzQzZOdld5WS80CjJYcllMQVBpMlkyNDdQV1lsUFhZZENRWnFHT1FLYkFNRUNPVEpQMVRTUUJBYTNDcEd5ek83YkxLUFdwZCtLWTErRUFJUGdxV0hXZVcKUVFDWloyM0FnZmZoZEJBREhJd2hQZ09Ha0k0R0ZnTVpKMnpFWnk3SHBXMjNqRDlKVTRvVlZGdG5vcWNkVTI0dlpwUm1ZVHBhY0twTwpha3VMUlVjanFhdVYydEZGN2Vpdzd1eWtkbmRBQS9WM1V3ZTdyRFU5SVBTUlB0UkFQd1pRbHhaQVFzMklGa0FnTVlQanljTlB6bzlOCkY0OVBYaDBiLzA2anVUZlVYelhROC9Wdy84MkJvZStHUm00TTl0NTRNbml4WDRNOS9mVXJYd1hDM1JIdzRVdnh3VXZ4b2Nzd0VlQnoKdFI0dWJwVnBGS3dFd2tZZ0FCSTRPOUxuQUNUNnRRQVNTV2dBUUo4eGxidk5Rd3dJaWV2d1NSdGcvUW5rRGpyOGcrcm5ad0cwSEIrdwpEQmNJQWs3aUt6QWg0TFNPbHMzTW53SkRzNVVNcDMyMlkrTUF0Z3p3a2FzSW9YcEV2Mzl6N0p3ZGhWNXVjZ0FnSHhjSkFKQy91eHd1Ci9QT2JBNGh0Y1lJclBVQnhOVUFBcEdmcXEyY1dwQXVrUVlqZlFJQjdvRzdGSndMOWJNYkdiNFFWT0xFNkswejlWNWtFNnhtSHdjNTIKVXpqL2hYYUJiY1lsYlVKS21ZQjRERTlHb1RFNkZRM3VzeFYzZWljaGRSYytkVGNoRFJ4c3c4TVdNSFFKeE5lcEY5K3d6bnJUSnZ1dwo5WVh0RnVucjhJbkFHUy9NYWt5b0xqWmtMUzV5THk3eUx4YXVHQmJia210cHhXYk1BZ2haRG5FT1FEQlVCRUNXY3dCaUNabDhFVk1rClprc2tEQlJBMEVEekFDU3pwWXBrZEw2Y3daZlI0QjdkTWt1YWhJcm5VOStrS3RjUzNaY1JRc0QzQUdBSGZoVzJrUzRjdGN5ZDdRSmoKRmN3Ti94VDlrVlB3SndpZzBvOVloZS9TYzk2d3pONUx5dHFFTzJlQVRkWER4YS9BaHEvRVJhekdSUnNSVTNaU3NnNWI1cnhEemZ3VApNMTBnVWJvNnlYd2RlUUVPa2dCSHViK3pJTmhORk9vc0MzYVZCcmxJQXAzRklBRXVZbjlua1orVDBFZkpkMVV3bk8wc0dHS2JmN0M4CjNyREpQR1pUQkJ4MmpKbjlOcTN3SFhvUm1yZVpoVzh4Q2w2bjVod2duL3VMaFFlT0t1ZlEyYlo4Z1kramZiSzNZNmEvYzBhQTl4eUEKM0MrR29QcVp6Y1ZRTDNRVCtETWg3cG1oSHVtaDdpbEJMb2tBUUw3eUVBK3BsNHZZMXBiREZkQTVmQVpmd09KeEdVS2VEVGdHUjJ3dQppODJpc1ZrTUd3WWZUK1cvYnU2blR3alh3VVF1TXd0ZGJoYTcxRFR1cUhtQWxVRGhac2NGOGJEamV0cnozT1JNVndrZC9LUm5Zdnh6CnIzMWZjS3N1NzI3YitWdnRGMjYxRnQ1cHVYeW43dHF0bXZKN3phVjNtaXZ2cWE1VWQ1VGZiUyt2YWExODFGejZzTDdpUHR6YkM1My8KcW1qb0tHL3FMRU5TMGR4VjJkS05wcUtsdTd5NUMxd0MvVlMwTkZkMjlPZTF0VlgwZGxYMkR1VDNEMkNUcjJ6bGZidXdlM3d1QUQySApaVmVQaWtvUFNLN3ZrZHo0VEpMbXFuUUxtOWNGdHFBQUtNN0xPZFp6dGdZb3lsMFpPVmNERk9RZzlYUVF5ZVJNb2NoYUxxWTdTdUQ4CmwwTEtsRXZZOW1LbUZObm9nQ2VrTVVVV0owUzJiM0hPNzVWVTdoRlg3QktXN1JTVTd1Q1hhWU5JYURib3NCQTZOVFp2bEdnMnM3Tm0KL0tzZjhwTlBjQ1RtTEJLVlI3YmlXUUVEc2JnRUJzZWN3U0hUMlFRUUJvc0VBR1JCd1JGSkdCekJqRVNEM2ZJY2daV0hMVC9LUVpwbwpLMDlWS0hyTWhRKzRzanFlZlFmTG9ZV3ZiQlVwKzRCc2hJNW9hUTVhbmd5dzBpK0R2Vm9nbzN6UExqdlBUb1dMUnVvMENQdlBQUWRJCnlzZUdIemNZZmRtNi9sU0wwWWxXdzY5VVJzYXRCcWNhREV3YjF1UGJqY3dhRFl3ZjZaNnNYZkhGL1ZXZjEyMDBiajFHNmZvN1Y0TnoKVjlIZDJ1UWVRRjI5SE50dWdYMkwwS0ZkNWpFbVVKYmc2Y3QwZEhTV0F2cm82TUZDSUhqOHFzNXFuZVU2ZG4vNjg0U2RWNCt6VjVQVQpjVWlFdU1mT0JXNkxnUUJJclhSUk9icXFuZHhVem01cUZ3Z2dsWWRIbTVlbnlzOUhGZXl2RGcvb2lBenFpZlNFZzBEeGtRMnBHZDJKCkllclRJVDJaa2RhdXhidTVGU0I3ZU9DSnZieFBjRVdieGZSRTg3SlhaNmVvZEsrZ2JBLy8yazcrMVRmNEdlQ1RMb1ZEWWZJSWRHUVYKUkpiUVVxc2ZuZ2hHTEdYd2hWU3VtTTZTc1doQ2lsREF6ZzI1OWszZ2srdmhIVGZDVzcrTGFMMGQwVjBWTVZRZE9WSVYxVjBUMjFZVApOMWdiUDFTYk9Idy9TZlB3OU9qRGxMRzZ0QW1RK294SmtNZVpVN001TjQybURvZ0h5YVB6MHcvbjh1RGMxUDN6MDlyVXpFdHQxa3gxCk5zaFU5YVhKbXJ5cG1vTEoyc0twbW1La0JxaGtzclpzQ3EyQXZuOTl1dmJHVE8zTjZacnZwMnB2VFQrNE4zTWZBT2pCelAxSDB3L3EKcGg0MnpEeW9mekpYQVQxMXYzV3lwbTJ5UnZYa2ZzZlU3WTZwaDkzUENxcCsyQXZQcjFtYlROTzNBTElRenEvRG5ObUFPd3Q3djgweQpqRXpUd1NWNkFBeWthNXlpYXd3K2ZtZHNNNys0eityU1VadUNOMmxGeDJoNWI5R0xqdE5MRDFrWGJTZG5nejlvQ1BTRFRUWENwSUpQCnBPdHc2WEFmQ1d3YWVyd2VuNkZIU0lGZnhhZnVKTVg4aStraWxETWQ3UzBVVGp3dkdVRVVZRSs5VVFiRVEybG9KVFUzV25TMzBacWIKR08wZFZwM2RwTjQraTc1K201NCtWbDhYYmFqRGFsekYwTUJCSU9aNFB4SWdvUjdPV0RkM3RKczFOc1llMWZBMVEvS2hBYS9oL3BpUgo0UXVqNHdBOU40Y0c3enlaK0hwNDZOcmcwSTFoemJWQnpRM04yQTNOUk9XdzV2cVk1dXJJNEpXUm9jcXBaL1lWOWJxWWdPV1lCSEFlCmVXR1dFMkVwdEFFeDZCUmY2T1FFQWVTdFpLTkYwQXRxZ0R3ZGhYTUFFaUlBUWhkQzVFSUFTVGc4S1pjbDVYL0Z0anRJQ2Q1SVN0dEMKaERVNmE1RzlRclgwUWZYelBMQUhQTkVRRXdlVUEzd0dtNzh3UWN0TWc1WmhJSUJRQTYzRWh1cGhvOEY5d1AyM2t6SjJtNS9kU3o2NwpoNVM1a3dUcm9PRmpZbUVKelhwTXFCRSt6SkFVK0Q5TWhZT2p3TjFOT0I5QUMwYUF3REdnRDZvZkgxZGJEeGRiTjZmWnZjQVdBSWdyCjRnQURzWVFzQUNDNmtHbkRZNklHc3VUUnpYbHNNeGI3RDViU0RYanY1YmpRMWRnZ2ZheS9MaWw4RXc0Ty8yd2xKcUVCK2xsdkZnTjMKZzE5cEZyRGFOQVJ1Qi9hVEFESTRFWWtDQ0tsN1N0bEZUUHVGQUZvQmE3QmZFQzJBOXVHai9rcHh3N0NZNEQyZHlxSC83Z0N5Y1RBaQpRUUNCNzJHTlNZZ2hMbVVyK2NJUnEyeDBCT2hGQUNwR0FmU21WWTRXUUd1d3NWb0FyU09tN3JYTWVkM3EwcnZXWi84akFERmQ3Q2tzCkNmTmZISiszYUJmZXRpbDVqdzY0YzJrQmdFRGV0TGwwbUhMeEwrWmVXS29kaDg0RkFQSlRBZ0E1L0NvQXBZVzR6UWVRcDdNSWZGYmcKOEdrL0M2QTN5TjRHQ0lDV1l5SmcrNXRad2pITFFKcll3UTJoRDRpWGdnOStIRzk3TGtpQWs4algzeThqSzdmd3hoMjR2ZnlkNXB6dgptbksvaGIzeDVUVXR4WGNiUys0MVhVWnFvdWNteGRwZUNDRElIUVJBbDF0N0VQUkFBNEdEOHJhZWErcUIwdGEySzkzREpSMkRwUU9ECjh2enFnL3c4OEZFZVhVZG5jZVlEYUsvNHhtZlNGRGNIQUtEbjZ3RDlId0VrbGJKdEpRQkFGQzJBVGdwbGIzSE9BZjNNQWFoOE82OFUKQkFLSVZ6RTNHdlFjUUdnV1hOVWFhSi9nMmtlODVLL1lZaklMYjhVbGdVOExXZ0RSMlNRVVFIUW1FUVVRZ1doR0lHSXNhT1lBUUN5QgpsWnNkUDF3aGliT1RKeWtWalZUUkk2YWtpV1duWXRpM2NCUXRmSVdhNTlERlYzUUpuVURRR2gydGhFQ0doWjRxWkNGbWpkaXBUNnpzCnNQTWNvcmsvM1A1VmkvNEprS1kxWDdZYkdiY1pHamZxbjJnd05INnc1bVNqN3BmZ29NN0E1SkcrY1pPaHlXT2prM2NNUC90bTdjZGYKci8vMzVlUEdqVXo3VHJsenA5QytSKzdTeXJYdjRMa01LVDBTUHplRDAxNHJsNzZpby9QYWE2OHNYZklxc2huWjB1VTZPcGxreTFFNwo5MGFobmNyT0RYeDc3WEtubndWUXU3ZFhtLzg4QUVWN05NVkhOc1dHdHA2T2JrOE43ODRJdnBzYSt3OUp0bFkvQ3dDMGVEUU96WUpYClJQdmE3UlNWQVFEdDVsMzlDUUNoYTBDakFCS0lySVVTS2x0SVpVbnBEQW1GeDZNbHVWLzhKbHp6ZFhqZmR4RmR0eUxWdHlNNjc0YjMKM1lzYXJvcnB2eGZYVVIwN1VCMC9XSk1BRGZRZ2VlUUJZcUJIcWVQQVFBL1RKeDVsUEpsTjVpU2FoK2VtMER3NE8zbC9mbjRXUUxuVAp6d0dFZElIVmxQNE1nTzdmbjBZQjlLQitHZ0RvUWVNa1VnTTBPUXVnOWlrQW9MdXFzY2Q5ejBJdnRhMy9NbllkSm5zTDl0eFdmT1phCndvV1hBY2pJTEdPTlNlb2FFemlCdFlPU2ZjQTYvM1ZhNFhGYU1mZ0UrRGFqR0FYUU5sTFdlbXptV215NklXNldQdk1EOUxPQmNNWUEKbjJLRWg4ZmJTVEgvWnJtS2JGbE9Db3E5RTl2RDBjcGV3WlFIKzdKdlZKb050Sm4wZEZrMnRsbTN0MW1wV2lnZHJlWmRyZVJ1bFdVLwpIUDZ4R08zQ0RyVlRKdnFvNDMzME1UZ0N4Tlowc2tmVUlKeFJ0V04vajlkZ1gvU3dKbk5rdkhCMG9tSjg0dXJZT01qM28rTTNOU05BClA5K01qbjAzUG5GemRQVG15UGoxNFZIQW9QS0Jub3FSN3FzelQ4TnIrZzZ5WWxhYUJpN0RoaTJtejI4TElMNkV5NVpBQUIyd0NOcEEKQk83SjJFcElXUWNQZmdTZytRWkNWZ0ZNQUxqUk5Rc0hBRUlhNEY4QW9EV1lLSENmRGRqVDI0anB1OGlaQ3dDMEdaYzhEMERCTHdUUQpnaEdnM3daQWZDYVd6VUVBNUxrQ0N3QVVBQUMwaGhqNVVnQ3R3Z1N1TmdzQ0FFSzJ0cGdGMEFaYzRud0FBZjJnQUFMSDRBN2JDYWxhCkFPM0FwNENyQ3dBRWdnSm9MUzVoTVgzUXJESUxtZ05ReEY4czNjellUSUNiL3c2QTFwSTlsaE5EVnVEZzh0WUcrT1F0NXVjUFVTOHMKQmhEUXp5eUEyUG52TVhLUFViUDNrYk1SQU1FSzZCWFl5RlhZQ0QxY3pHWlMra0ZxM2xzMmVlL1paUDZKbWZackFlU2lZRHZiVzNGawo3RTk1Zm0vVEw3NWpYZklCcmZoZFdzRmJOZ1ZhQXdIOXZNTUNuMzd5WDZmbS9JbmliMmF0UUFIazc2Z0FBRHJqNTVRZStJc0FCSmVCCi9qa0FpWkRqeFFCNm5lU2xqdy9Ud1ViQkh4d1RxNHRMZk44NmtDOXo4TERqQXZxQVN6YzVHOURIMzFIb28rQjV5Rmx3OXo0SGNWeDAKV0dGWlplbXRCL20zR2k3ZWJqdDdTMTFVM1F4U1VBVlhUUVRvdWZLZ3U3eTZzL2gyQjJvZ1dBbzlCeUNnbi9KNSt0R21vcjBYcEx5OQpyN1NsNDJyblVFWC9SSGgxNTd1Mkpkdm9sdy9iVml4dVlFYXpYd3czNFFJQTJpKytCZ0QwdVNURjNkRTEvUGNCRUY5SVk0bklKMFdTCnR6bVpnRDY3UmVXN2hCVW9nTFp4Uzdaenl4RUF6UWFkRWRzanVJd0d2VHIvRmpUN2VKZi93RXM0eVJhWnN3bVdITGdQaGhYWEFweG8KRndDSWFvTXp0OEF1QUpDclBUL1lVUkxoSUk5eFZ0emdpdXRzSk8xVVdTdmR0b1VwYjJiYk5uSHQyam4yZ0VFZGZDVklwOEFSQlBVUQpTSi9BdlZtZzdKSTZEUW9jT3JoMmFsdVBJYUhQZzNjSmphdSthbDlqM0taN3FzM1FGRUNuM3VCRW5lR0ptdFdmTmhxY3ZML204MXFECkU0L1htalhvbXp4ZWZmS3gvc21HRFNaM1YvejE0WWZrYnI1cmg5eTVTU0JyRXp1bytBNERIT2RlSjUrWWZ4bkQxUmVYdllhc0FLU3oKQk5qbnRTVTZ5NWErdFdwTmpWVFpiK3ZTTExEcmRQQnNGY0dKTUMyQVZNQkE4d0NFRmtHM2VUNEhrQW9CVUdlVVozMXlZa05jYUdlUwpYM05xU084WjM4VG90TjNNaTBBL0N3Q0VIcU5UazR1endEM2E3QkNXN3VHWEFnRHQ0RjE1blpmK0NjZmhaUURpaTYxQnVFS0tTR3JGCjVsUFlZaHBUYXNubVVyd2x3VmVpVkYrSERYOGIxbmNyc2hzQTZGWjQxNTJvdnFyNHdWdXhQVlZ4QXlDb2dXb1NoMnVUTlBlVFIyQlMKeDlFOFNKdTRudzd6SU9NSlNPMjgxSnlabDdPVElMWG5wa0NxejAwOU45REY2YXFzYVFDZ3FoeGtFQ2gvR2dDb0d1a0NBd0NxUmdCVQpjMlc2OXRwVXpmWHBta1VBcW4wNGRmL3hjd0RkYjU1NjBESU45RlBiUGdVQVZLMENsNXI2d1dmMG9PdjZYeVlZNGdzMkVYTTI0VExYCjRzLytCSUQwalZQMXpWSTNFcy91c3NvOVJDdDhrMUg4TnFNVXZBRyt3eXdCQURwSUxkeEJuQVhRQXZxZ0kwQW9nSXp3cWNoQjVsWkMKOUQrWmJtSTdycFBDeXM2QjZlbkk5ckMzOXBiVEhjSjhLTjlYR25lMTRkU3dJSnJZM1dMUjJXTFIxWVR2YlRJZWFNRU9xV3o2dTBVOQpBNWFhYm91UmJ2Sm9sOFdvaXFsUjJRK3JBNGU2WTRmNno0ME01bzRPbFkyT0FPSjhQekx5L2JEbTI2SEJyd2NIdmhtWlJFZDlnSHV1CkRnMWRIaHE2TWp4OFJUTjRmUWhjOWwxOU9wSFdPZllIaDdQTFRnUXZNd2xaVFF4ZVRKL2ZGa0JDQ1pjajRuM0psTzhuQmF6REptL0cKd24waGdJVG0wK2NuQUxUU05CUUFhTGxaNE04Q0NPZ0hCQnpBVG5pZ0t3QWdUTUo4QUNtVUFqZFh3ZThOSUFzZUU4ZGgvNWtxMlVqMApXSUVMMXNVRUdPQ0M5RWhSS0lDMEJnSUEyb0NKQlZjaGdIUXh3WEF6VkZNNHZZVUFDR1lUYkliL0VZQ01Ua1VqL1Y5Sk80QitmZ3lnClhSWm45bFBQL1ZvQXJjS0ZHT0VpOXhNaS8ycmxqdUd3Z0crc3VMODdnSTdiT0swbmU2NGdoYTdFZzJjbldKK1l0TW5pN0FIcjh6OEIKb0Q5eUN0NW5Ya0lCdEJsL2ZoWkFtT2pWdUdoRFF0eDI4OHczYkFvQldUNmtuZnNMNjFlUEFMa29RR3dBZ1A3RjhUbG1rM25NcXZCZAphdEhiMWdWdld1Y2ZweFcrUlM4Q2VaZFIrQjRUU0tqZ3VQV2xQMW1HbWxvN2N1ZzhlNEV3ME1rK3hRc0NLQzNBNjJVQXVoQUM5LythCkQ2RFRnYzZMQWNUbTBYOENRQVJyd2VzRWQwTmNLQXFnbFdZeEJyaUVQOU1DWlhJN1FCOXZCNEduUGM5ZHhnYnU4Vk1LZ3B4RWdZNUMKUDF0NmlDTWYzdUx1Y0M0cnUvaTdhdGdrWDlWNThldjYvS3JtZ3VxbXZIdjFoZFdOeUg3eXFxdTFmUUJBTUE5VjVYVnFGRUFWNkd3WApNdVJ6dWEwWERhcWZTbFhmNWU3K3l2YkJtd01ENTF1N1B3MzhacE5ONlVINTEvdEZDeGNZZkY3RUtxNDhLTDF5UkZoeVFIUmxyL2phCjU1SmtUNlZ6bFBQemRZRCt6d0NDYXlFaUFMSkdBV1FzRkwvTFR0dkJMd0gwQVFEYXdTOEQrdG5LTHQzR0tRTUcyb2xrQVlOQTVoLy8KQ0VQY3NnKzVjYWZBK1pOTFFrZUFBSURndE5jY2dHZ3NQSTFCQUFBaW0yUHdCRk1VUUpZSWdKenRlWUZLY2JCU0Z1Nm15TEtWM2JlUgp0bHRLRzJtU1ZwcTBtU0dyNDhwYjJMWnRYSHVRZHA0Q0JOQkVMVkNpNlJBNE4vSHRPMFhLZnA1REo4ZXVSZXpjSy9WcU9NbXRXL1ZsCnE1NnhXaC9UcEd2ODJNajQ4VnFUKy9wZjFPbkIzRm4xY1pYQlZ3L1htajVZY2FKaDVZbFdBNU42dlpPM2pQNW5BQ01IQUdvVEtsVVMKWmJOWTBXZnJNY2gxMGNpOHozOUdYQVVBdEFUd1o5a3JPa3VRYmpEWURPYjh4MzkyMjN0MHloMjdrZjZ2Smx0bmxjd0JCUkRNSElCZwpFQUMxdTg4Q3FEM0F0ejBrQUFCSUZSbW9qZ3BRSmNlMkpFYjNKUHAwcEFhMHAvdFllZVZ0WXVhaEFOSWFDR1R1bHZJWFpqNTYwSEl1Ck5Oc0ZKYnU1WmJ1NFZ5Q0F1R2UwQUFMNmVTR0EyR0p6Z2RTQ3d6Zm5pR2dNQ1lYRkk4dFl0aGVDYnQ0SUdid1ozUHROU01mdHFDNlkKNk43YkNZTmZ4L1JxQVFROFZJMFlxQ3BwdURwWlUzTjZkRGFwWXlDMWFlUFZpMUtWL2p6Vm1VOUFVQVpWenpmUXhSa0FJQmdFUU5YSQpJQkFBVUhYeEZBcWc2b3BKQUtEcWExUFZOMllCVkhQN1J3Q3FyWnNFQnJyZk1BbFMyelJaMnpKVjJ6YUQ2cWVxZmZKaCsvRFhiYy8rCndqdHJhSHJHa0ZpNERwOEwwSVAwZjgwQ0NCeEE5eUF4TkVrek1Fa0RBRExDcEcwbW45OUx6VHRDS3pyT0tIbUhXUVlBOURhcjVCaGoKRmtBYk1KbmdRV0JEN3R6OGw5WkE2TUVHZk5wRy9KbjF1TE9ic2JGL283a0o3WGdvZ0J5VmJGOGx5OC9CeHQyVzVlanJ5YW9vd0xRLwp3SFEyVVZwVitMWVdUSGV6K2FDYTJ0ZG1xVzZoZExSVCsvcXMrbFRXQXgyTVliVm91TU5qc0N1aHY2ZXdaK0JtbCtieVFHLzVVRytwCnBxOTRyTDlzYk9ES3lOQ040YUZ2aDRldkRvNWRIeDcvZG56Nnl2Qkk1ZURnOWRGUjhDV1FxNE45VjhmR3MvcW4vdUdmdmZTazczS3oKNkdXQUYzQVIzWVgwK1cwQkpCSnlPR0xPRnd6WkhxS1BJV3p4VHQ2S1NkUmFaN0dCWUJrUUFpQURzMWdVUUlBK3NIN1hMSGd4Z01COQoxbU9TWHdpZ0xmalQ2NEFmc09GekFGS2lBUEp5RWkwQWtOWkF2eFdBQ0Z6MlgyMGttMGx1SzNFQmVoZy9RMnlRQVJFTzlnRDNhQTJFCkFnZ2NBQUQ1d3hFZzAxQUVRTEFMREZrTDhjVUFRc3FmVCs4a3BlOG1wUU1BZ2N3SEVFRFBmQUJ0TTAvN0NRQkJBK0dDamZEaGV3a1IKZjdGMG1RUFEzRllZdnh1QTNyRngzVWoyMHlWSDZSTEM5TURMUTB4NUlZQSs0aGFqQVBvVEJ3TG9BM2J1Y2V1Yy9SWUFRR2NCZ0hReApNUUJBZXJpWWpjVGt2WlR6NzlCSy9rQXYraVA5M0YvWi84RUlFQVFRUzhMOE84djlrT1hwZytTYzF5MHVIYkhLZmQwNjcwMWF3WHdBCnZVY3ZmTnM2N3lPcmFCT3FPNHN1VWdoRlFjNktGRzhGQUZCSzRIOENvR0IzaVllVEVEeHZiSjROQ2lBK2ova3lBQjBqZWhoZ1ExQUEKclRhTFhvZUwrenZEWHlHWG9OVS9QZ29CQ0J3QlFxcS9BWUJDbklSK2Rtdy9leFl3a0t0Q0hCRVRuVjE1cy9qMm84SmJyZm0zbXJLLwpxOHU1WFZkUTNWaDR0NzcwVHNPMVdsVjVUV3RaVGV2Y0lKQzZzbkcyK2dlZDg5TFNCOVZQWlVkL1plOUFaWGZYMVpGQnp0bWJtNjF6CmRrbS8zV2RidGw5UXRwZythUGFJTHgrUVhEMHNnRnZCN3hOZC9WS1M1S1YwakhGNXZnN1Fid1FnSzc3WVJpQmdjSVJrRTZId1BmWnAKZ0I1QUgyQ2dIYndLUUo4dExOUkFGVHM0WldoUUNXa3hORjlGODdPUFUvSWhKeG9CRU5HU1E0UTdCL01vTkM1eC9nalFDd0hFRVZnNQoyWEg5bEtJZ1IxbUl1eUxSeWY1YmxtMDlWZmFZSm02eGdUWFJqeml5Sm9adEs4Y096WHdHZ2JUeGxDMThSYWZBc1plcjZPWTdBZ3kxClMxelViTWZtZllScTNVL3FkVS9VNjU1NmFHRDhjTDNKdlRXZk5CaDlXYXYzV2JYUmwzY052N3FyOTlWRHZWUE5ScVlQOUw3NGVzbmYKcXY5S0hCUjRxSVhPS2k2Y2JtdmsyYlZMbkZRc3UwbUJad1dHdmhwT2diMjY1TlhscjcyNmZPVlMyUCsxZC9teTd6anlJVHNQbFV6UgpKWFpzbGJnME9qaXJKQW9WWU5BaUFMVTd1UUlBdGJtNUF3QzErWGkxQlQ0SFVIdDBSRzlza0NvcHZqc3haQ2d0NE51RXlPT1N5enM0Ckpkb2FvUG1CTnk3U3B4YW0ybWhmTXBCdC9PSmRuTktkbkt2Yk9WZVBjaklRQUZreHVhVEZJMERvRkJoYllzRVRrM2xDQ25qN2duY1EKbTdPWnJFQ254S3ZoUFRmQ3U2K0hkTjZLNnJrVDIvTnRWUGV0K0lGdllnZXFZZ2RCN3NVQkFBMVZKd3pmZ3dEU2dGUW5qOENraktLcApTaDFEOHpJQVZaMlpBRUVaVkRWbklKZ0wwL2VRUWFCNzJkQkFWY2dnVUJVdzBFc0FWSDBMQXFpMmFxYTJacnJtL25RTkFxRGF4MU8xCjlVOGdnQnFuQUlCcVdxZXIyNmFCZmtEcXVxWVRyblJ2TVkyRVN4M2ljd3d3V1JzSkY5ZVpwcjBVUU1hcEFFQnJzZW13QU1nNi95aTkKR0FYUWNVYkJXOHppTitrbFI2aEZ1OGs1VzdEbk5tQXlObURUTitET2JNUm5iaWFlUTdPSmNCYk5WbnpHTnNLNURkano0RlQzRjJzMwp2Z3dDeUY3QmxEbHh3UHVWaHdOY2Y4UmZ4dkR3VmpLTHp1SWJiK002dTBtdGFzdUdacXZtUnJLNkNkZmJnaDlvSXcycXhkM3RMdDBkClVaMjlGem9HUzlRRGxhcCs4UDVUM3RGVHJGWVZkWFVWRHZRV2pBd1VqbW1LeDBiS3gwWXZqNHhlR1I2N1B2cms2c2hFeGREdzFkRXgKZ0o3U3dYNlFtMVBqRnpvbWNIRTNWNWo2TDhXRUxzTkh2R1lhdkFvYkJadS9YcGpmQ0VCaU1SdHc0WE9tWkNmUlc5YzB4c2drWWJNcApzdVU1VXUvOFlnTXRBdEF5MHdBNERvUU4rbkVkOUN5QXRoTFM1Z01JZHNJVDA3ZmdVK2NBRkc1QUNQa2J3OEhlZ2UvcUxQeTlBVVRoCjBzaGMxdi9TSmR0SXJpdHhmdnBZLzdYWVlBTUNYQU5hQ3lBUThGc0JzbzJVckxQU3pHKzFXU0FBRU5vRk5nZWdlSFNYMDQyWWhIVW0Kc1NpQWtQbXZoSzJFbEYza2pBVUFnb3NBL1dvQUJRTC9HdUxDOXVCRC8yanBiTUpoV0Fnb1ZON2NWaGkvRzRBK3NQYmNSZzR4SU1jWgpFV1BYNFdMV2t6SzJXbHc0UkwwQWZMTVlRSC9tRlNFQXlnTUFlb3VXYzRDU3M0Vnd6Z0NicEl1SldvV0pOUVRQS1RuMXNHWFcrNHl5ClB6SUsvOFE0L3pkTzZxOEZrSnRDNEtLZ01xVFdmMlk2N2lKSGJ5T2MyVVUrdDhQaS9HSExITlJBc0IyTVVmZytBd0xvSFp2OEQ2MlQKVGxHOW1EUWhBRkNvczBPYXQwT0dyK1BwbDArQnZSQkFDWDdLbndZUW04L2o4TmdBUUJ3MkV3WFFXMFFQUTB6SXF4Z0lJRjNUNkUzRQorRStZdmk0eWdCNCtNdmJEQVFkK0NoNElYQUxiZ2UvcklBNXlsUGpiYy93VUhEK2x3RkhPOWZSMHpEeVhubitqdXV4T1E5SGR4cHp2CkgrZmVlVnh5djZXOHBxbnN6cU95NmhZWXdLQUg3ZVYxcW9xR2p2a0EwdW9IUmcwQlZONDFjRzJpTjZxbS9VMXg3azVCNlQ3RjlSM0MKMGdPU29zWGxxMmgrREtETFg0bVRmSlRLdUhuckFQMGZBU1NSTVZBQXdXWHVCQXl1Z0dncTVIL0FUdGpLS1lZRzRsVnM1NVlEK2dBQQpiV0dWYldXWGIyT1diV2VWbzluQnJsaWNuWnpLK2RuSExmNlFGV0VNNTA0SUZpeThCWmRDNVZ2U0JXUW0xMEpiQkkxT2dhRUF3cElnCmdLdzVGbHkrbGJPTTQ2OFFBZ0NGdWl1aTNSenpaWXJ2V2RLSGRFR0xqUUFBcUlFaGJhVERRU0EwcUlHMERHb0Z4endGSEFyaVFMZzAKZy92d0ZkMVMxNjdQQmRjMy92UDJxbjgxNkorNnIvZFZ0ZUdKdTJzK2VXandXYlhCNTlYclR0d3krS0xHNkdUVE5senR4cFBmYmZxMAo5ZzFjTzFmWkpIWUNlT3JtT3ZWd0hOcUV5aGFKWTQvTXJaL3JYTXUxMzZPM1ZHZXBqczZTNVRxdkxYa05Xa2pINTk5ZjlqcjdkNGpzCjJtMGRPa1hLTnFscnZkeWgxdzVaRHRFT01SQUNvSGJFUUFCQXJhNXVBRUN0bmg3dHZ0NG9nTm9qSUlCYVk2UDdvbjNiRXFNN1RrZDIKcFlXSEIyYXVaMXpaeFNuZnlTNERseUNvaEo1bkVYM1F6RWNQR3RTdld6akZPOWtsTzloWHRyR3ZBQUI5ekZKcUFRUzd3QVRQRFlRQwppQ3VqY29SRThNc2pGSEdZUW11bTFJTEJzNVlJSEF1Q2E2L0hxSzVGZEg0ZDJmdDlUTjgza1YzZngvWGZpaHU2R3p1QUJoam9ic0lRCkFOQnNra2Fya3NmUTNFc1oxNllxZFVLYmUya3dWZWxQUU81bGpJT2dETHFIR0dpV1FRaUE3bDJjbWdQUWRIWGVWRlhCTkFCUVZlbGsKVlRrRTBMMHJVeWlBN3QyY1FnRlVjMjhhQlZEMWc4bWFPUURWTkV4V04wN1dORTFWdFNKcG43Nm5tcW50ZThhS3ViUHlxMGg5VE9aNgozUGwxMkF1YlNia2J6ZExYWXpOZkJpQndPVnNBUkN0OG5WRUNBUFFlbyt3dFp1RnhSaEVLb0gyVXZGMmtiT0NicmZqTWJhUUxPOHl6CmRscGs3NkxrZ0lBRDlIZ3YrZnh1Y3RaVzBpVnd3dm9yelljbjVTbHRJWUJjN0ZsMkxpS0ZVdUJwei9KMXRuRzFwMG85YkxsbkUzRFYKdHlsTmp5MDZtczNhSDV1MjFURzZtbDA3MVNHdDZyUW05WVhHenVMRzNxc052VGNhZWlxYmU0cmF1L003ZWdxNytrcTcraXU3QnE3MApERjNwMDFRTWpoUnBSZ3FCZ1RRandEMUFQeFhEbW9yaDBkS0I0WXJSOFd1VDB4Y0hwaXhPMzlBekRWMkZpM3NORzd5Q0hMeVNFTDRLCkU3L1FQYjhEZ0RoaXpxZE15VGFpMXdyVGFIM2p1UFVtY0JGbjdUNFlpd0dFTm9CcnA4QitHa0RyekpJQWdIYVN6cUFBMm0xK0ZnVVEKdUhFOTd2U1BBU1I4R1lCUUEvMG1BTExrME16NXpIOHdoTnZOblZmanZBMHd2Z0JBUm5NRFAvTUJ0QWtYdjUxOFdtZUZxZThxMHdBOQpreEFENDBoZ0hRUkFjVm9BYmNJbWdodlJGckM1OVE5VGQ1dWYyVVBPK0NVQU1zTEdMM0xQY3dDdHdBWHA0VUozNDBJK29qZ1pzK24vCkhRQjlSUFhiUllyWVlKNnlrWnkwaVpDOG1YeHV1MFVXUUF3QTBOdTBTKzh6OHhjRDZFL2MvQTg1bDk2bTV4NjB6TlVDYURVMmJpMHgKYVpkRnhodld1Ui9SeS85TUwvd0w4OXovOG43MUZKaTdQYzlWWWNtVVdmK1JhYmVKSEFLWEQ4ZWZOaVNuZ24vQWh5alp3RURIYkFvQQpnRDVnRmdNRHZVOHIrTUE2NWFTMUQ5TkdyQlNLdzV6dGZ5R0F6Z1M1WlFTN3pRZFF0SThNQU1qZFVRQ2V2UVVBNGdxWTh3RkVZd29BCmdONGhlUnBoUXdHQVZtSWkxNWpGN0NBbm5PRDRlc2g1S0lCQXZHUWNiMXMyb0ErY0FvTk5tMkpmQjNEU2xZQ3JQZzRjSHlYWDI0SG4KSktNSHg0U2ZLU2dzdmYydzZHN3poVy9xYzI4MUF2ZFVWRGVXVmpYRFZMZVUzbThyUTdaMlJ3ZUJZT2RYMjNNQWxhdG1BWFJqc0Q5LwpZTUk0K3RZV2Vza2grNiszODRyM0NxL3NGaFFzcG84V1FQdkZWdzd4aTlBbTg2L0U0RGxReHJ2K0hnQ2lDL2dzQkVEY0Q5bHhXOWhGCjZMUVhHcUNmemN4U2tLME1HTUFnTkZvTXpjOThEKzFsQVFTSEdYTzRsbHc4aFlPajhDeXBRbXNhM3h3RkVJTkRYQUFnREJsRHBpTUEKNGxxNlNUbUI5c0pnQjJtNEd3Q1FjNktUUTRsWWVwL0diN0xoTjlORUxUYVNCcHB0RTB1T0JoQUhLb2RqQjRMcUIyQUlBQWhjVlFtVQpnRWZ0UER1VlVOSEpWdGIrbVhoNy9iOGY2bjRHQUhSbnplZFYrcC9WNm4zeS9acFB2dFA3NU83YUwrdTM0eDd2TlB0Nnk4ZmZ2SFdxCkhTOEdacW9YMkt1a3JnTUMxejZlYzd2SThUSFBWczJEajl3bmQ1Zjg5YytHcjhKdFVIVmVlM1d6enF1V1I0OTMySGwzMjdrMkNNWG8KQ0pCSzdsNG50aHNBN3BrSElKV0Q4M3dBdGN3RFVGc29CRkJiVkdCTFFnaElZM3hvZTBya04zR3hKK1Q1NjZqRlc4QlR5aW9GMFRKSQptOFhRZWFGN3RBRUFBbyt6blhWNUFZQm0yK0RuQUFUQ0ZjS3daVFljSVZraW9na0ZQSTZZVFpPUWJVUVVHell6U25HK1BPYng5ZGllCmErSDkzMGIyZlJ2ZUNXZkJvdnZRM0lucHZ4MDNBSEluSGpMb1R1TFEzY1FSWUNDUU84bWpkMCtQelNiMXVZUmdFQUROQmdFUWFpQUEKSURTUVFlZW43bDZZQWdhNm13VU1OSGt2ZHdvQTZGNysxTDBTa0NmM3lpYXJLaUdBcXE0L0IxRFZuVmtBVmRkT0FRQlZQM29DREZSZApQd1VBQlBSenIybnlidlBrM2RaSkFLQXE5ZE84QjlQdjhpK3VNRTB4eEtadko2VEQ3UlNKT1pzd0dRQkFHL0huRmdNSUJCeHNJc0FDCm9DT000bU9NMHJjWnBRQkE3N0NMMzJJV3YwRXJQbXBkZk5pcWNMOWwvbDZMbkQzbVdmc291ZnN0THgyd3lqdEl6VWR6eUxyZ3NFM2gKVVdyT1lhdjhQZFNTdlZZWC9zRU80c3FFU3JtbDBvSGxMV1BaZWZBZFhMamV0a3dQWjQ3U2llbGt4d1Iwc0E4T29CVmxtalhmTU85Ngo0RnJmbUg2dkpmZHU0NFhhK3N2ZzNhbTJ0ZVJCYThHajFrc05iWG5OSFlWdDNTWHF2Z0oxYjVHNnA2eTlCMDdIZC9aVjlnMVdhSVpLCnhvWkxoM291anc2VkR3OWVIaDh2MDR4V2pFeCs4L1RacFo1aFV2cGRmYXova2xNaFM4MGlBWUJlTWZQWHA4UXVNVjdrbnQ4Y1FCSU8KVzhyNW1DUGRUUFlFZi9VcTR5Z2o0MGdERXdpWEJRc2hQamZRWEJmWVR3TklGOWtRQXp6T0Z0aHE5eHhBc0JPZWxERUxJRXprSElBYwpBWUJjbkdhbndOQzFFS0Y0M0d4L2F3QlpVL2lzZjdGRU84d2RkWEdlQUVEck1jSHI4TThCdEJrUG0rR0Jma0IybUtmb0xEZnhXV25pCnY4WTQyTUFrZkoxcHRCWkE2RDVmUUR6clRlTlFBS0hySDI0bnBiMFFRQWVzejg4SDBDSHFlUlJBeVBUaGk0S0ZBRnFERGRtRkRmNkQKaFNNQ0lITXI3V2Fvdnh1QS9tUVp1SWNVdmRrOGJTczVGWHc0MkVvR0h5QnlqbEJ5dEFENmtGMzRzd0JhYlJhNUdwdXdqcFM4aDNMbQp1UFdsUC80ZkFBUzd4eDJzbURLcmo5aXlEV1R3aE1ENjRwV0FWb1RNL1JZWDRhNm9jd0Q2QTdQNEEzcmhlOVpwWDFuN01XMGtBRURoCkxvbzBiL3VmQlJBYy9wa0RVR3F3NjJJQXNialdMd1FRaDAzWEF1aGRzcGNXUVByWXVGMFdDYVo4ZjE5YmpvZWM0MlhIQTlieFZ3aDkKN0RnUVFFcWhueDAzMEVFRTlPTnJ4L2UwaFpYUkFjNENQd2NtaUVoT2xidkl3ak15Qzc1dktLbnV5ZjJ1TGYrN3h2Sjd6U1gzbW1DcQpta3RxVzBzZnRta0JWTmI2SEVCQVAxb0EzUnh1OGIzU3Y0dGRzbFY0ZFRQbjJqN0J0U1B5cS90RVZ4ZjM3NkRaRGZjcmVBNmdreEJBCkRna3V2eDJBNUhCalZCUkFJZ1JBR0NIblEzWXNPdWMxWjZDS3JleHlvSjlOakJMZ05wQUZEUG9KRCsyd3lYNlhIbVRDNWRrSTRRTFEKRm53ckt3R1Z5aUd5ZUJRbTF4d0FDQnBvcmdnYUFNalVIR1BPc0FBQTRuTXRQU1NjWUxrZ1ZDR05kRlhFdXJxR2VqaGN0SlZVMDNqMQpOanhnb0RZcmNZTzF2SkVwUTZObEVHb2dGZCtobFdYYnpuZG80Tm8zOCt6aE9CQmYwY1FVTmNzVlEzVGx3d09uN3E3NCt3TVVRSWFmCjM5Zi85STdSVjkvcGZWYTEva1R0eHBQZkdQM3oxcEdUTFhoaHI5eTlneUhya3JpMGNCUWREUHN1bmxPTEVBNENkZk1BYnB3MUxFV1YKMU1GazcwRkRuV1ViRE5kTC8vS0oyczV2VXVEWnhKTzJLQjNhSkhiL2o3ZjdnR3Z5MnY4SDN2K3RWWEVVWllNTTkyNXI5N3A3dHJlMwp0Z3BrNzcwVFNFSVNSc0pXUUhFaEc5bFQ5dDdUalF3M2U3cDN0WFhnNFA4OWVaQnlYYmYyZW4rdjErZjF2QjVDakVsSW51ZjluUE05CjU1eHo4eDdSQmc1NitGenk4UHFQQUJyZUVqSzZmY3NrZ0FiM2hKNUtTK3plczMwMGJXZkd6Z1JiVHBrOXI4aFN2dDlCVkExNTFrQlAKK2VZbGNaRFVRR3dsbGNhSGFnWUFyWlprQVlBWUV0WlRBTUlNaEFGSTdNR1R1akZVYmdJM3VVS2hVYkRkeVR3MWd5bmhlSEZEaW5lMwp0aVJjYnRwMTdlRHU2NGQzWHp3YWRhbDE5NlhXcU10SG82OUFXbU92SG8wek1talBEUWdBQ0FzQWFDS3BQMEVtTVFRQUFnOU5aaXFBCk9xWWFLUGNoQUFnRkFlZ0JBT2hZeWYzbkFxanp3QVNBam5jOGZBR0FIbUFBYWgrNDF6NTByMlAwd2ZIemowTUtlMmY4TTl5RWxJc20KWmFhazJ4SXlMUWg1TnJoc0RFQ1Fwd0FFVzdqRmpwcTdtRnU2UmxTOVRsVDdvYWoyRTFIZHg3S2FEOFRWR0lBZ0s3bVZZSjNsN0pLVgpyRktBem1SV2M4clg4bEJEMGZ2Q2N0aXVGRFd0RUpiOHd5MUtybFZpQVBJMlNFSTA3TTE2cmlGQTVPOHBEL1h5Q1BOWGJ2SG03dkNVCitQcXJ2V0lqd2l2cTBnK2ZnUXV6a3ZidTBoTmQrWjNIaTQ2ZktUM1ZVOVkxVU5ZelV0cDN0bmpnUXRIUXhZcWg4MlVqRjByT1h5aSsKZktINDJvWHlheGVycmw2b3UzS3gvdmFWeHA5dVZONjRYSGY3ZHRYMVd3MTNIcFZmdmFQTUxwdUppelloUnFQNkhsSWsrR1lXSmZvMwpMdHZuVUtLZWRzOXJCNUNIV0t5Ui9rUHFZVTNmOUNZK3lzUWwyblJqcEtsejdPUmlxRGJHcVlEK2JVUVlPUVVBQk9mdXFVWFFJQjVzCkdyK3BBREoxUlkvekVnQlpFNkluQWVUcDdZWUJhSEl1Uk5EUC93SkFMRGZSUHlRcUo0WWVBRFFmSDJxSjMyVkJRdlI1Q2tDd2d3Rm8KODB6bjBEa3UyOUNrT0s0eEZ2Z0VRSSt0c1FBSWF3UkNxNXB0aklHZ2VhOHBxWXNwR1V1b21Vdm9XWXVvR1VnL3hCUkhDaUxSU203VwpLbDQyTmczMEduN2VjbTRPQU1pQ3VNZm9SNnlLYXR0MHZIRXVSQUxTRDlyQjc1eE5DRjlBQ3ZpRXJkMG9sc096NThqWUdIMG04a1EvCkNFQUtGdHVOeFZid0lEeDNBUURJVFNWVXFpZG1RWnlJVm9RRkFLVFdjckdKRU4wOXVFb1Bwa0xMNW1sRkxuTEJSNnlBUllSd3NKMFYKNGwyU0UzSHZVbW8rME8xZFh0RTZRY25IWXJRZ1BOWUloTlVBL1VGYS9Uc3BHZ24vb2FCMEpidGdBUjBOc0RUQko1b1NFaHlwdVd1WgpSUi94Q2xESG1hanFEOEtpdjh1U2xScFBQNzF1aTE0WnJwZUgrNnJEL0RSYi9kUTcvWlV2QXBDZmo1dXZsZ2xLKzcxUVowRUpuL2lTCkVIYlBKMlFCemxad2k5SDRNZ0VDRU9SalVlV1gzTHl2MlpFY25wZWYwajB5UUoyeXhaQytOU0J6UzBCMmVFRE90c0M5MjROQVBIbTcKZ3JFRlVDZFhBY3ZlQ2ZxWkFGQnl1RzlDbUUvVVpyL3dZTGRnZjZGS0paSks1Y1lGVUkwSFpiblVUU0ZSdUVtZXJJWWhFd2hsSEk3awpjMXFvS1M1MG11dld0L0h4cHJpMDk1Zzd1ZTVlQVo1cTBBOFFaNU5Pc3RsVHVzVmJicXdCa2h1RDVzSU9RMzFoaWkzR25SQWYrV1p2CldhQTNWeUhmQUdkeHI1Mnh5VTFkcGFkSHl0bzZHbHBiRzF1djFIY01WNTVFeDVyU1UrY3J6MXl0N3ptL2I2Qy9ibkNnWmZESGx1SDcKZFNNWHE4NmRyYmw0dmY3OHplYUxsL0t2ai8vT3QyS0pxSHF4WXY5Q1pjTmlUZlZpOTVwbDdzMlR3M2FlSHNZc3Ixdm9objRMMjZXSwpXbGQxZkxpdklkcGY4NUtKRUJPTWE0Rk5HT2dKZ0xibzFRQWdFSS9LblF2aThkWktmTlFpdlVya0w5TjRnYmwxVklrN1I2RmtDVDBvCnJtNnFQL05pN2FRRk51SUNlM0c1dmJER2hsZGpKMnF5RlRmTTQ1Wlo4bXNzQlBYenVUVVd3bHBMWG9XVHJNNkdYMjdMUjFlM2pxTEsKZWNJNmMwR0xnN0J1cWFnWS91RnMycUVQWkduK21mdTZMMXpZVzV4RTVIOVBrWklGU2paZmdGWWRGeXBvWWhsVkpDWUxSUlFlajBKbgprQWdrWXhlWWlNbVdNeVVLbGtFakNmZFM3ZkxTN1BiMWl0UDc3Z2oyalEvMHJWVjZkclBVQTNURkdhNzBoRVErd3RmMTgzVGRRbDJ2CjJHdEE3SDFXN0gxSjRubEovSE50MEdUWEdOWTdOdURtY1ZtdHZ5THc3UDRyNjRERDMvZk4rTjJ4Nlgvcm43TythL3EzblRPLzNqZnoKencyV2Z6NzJXOHBsbnRkVkQvOStoUWRXVWZSc0xycjdBckF1ZXdSQXVqaHV2UUwxVlYwd1VHbEU2UTBaVmZtZ3FQV1FzeDRHRkowZgpacUJSTC84Ukg3OFJnLytRci8rd1g4RFp6YnZQK0c3dTI0eUdnRjNZSG5JcFl1dHcxSmJldUcwOUNhRjllM1pjU3RwNmZNK092Mmx5CjN4QWNYQ2lwdE9YV0xSVFVPZkJySVk2Q09rZFJ2Wk80QWJid2hqdUtVWndrOVpQQmJubHU0TGQyNHRwRndqb253VDRIWWRNN1lqUUsKakNGamNtWEVxUUNhV2dTTmRZUkpsVnhqK0JKM250Q054NWR6SkVMV2RzMmV4dDBYbW5mZkxJOGVxczBacU0zcGE4azlXMXM0VkY4NAozRkEwMGdRcEdHM01IVzdNSHF6UDdHOUp2ZHFTZk9WQTByVkRDYWluckRQdTlzbjR1MmZpN3gxTHZuczg1ZDd4Rk5RWDFwbitVMmY2Cmp4MFpLSjBadDQ1bDNqNlc5V05IOXAzMnJKL2FzbjdxeUxuYnVmZmU4YnhIWUNDTVFjZU1RK0pQbER3K1ZUYmVWajdXVVRYV1dmUHcKV01PanpxYUhuUzBQTUFNZGE3MXZOTkRZaWVOangwNk1IVHMxZHJ6cjRZbnVCNmQ2SDdRT1BENHkrUGpFOElQMjRac0hMOXc2TUhUMwplTS80UW5ucFhGTEtIT2RrRzNLdUxTbmZtRndMZklZVmZ1L0VVSFpjNmp6WGxQa3VxV2JPNlJZYjArZTZwRmtSY3hZeENvRXk3d21xCjNoZFVmeUNzK2xCUzg2bW9CdmJYOHFwWGNHdFg4dXBXODJyWGNpcldnbmhZVlN0WjVjc1pwWXZweFF0cFJZNzBBa2Rtb1JPcnlEaUQKWXRWYWJ2MWFmc2tmM0NJNW5ob3ZINEd2cDhoUEw0WUVHaVNRSUY4cEpOaGdqSThFaEFFSkRWQ0dod2RIcDZSbVZMY1VIdWt1UE54ZgoxakZVZWVKczZjbmg0cE1EaFdjR2luc0hTL3VIUy9vdmxReGNLQms0VnpKMHJtVDBYT25GODZWWHpwVmVIeW00ZnJmaTlwV1dPeGVhCmIxdysrTk5QTlQrT3V4VjJXNUZTNTVFVDU1RGlaNUZpcHBNajNxTHNSRnVTY2Zabk5BZjBSTjRpN3A1T2lzUmlRdG94blJKalFZcisKbDd2YTI1OFg0Q01QOXBNQ2RLYlNCNXNDY1hJaVJHTTFoZUxaWWZCU2xYU0RSTE9RSElBbWNTWkhHUmQxajRMRHVKbHg0WE03VWdvVwp0R2dWMmJqRnVzQUlzWE9KVVNhRVhjWlQ5c1JLcUZobTRpSWdzd2lSczRsUkZuampnMURUSEJpWkN4bG9TbWhzU1ZRbllxb1pLY1dNCkVHbU9qellqUkh3cDBtc003a0VHK1JNQWFTZnBnMDEraUFYb1l3U1FkMmlBRndBb3lFLzdGSUE4ZE81dUhnb2pnTVJnZ0FrQUtRUmMKaGVCSkVUUWFDYjllSkgySG9aNVAyZ1RuVXpOaW5EMGhFaHNGTnJFSUJpRUI0a2hLV2tRMUFzakVKV3dxZ05CazBNOEF5Tnc1Rmx2LwpheEpBQ3luR0lXRC9DVUFtcmpzd1FqNXArSmtBMEV3OGVsc0JRUGJrd005WVd1Zi9Fd0E1eS9qcjJQNU9oSzFXUkxRMkdmenhGaENBCnJ2QnNjMThFb04vTEVJQytsRlIrSkN4YnhTbTBwMlhOSjZiT3dpZWFVNUlYMHZQZllSVURnRkRIbWFqcTk0TEMxd2lndC9GcHRwU2MKWmV6Q2Qza2xIL0xLVVArWEVGVkRUd0xJWDZXTUN0RCthZ0JGYnZJRkFBWDRDVlFxQ1NnSHRmZThHRUJjcnZSM3RCQkx3bGI0OHN6SApKOERGM0lmc0hTS2xaNkNuNGxVQjVLK0ZMeWVGcDZKK3haSi9KWTB4WkhRVWRGeXNQalpjdE85SXc0bSt1aFBEbFIyRDFhZlAxblNmCnJlNGFiZXkvMG56Mm5MRUkrbnI5Nk5YYW9hdjFaMzlvdlBMRC90czM1U1ZESzJXNWpzSnFKMFd6dmFMSzBhMXNvYUpxbWFJRm9QUHMKR0dZMGpOa0lJR3dMQUhKUnhmMXFBQVY3dTA4RmtONUREQURTdTd0ck5IUVBIVTJyRXFybFRLazdHYTlVL1ZFYzZTZ3BkeENXT2dqTApISG1WdHV4S0sxYTVGYWZDakYxbXpxaTFGVGZONDFkWXU5V1ppa3JNK0JVTHBDMVczT1o1Z2lZYlFRT2NVeGR3U3VEVldURHlIVm5aCmpEMjlCNGJ1M3h3Zkg3NTJ6WHVUaml6QUNkUnN1c1Jvb0ZjRVVLSi9ZTXltZ0pqTmZybmUza2VFcWdHcXZJOGxQeVpSOUhPVUkwTHQKb0ZEWHgvTVlFS0t4OGIxUzdSbVplckl3NkNrRG5WRW9CMVdlYURFdmtlRWMwYVAzTDhLamEvQ05kditzdC92WHZxVWJPejZuRDdvbwpMd29NRjl6OUI1USszVzdhWittRDVid0NkYXVoSFhjRG9wWEM1NExLRC9XN0dRR0VNZ1ZBSXhyRHFOWjNST2M3Q2FCaHZSOEFDRExxCkc5VHZGemdjRmpvY0hqb2FIbkkyWW10L3hOYXU2UERlMkloemU3YWNUd3paSEpLNW1Ka1Bmd0pyMFFFSGNTTzR4MTVRdTRCZmd5S3MKbmN6TFcrT2UvYTJWdU1ZQjdpTm9XU0JvWEMxTy85VUFJb3Z3OEtWT2pUdlNXRHZjdEgvZzhNbWI5ZTBYbWsrT05IZGZhdW01dkwvbgp5djZlYXdlN3J4M3N1bnJ3OUxVRHA2NjJkdDQ4MG5iOTBLR3JCNW91TlZXUE5wUU8xaFVPMU9iMkhreTlCam1VY3VOSThzM1dwRnZ0CnlYZU9KZDAva1R4Mkl2WCt5YlN4azVrUFQyU05IY3U4MzVsNXB6M3pUa2ZXM2FNNWQ5djIzbXZQdmQrZWY3Kzk4RjVIMGYyMjRyc28KNVdQdGxmY0JRSjMxRHpzYUgzUTBqM1cyM08vWVB3WUE2bXpEQVBRUUE5Q3hNdy9BUUsxZDkwNFBqKzg3ZnFOejVONlIvcXR0SXorMQpYeGpmbkhYTWhKQXczVGtPemV0RHlMYkU1WUI3QUVCV3hDellOOGRsenNlbGdYNk1BRW94ZDBtemRNNHd4V1ZZay9ZdVpoYXQ0VmFzCkUxYWpBZkNpYWdEUUo4THFkY2JMZ3lYTThrV3NjdGd1WnhRdnB4Y3VwUlV2b1JZNVVRcnNTWG0ycEJ4clVqYkVpcHh0UnNsMG9PUTYKVWdxYzZKa2ZDOE1aSGtwUGI1NmZ0OURYQnhub0tRQUY2U1ZCZWhrWWFKTzNLTWhURU9BcDlqZDRCRzdlRkxSdGUzUk9ma3BaVFY3egp3ZUxXenBMTzB5VW5lNHRQOXVlZjZDM3E3U251NnkzcEd5anRIeXdkR2kwYk9WZCsvbUxseFl0bE4yNldYNzlTLzhQbDV0czNXbjRjCkQ2Z2VYY3BNczRDWE9RVkFXREFBelNSTUFnZzEvRHdYUUY1KzNQOEdRREsxYktOVXU0Z1MrRjhCQ0wvdFp3QVpEWVFCQ0swSkQwNmcKcEU0Q3lJbU9Cb0l0SktWWmtsUGgrVnZoWTh5SnUzOHJOdnhDQUJuejN3QklCQUQ2VGl4NW42a3hKMjFHYTFVUll3QkFXTU1QdGdnRwpCaUFuY3ZKaVd0b3ZBdERrQXFnTzFEUUEwRkphRmdZZzBNK3pBRUtaQXFCWnVKMFFyTzduU1R0UU9BUUQwQnppMXY4REFMbXJHWElOCkN3UFFHcGF2SFg0cit1c1NZa3hkWTIzd0dZN2t2VXM1ZTE4TW9Fb3cwRytsVlorS0s5YnlDdUVQYkFFWE5MaEVXMnJhVW1iUmU1elMKRDR3QStreFkrVHQrd2Qra1NhOExRUEJmV0pMU0Z6UHkxckpMUHVDV2ZzUXYvMWlBcXFHLzRCVjh4WTVtOFgzOFZhcGZDQ0RRejNNQgp0RFZJRWVBbmNuT1hpTVNvdzBzbUZ6NFhRRUtSSEFEMEYwYW9QWG5IUEZLTUpRR05vdnlDdjEybThkamtLWHBWQUJsVTduSzVLMWRGCi9VN212eG9YNWJRaDludERSVXpMbGRyZS9zTFc0K1dIenpSMER0V0RnWTROVjUwK1c5RjFvWDd3Yk4zbzJZcWhzeTFuYis4ZnVOWFkKZDdIaDZnL1o1ODUvNkZOdHh5OXdralk0dWpYWkt5cnQ1U1dMNU5WTHBQdWVNNjVuSXJWT2lpWUFFR3lYeUd0ZUw0QlFSNWhHNnVGQgpVNnZvbm00aUx4bFg1a2JCS2QzK0tOdTJYTnF3UWx5L1FsaTNRbFN6aEY5cHh5eVpUeTZjUnltMTVCVE53cWZiY3Nxc1dXVm10TklGCjRtWlRacG1OcUhhdXNOeWFYMjlOSzdkZ0Yxdnl5bHgyOWV3ZkdYL3dDUEF6ZnU3eU5iK3RZUVF1V2dxZUk2VUkxQnlLalBhcUFOcmoKNng4ZjZCOFo0aGNkN0YybTlqak5kaDlpdXA4U3FVNEw1WDBpMVFEUGZZaW5IQmJyZXNXYWt5TFZHVGZ2UWZHLzFVZFBNcWhmcnUyVAphZEFjUWdyRFJXWFFaZVdtaTdLZ2MwSy9pNUxnYytMQTgvS2dLeDRoNTVXQnZmQlFVdTJvMmhjcnFYNXVRRC9ZWXdKOXppdDlSNHlWCjE4UHVYcUNmWVNPQU1BTU5lNkJnQUJyeDlJTU0rZmdDZ0FZTmZvTisvaGYxK3RGQS82R3d6WDFobXdmRHcwWWp0ZzFHYnUyTjI5WWQKRVhVN2NWTkZ4TTZQM2FyZkpsVEFHZFNNMjJLRitoOXJJTGI4YW9nVnZ3cGlMYWkyRWFMeUxCdGg5V1N3Z2kwN2NhMk51R1pxckVYVgpXTXdrNkQ1MmZNVFdWYUswZjRxOW1WSW03OVVCeEZEU25Ya3EzYmJNbXU3ZTVzSGU0dmJ1Mm9HTFJYM0hhN3Y3NjNvRzZuc0hHM3RICm1udEhXdnBHVzdyUFFwb0dScG9IUjF1R3p1OGZ1bkJvNlBLaG9hdUhCcTRjN0w5ODVOQ05JL3V2SDJxNGZyankrdUdpRzRkeWJoN0sKdUhVNDdWWmI4cjMybFBzZHFmZFEwdTkyWmt5TWltL0xHUU1BSGMyOTE1cDM5MmorbmFORmQ0NlczRzBydlhPMDdINTd4WU9PNmdjZApkUS9hRzhiYW0rNjN0ZHliQk5DeFRnU2d6cE1Bb0FjQW9NNnVoNGU2N3A4NE05WXovTGkxNytheGtUc2RQV05WWGVOclJKRnZmQmRoCmd0dGpUc3BDVmMvNHZUWkVZRW91R01YQ05YdStTN3FwUy9JY2x6MXY0NUxtNDVMTlhGUE5uRlBOY0ptMmxMeWw3SksxdklrQjhCK0oKYXo2VzFINHNySDJYWDdtTVZXSlBMYkFoNTlvUTk5b1RjNXhJT1E2a1BIdGlyaDB4MjVvQXFNb3dmeUtxR2ZqNHVhNEo4UGp6OGZGcgoyTUZFcFFJQTVPL053d0FVTU5WQVNEOFNQNzBjREJTaWw0UjU4ME04dVVGYXZyOU81S2VUcVR4bG52NGFRNmgvOE82ZDI5UFM0MHNyCjB4c1A1aHpzU0c4N2xYMnN0L0RNK2RMZXkyWDlGOHI2ejFVTW5hOGF1VmgrWmJqcTJxV2FXMWYzUGJ3ZmZlenFIN1FObGhzeUhSazUKWnFRVVU5SWVBTkJNOEkwUlFKaDRKZ2E5UCtuNVFyK2RBaUJ6WXRRM2JxclhBU0NQZndmUTdsOERvSW5WNEkwQU1xNElCZ1pDOWRSQQpCVXFxUFQxakVrQ090S3hGNUhRclNwb1ZLY2FHR0dkRml2cTkyQmNBRk95citGOERpQzRUZ29HY3BiS1AyQm9yY3RBc1lvUUZNZGFCCkdEVVZRRGI0ZUF4QVMranAveGxBMkVDd0p3VkFhVXVvbWM4RjBBcE81bXJ1QklEVzh2Tlc4UFk2MFRNc0NYdG00M2RCWnVGK0J0QU0KM0w4RGlPTC9PVWZqTEpheWpZdWgvdThBeE5VSU4wcDVLOWwrbG9RdG9CK3c0UnhjbENVK2RRRjE3K0lYdHdEOVRsNkpWUUo5SnFtQQpPeXhsNWRtUTB1YmpFeGZRMGxld2lnRkFIL0lMUHhLaFhxcmY4dkwvTGs1OFhRQ2E2Um8zbjVqc1JOdTdtbG4wQWJmOGt3a0FsWDNPCkwvNDdKNVlsOFBWVHE2TURkUUFnMEU5VzJBc0JsTHZUMlB5ekkrRHBMckJnL2RZZ21aK3ZXTzRtNFl2a0lwa1VBS1NVeTU0Q2tGUXEKeHdEME5TTjBDVG5DR2o1R2hGUjdVdW9meE50Vk9tV0lKLzlWQWVUbHhsZXBTQ3dsNCsvQ29MV01iRHRDbnJWcjBrcDJ1anE5TmV2WQpoZHJlb2JKREhiV0grNXFQWDZrK09WclYxVnZiYzY1cWVMaHNlS1JsOUZiRDhhRURnNlBWVis5eTk3YlpDa3JRV0NwWm94MmFqSzdhClFWR09sQ1BlOTZJUnl3dWxOWTd5Um15N1dGYnRySXg5dlFEeTl4RG90R3lGaGd2dnB3dyt5VklxM2syeDNtUDdha0hkV2tIamFsNzkKS2w3VkNsNlpFNlBRa2xCZ2hpK2RRVUpyR01GQmZDRXUzNEZRdW9CUlkwNHZtODhxTW1Oa3ZVMHZXaXl0RnlRYzJ6L3c0K1BISUo5SAo5eDcvMkh2bGdVZlFGbGNtRmJGR3pPQzdjOWdLT3NzTkxicjVTZ0NLTStoai9mV1JJYjY3d3ZUSnZycGF1Zm9FUjlYRmNqOHVsb09CCmVuanlmb0ZidjFEVkwvUVlGT3JPaWZRRElnMFlDTXRVQ1kwS3RTTkM3VG1KMTFrWnFwSWVFR3Y3SkZydzBJRE1lMUR1QXlvNkt6ZWMKbGVuUFNYek9pMzB1U1BTVFRVZFBCUjdxbkpzZUdEUUVqNGxHM2NNLzl4cFZHZ0JBUThaZ0JocFMrMkFBR3RZYVVIUytnNTYrZzk2RwpBYjN2Z0s4ZjVKS2Y3MmhRUUU5SVVGZG84QUFxZ3Q0eXZIdnpRRXdJcW9PTzI4TFdaYzJpVnBuUnltMVlGWmFNRWxOR2tSV253cHBiCmFjTkQ5TEhrVlVJc1lNdXZBdlJZQ3dCRGNIc2xCTnRIUHdxZm4za2lkQjhyWG9NVnIyNkZJT1ZyRVpvSldpaDdzaHI4THdhUVVNN0YKQzdUT2lwMngxU2RhK3E5V3RuWTNuQm1HcTRMbUU2TXRKOC91TzNYdXdPbnpCMDlmT25MbU1xUzE2MHBUMzdubS92TXRBNWNnemYwWAptM292TnZaY2FPZyt2My9rL0lIaGl3Y0dMaC9xdm5Md3hKVURSNi91TzNpNXBlWFNvZExiQjRwdUhjeS9lV0R2elVOWlB4ekp1dFdXCjlWTm56bDBFSUN4NTl6c0tIblFVUFRoVzhxaXo3R0ZyNmIyakZXUHRWV1B0dFdOdDlmZmJHdSsxTlkrMTc3dmZjZlNCRVVBUE80OC8KQUFCMW5CeHJQejNXY2ViQmtUUDNUL1kvUE5aNzUxai9UOGQ3eHpxSHgxa1JCOS9ZdUhtNmE2d3BKUTBBWklIUHNpWGxMNkNncWRRbQpBVFIzWStKczU0UTV1QVF3MER6WHBIbk95ZWI0ckFXMGdtV2MwbmY0YVA3RGo4UjFvQjlrSUdIdE85ektSWXhDK0xmemNXbnpjYW1XCmNQMUFTTGZDWndKOWtIN1EwcW9aWm5qMEszaW9hY1RZR2Job09Jck9KRVF0WmdhNnVNbTEzbHcvTC9aVEFFSUdNZ0lvd05mTmVIcVcKaHVuRlcvWGlVQi9SSmk4eHhPREo5L0VVd2dsRjZTR1Y2OXprZWkrcHdTRHg5U01GRmJDMlZpdGlqL2p1UFJWZTB4Vi91Qyt2KzN6bAp5TTJ5YytmcWIxMXZmblEvZGVUS042SGwxcTRwUzFqRkRyU2txUUJDeTM2Ukk3QmlJTFFPdkRHVEFNSU05Rm9CSkhXV2FSYlRVQmNZCmVud2pnT2JpME1Lb1R3SElocEw2SWdCaG1VbEVIV0VUQUNJWVZ5dHpqUWNBd2IrQ0V5TFFaeEpBaTBucDF0UjBHMHFjSFRuQm1od04KQU5MNktsOE9vQzBCbUg1K0J0Q3pOVUMvREVBQ3ZFVDZCZGZEamh6ME5tRzNKU25PaVJpTkRmN0NGZ0lEQU1GMkVUVjFHVFB6aFFDQwoyTUc3UTB5eXdlK3h4aVhBMXA2YzRrUkxCLzA4RjBBcjJRaEFhN201S1B5OFZWd0VJQ3RpNGx4OGhORkFPOEJBSnE0VEFJSVloOEh2Cm1FdmM2a2dKK0lLdGNaSElqQUJpL3E4QnRJenJaMDdjTW9zRUh6aGdXWVFGd1FnZzNndHJnQ1lBSkVNM2dqOVdjL0tkcUZuV3hGUjQKMWFzWXhldllwUjhJQ2orWUJKQm96K3NDRUh4NzRRdXpnSnE1aWdVQXF2eUVWL214c0F6MXRRbksvODZOWnduOEF6UzZtQ0R2bEMxKwpxUGxuUytCL0JGQW1TaUFBS0dtckFiVUFCZmtBZ0F4K1lyRkN3aElDZ09UUEFrZ21rMkFBZ2ovTXQ4emdsWlJJdEFndUh0VisvVWtTCnJ2WlVodXBlR1VBK0dxcFVzWUhqSWZwS3NtVWhNZDZDaUZaQU5QazJaZlkvby82Z3pRdXI2cXpxUGx2ZE9WQjV1TC94eEhCTDcyQkQKNzZYeS9yTlZaNi9VOUoyck8zMmk5Y3JGaUxZclN4VTE4OWtWRHZJV2EyR2RqYmpLUVY3bEtLdEFRNXJGKzU2bER6Wnl4MGxTN1NCcgpnSzI5dEg2UnRPcjFBa2l2RWdXNHNaVXFuc3hmcHdvUDAyelpwQWowSWltMWY2UnAzK09WZnlocytGRFk4aTZuZGhXclpERWp6NDVjCllJVXZNOEhYenNlWG16dnZOZHVZYlVPdE5DZVZtMjdjYSt1Njl3dHRTMUJCOTlEMSt5Q2ZlNC9HNzQyUC8vUm8vTnpvOWE4Q3F6K2gKYVNsaW5sQktvWFB4WERjK1UwYVZlcEJmR1VEKytoaDRYU0Yra09oTlBra0diYTFjMDhOUW4rUW91dG1vSnJwWElEL0psL2FJVmFNaQpyMUc2QjBnSURJUmxxb1F1eWRBc1BxTWkzYWpVYTFUdU9TelhEY3Mxdys3R0xleEx0VU1panhHSjV5V0Y0YkxjN3lVQUdzSEcyMlAwCmtlajZwYnBoTng4QTBLQ2JKd1FBTktEMEdsUjVBNEFnZ3g0K1F4bzlpdGFBQWFqZng5QnY4SVgwK1FiMEJBYWRDZG5VRng0NnRDMXMKT0R4NFlIdEFmMFRBdVlSTnU0TVRsckdyWitIeXpjbXB2NkhrdkUzSk5DZWtXakJLTFpsbDF1d0tHMDRsWUdneVFDSUkyT2lwWUVpYQpETlpvQkpuSEw3Zm1WbGl4NjZ6WU5TdDV5UUFnbHVUWEFFZ2dvcElscXI4eXQ3cTZsNlpXWFducnU5SFlkbXAvNTBqdDZYTzFweTlBCjZzNWNyRHQ5dWZIMGxhWXpWNXU3cmgzb3VvcmxZUGUxL1QyUUc1QUR2VGZyaDBhYWhrWmJSczd0SDdtNGYrVHlnZUhMZ0NHVWt6ZjIKZDE3ZmYvajYvdVpyKzZxdkhpaTlmckRnMnNHODY0ZXpmenFTYzZjdDkwRkgvcVBPZ3NjUTJJRWNLUnRyTGI5L3RPcEJhODFZYTkzWQprWWI3UjV2dXQrMTcwTjQ2aGd6VThhQ2o4MkhIOFFmdEorNjNuVUlHUXExQlE0OGFPeTkxbnI3VE5Ud2VVWFZ0UG1IN0c2NjdBVUJ6CmlNbHZ1NmFhdVdiQUo5LzQ0VWU5VkphNG5Qa3VxYk9kRTAyY1kyZmpZdWZnNCthNHhNOTJqck1nWkR2UTBBcnc3L0pRQWRBbm9ycFAKSmJVZmlxby9FTmF1NFZZNE12TE5TR2x6Y0lselhSUG40NUxoNkEwSEVHejVDMlBTNFM5cmhrOEJUcjFKamtVOVN2am90NGhSVG96ZwpEUXAzalRmUDE1c0pBSUk4QzZCTmZnaEF3UWJVRGhUb0l3VncrQUltZk56ODFIeURXdWp0SVlBdnU5SkRMTmRJQkNvUlM4NTluNTN5CkxpTnpMU04zSFNmdk0zbldWOTU3YWVHMXNvVFc4SnF6TVcyamlYMDNLTEdId1FFTEtQbld4SFRBQVh6MjVwRVRaeFBqSnR4amhJNXgKT1lGWUV3Z1JsVWpETmZuRTdhU0lTUUQ5VTZIMDlPWDRlOHQrSllBOEpISVBtWXRjaXdBRWdpRkZvTjZZNXdISUZ2VHpNZ0J0QS8wZwpBS0VLYUZRRWpRQkVqSmp2RW1jQlFpQWxZd0RDQWk5OENUbkRocFpoUzQyM0orK1pBSkRlZmRQL0NZQ1lNajVSS3Zralh3dTBtRS9jClpVMk9keUxHWUVYUVV3RzBtSmEybkpYMXhrelhFQURRWE5mdEdJRE1jV2hCZUJ1amdUQUFvZFlnNDQ4T2xOU0ZkTlQvdFl5ZVBRa2cKZTBJeUdnVm1CTkFxVHRaekFXUmNEUjdwQndzR29GbkdlWURtRXNQZ1dYN0owZUxFLzFzQXlUeVlHSUNXY1B6TlNBQWc0UFlPWUprRgpJUmtBdEFTdFgvWjhBSDJwS1A5aVlrcm95ay9GNWUveGkxZXdjeGZTc3VGOWVJZForajZuREFQUVIvenlMN2w1cnhGQTB3a1JjMGp4CmRwU01sY3ppU1FCaDFkWi81KzVoQ2dJRHRONnh3VDRBb0l3dy8xY0ZVSHlvZDFTUUZ3Qkk3eXNXeXFVTW9VSW9Sd0JTeWRId3I2Y0EKSkJMRE95NWJ6L1JmU1k2d0k2UTZ1R1k1RVZQL0l0Nm05bFNGYWwrNUMwenZSWEZUdVRMZEJYL21CaXdoUjlzeHNxeHArV2F1aGRPLwpUNS8yZFlTTmF6aDVhM0ZhMjJoTjEvblN3ejIxYmNPMVhlZHJlaTlYRDF5dTZCbHErK0ZHVHZmbzcvU2w4eGtONWx4QVQ0dU5FSFZQCjJJdXI3WVNWQzRRMXFKVDFtUWwxSmlLdVF0TVBpcXNXU09vV1NpbzN1c2RzTmVoL0JZQzJHdEFvc0dlTG9IM2QrU29mclg5cTFxN0cKQTd0cm0zYVhWdmp1eWNacnRyL0xUbC9ITHY2VTEvd0p2MlVkcDJJRnEzQWhyY2lXVUdaRmE1eTdzY2lDVkdYaVd2SEdkOFZ2L0gzUApSOXljOEx6UkI5ZkhnVDYzSDQvZEdidi8rUDd0aCtPUG1nWWVmeUd1ZU5NbC9YTlpKRUVxRUNsd2NFNmxTOWhjQlVNbzNmaXFBSW9PCjBFZkJpOXFFWGwxa2lHOUVxRytlbjIrYnU5OXB2dWNKaXJ5SEtoMFF1cCtTdUxVTDVhY0Y2a0dlcmsrZ0JnTmhtU3FoSG9tdVcrelIKSzlVT0tMeEFLbjB5VGEvVW8wK3U3cGVwKzZRZS9UTE5vQUxOR0FTZzZaTm8reVEvVjFJL0ZYRFBnRmc3Ykt6K2dUc1B5cjFHM1BVRApNcVFmU0wrN0p3QUlNOUNBMmhzQWhLTFI5MnYxQXpwRG43Y2VSVy9vMFJ2TytBYWZDZ28rRXhMVXR5MmtmMnZ3UVBpbW9hanczcmh0CjFWdEQvOEF2c0tNMTJKSHo1dUhpL3A5TDlCdjREQnVYV0N0S3NUVzF4SlplWnNjb3QyV1cyekRLSU5iMFVpdFdPY0JvYWxEWkZxc2MKcVBUY21IUEtiSmxsTnZRYUswYlZDbmJpVjBKUHBwUXBVQ0NZdmhLQVdESWN4VVA4SjM3WWF1ZDBuUGZCalAzREIvdUc2NC8wMUhZUApvM1NOb3JraHVvMEx4ZlNjYitpOTBOeU4wdFIxSGdJN0xUMFg5L1ZlZ2h6cXVuRVFzMUgzNVgzZGwvZjNYdHJmaHdEVU5IS2haZmpTCnZvRXJBS2JESjI4ZWJydDE2T0FQaDVwdkhxeThmYUQ4eHdNbHR3OFUzRDZVZi9kSS92MjIvSWRQQVBRQUE5Q1IydnNBb05abUJLQzIKSS9mYmp6NW9heDlyNzNqUWRud01jdlRrL2FPblVWL1l2ak0vdFE2T0hlc2ZMMjBmWHl0TWVtTmorRnU0NkxkY1ltYmhFMDF4YVphRQpiTkNQRFRIUEVvZW1MclRDN3pWelRadmprZ1FBbXVrYU14TVhQY3MxQm1KRnpIRmlGSy9pVlV3RjBNZG9FWXc2VU5FQ1dxNHBNY2tFCkZ3dVppOTh6ajVBMG41Z09NU05sQUl6bUUxTk44Y2x6WFJQQVV0TUlrZFBSNU1XUjArRGtSdy81bDB5ajloYnBmVjRJSUZRSjVDc04KMU12OERRby9nOUpnVUJzTUdyMUJFK1RsRnVDbE1PaWtPZzA2MTZpMElybWFMMVp5M3VIRXJtSmxybUpYck9MWHIrQ1ZMMlBrTHFQawpyNmFVZmN3cC82MTc0ZTkxWllzcGhmYjRtbVhjT2p2eTNpV0FiSExHZkdJeUhOTGhDSThCQ0VQUGJFSThaQll4YmhZcEJqTVFWaEtFCkFjaU1FUGxhQU9TcTBDeWhCMklBUWtPNkNMdCtGWUNNTFVBVEFFS1RRV01Bd3NxQTdLaHA0SjVKQXkybFpOclJNdTJwQ1F0SUNUYWsKcUQ4SURTOEhFT2pudFFDSUlSY3hKVHl5VFBKWGdjY1Nhb0FGZVpjZE9RNEQwR1FMa0MwQm5sVWlBR2dGT3hzQmFKYnJscWtBc2pLMgo5MHdGRUxiL0xJQkFQMU1CdEpvOUFhQjNlQWhBY0djYlFpTG9aN2JyemxtdTIyYTZoR014TVRiL1lBQjZtN1RGaWVyL0pjY0RKNWF3CjVWeSs5SFVDU0swVFlRQnlVOUVCUUJ3UHdRWUpkekhiYno0eHpJUVlNWU8wSFFCa2lXQzNkOW1MQWZTRnZPeHpXZW1YMG5MSVo1S0sKajBYbGNNOVY3THpWckR4d3lZZThDZ0RRT2xISmg0THkzL0x5Ly9INnVzQ21FWGZPSnNaWWs5T1dNNHZXY1NvLzVsWjh3aS85UkZUeQpxYWptYjl3a2hqQTRRS3VIMDFocTJLc0JLSFc3UHdhZ3lFRFBMWUZTSDE4cFR5NmpDZHo0Y3JmbkFrZ21Vd0NBK0h6NWVwYlBjdUoyClc1ZVVCYzQ1RG9TTVB3aTNLVFVlSWRwWExvTDIxTUNaZ01oU3N2OGwzdlErQ3cyTE5kMElINkg4MmE1SkpxN0owOVpIVGY5bXl6cEoKa2svT3NaTGpOK3BQWHEwK05kVFFlNm1tKzJ6ZHlNWGk0ZHY0aUtacDYyUG1jV3F0T09VZ0hsdGVwYjJnRmk3aTdRUTFOcnhLVzFFVgplT2k1Y1JCVkFuMWdDL3RPNG9yL0JrQ2I5U29malJnQXBGRUx2RFJpQUpDUFVxaHc1M3J2aU5oU2NXaGI4Nm5RcXNPN3FnOUgxQjBMCkxtMzlpeWI3ZlZibXUrVHlqMWlONzZOaEtjWEwyYVVPcEpKNUx1bVc2K01XYllqNVN0dElDRGxLQ2FvcVBYeDJiSHo4L3YwSDQrTmoKNC9kdmpEKytBeEpLYno2N2pKMy94b2FhSmR5aVR3WGJ2eFZ4eWNMdmVISVMzNDNIRnRQRXlsZXVBWUpYRVJYb0E2OEl2YTdOZnRFaAova21iQTdPRGdwcDl0eHgyOHp2T2N1L2pLSG9seWs2K3JKMGo2NWY2QUlDd1BNV2dIZ21JUjlzblF5VStJS0V1Z2FwSDVBRnd3UnB5CndEUkRVazhBRGR3SUFBSUpUWGFmUFpWaFkvY1pHbkt2UUoxZjZKNEtiM2pZQVlXdXowMEhBSm93a0JvQkNNWERCd0lBNnRQcGU3MTgKZW4wbUFOUWRFSHdtT0tBN3hIZGdpMTkvcUgvZnptMm40bUxydCsva3lqSVhVU3FYc1dvVzBRck1jV2x6dm84eHdXV2d5eDV5aVIycApHR0pMTExJbEYwTnNTRVVRUzJxeEJhWEluRnhvUmlxQXJSV3RCR0JreDZwWXdKd0lnQW1aaVY2R3hacGU0a0F0WFVDcHRxRldybUR0CitZcXZBd0R4WHgxQVRBbU41TWIvaThEL0hXYnVVbW81WWN1QnZHT1g5blVOTjUwWWJENDVCR2s1TmR4eStpeVdmV2ZPTmZhZXg5TGMKY3hiUzBuMTJYODg1eUtFejF5RUhUbDg3Y09ZS2FoL3F1WEtvOStyQnZtdU5nMmNoTFVNWER3eGZQVFJ5NDhqdzdjTURQeHpzKytIUQppUjhPZE56Y2QraDZTK09ObHVvYmdLRWpaZmVPbGowQUFCMHBmOUJhT1hhayt2NFRBRDBBQUxVZXZ0ZldPdGJXL3ZCb3g5alJZL2VQCkhML2ZldUplNjZuN0IwL2ZQWHp5eDg2Qjhjb1RqOWNIVlAxbWZlaWIrS2pwcmxFemNIR3pDVWxteEV4cjBsNWJVajRBeUpxUWd4VkIKQTREbXVpYUNmdUJ1RURSUUhCOWpRODVkeENwRkUwQUxhajRTMUh3bWFmaE1XZ2NBZW85ZnY0eFZZa1BOQWk3TXdFVkR3RUNvNzR5UQpEREVscGhpVDlEWnVEd1lnZEFmWEhUTVFnR0t0cUdGZlNiUXFiNm1QRCtvQ3d3RDBjeG1RRVVBb3Z0SWdneHdCU0krYWYveThwQkNkCldxVFRpRDIxRWppL2VHaWxFRGp2U09TY0Q0VzcxN0JTbHRLS0Z6RnJGckxLQVczTGFKV3JhUHVXMGNwV01Nc1drWXFXMDZ1V00rdWMKcUtWT3htNDdBSkFaS1dVU1FCQU1RSE5KU1hOSmUrWVFFNTRZS0JJcmk1NEUwTmR5ZDUyQi9WOEJTQ01CQUMxbEJLSW1uQmNBYUFFNQo5WmNCeU5nUjltUXlQL2p0UE9kWU05ZDRyQTU2S29DV2t4R0FGbERpN1lqeDFzVEkzd3YwR2gvMDVGOE9vTkFBSFFhZ0VIL1BYd2NnCnRsek1sSENvVXRGWElvOFY5RUFyY2dROEJ3RFFaQTBRWmlEWVdVSlBmd1VBTFNBbE8xTFR3RFNnSHd4QWFCMzRad0MwaHJQM1hjN3oKQVdReUJVQ3pFSUMyUGdVZ2p1ei9Ca0FCOHdpaEV3QWliRWNBSXVVczVlUy9DRUNmR3dIMGhhUU04cVdrOGpOSjVmdkMwbmY0UmUvegppajhXMUh6S3J3SUF2U2NzL29CZkJnRDZSdkxhUm9GTkkyNkhMNE1WS1hVWm94QmJJT3hqWHNuSHd1SlBSWFYvNDZZQWdBSjE2RG9lCkExRE9yd1dRdHdIZWRqa1ZUcWN5eFg4Q2tOY3l3alpMNXlTN0RYdnQ4Wm0vRjJ4Mzg5Q0ZhSlN2Q2lBdmpVcG1uUHZrYTc3ZlNwZEUKSjBLeEl6bmZhbU9jcVV2TTlBMDcvNTlMNUV4aWxpa3VmeEV1aGV5WG4xamZXZDg5MG5CbXRMbi83SUdyUDBsVEQ4OWVIeitIV0dSQwp6ektqNTVuVENzeW9oZGJNU2d0YWhiMmdIaFZ0Q0VxblZyQk9GckZDTVByODl3QUs5OVU4QlNCdmxkRGJYYURmN2g5UlhMMjkvblJnCjJZa3QxY2QzMUp6WVZOWHAzM0RTcDdobnZXL0RoOHlxRDVsTkgzQnEzdVdYcitTV09aQ0w3YWxWckxDMnhtUFh4aDZOUHh3ZnYzWG4KcC9ISGo4YnYvWFI3L01HUDkrNlBQeDcvWVh6Y1AvdWt4WGVKYzlmbkxLRGt2cnR4KzUrNFFkL0pSV1FsbVNYRGNjVlVrVHVmNjRibQpRbndsQUVVR2VNZjUrOENMaWd6eGl3M3lUZkl6UkFicC9iZjZwTWZGSG81Tk91NFIwSUhqOWpERUF5TGxHWTViTDFmZHkxYzlheURJCmlGQTdMTkJBWU9lczJQdWN4R2RZN0RVbzFJMEswRHJ6a0ZHaEZuSldwRHNuOW9UdHMvU1ppSEc2UmNRZ1ZEK0UwaS8zSEhMM0FmMU0KQXFoZjVRWEJBTlJ2TkZDZnhtY1NRTjNHOVByNTlRYjY5Ry95SEE3ekJnQjFSZXh1MkI0Ykx0Y3ZJclY5d3E1ZnhxeXd4MlhaRXdybgpmWnV4a0pCcXhpNXpJcFU2RUlydFhBdHNYZkp0WFBOdGNRVVEyREVuRnN6SDU1bTY3b1hBamlXNUNKUmp6NnBjeUtweVlsWTZNaW9jCjZPWDJ0TElGZ0I1cXFSMmxaQUcxeElsYzRrQ3NzcVZVL0RjQWtvalVGSjc4SzU3dng0S2NSWXlEaThpMTlNMjF0U2NIR282UFF1cFAKbkcwNGVhSHgxTVdHMHhjYlQxK0JOSncrMzNUNlF0T1pjL3ZPbk45Lyt2ekJNK2NQbjBacDZodDlVaDUwWWQvZ3hRTURxQjRJY3Jqdgoyb0hlcS90Nkx6VVBYR29adnRKMDluSUQ1TnpGQTJldkhoeTlBUmc2Zk9iV2tmWWZEKzMvOFVETjdmMFZ0MTRNb0xHalIrNGZiWHNBCkFHcnRIRHQ4N043aEUzZVBuTHpYZU9aTzI3RTdIU2NmQ2lNYXBuMFhQSTBBUm9reHdTTUFtZUQydk8yYWFvN0x0Q2JrTHFBVUxxRGsKbzNvZFhNNTgzQlFBNFhZRFZtWVJZbTBwZVl2WlpXdUYxZThMVWVIejU5TEd6MlgxbjRocjN1SFZMV0VWQXlObTRlUGV3a1ZCNFBGbgp1cUlIbjRWUEJHTzlUVWhFQUlJdFB2RnRmUHhzWE14Y2w1MnpDTkVBSUV0eStEL0VYdTQrY204RHgyQWNDUFlzZ0NZS29nMXlGRDBhCkRyYlpTeERtemZmU1M3MTg1RnBQNlpONUJlVnVTalJtOWtQZXJqVzB4TVdrZ3NXTWlrV2NZaWRXOWlKNjdqSksrU0pPMWxKV3hScGUKNHdwV3ZoTTVHYTJOUmMrMlp5VlpVektmQzZDM3lja1FaQ0RqR0RFTVFKRFhCeUNSUWl2RnVXbW5BQ2o4VndBSTA0OFJRTVlSM0dobQpJQURRRGd4QVdCMzBpd0JrUmRqOU83N1BMd1NRTVY0QW9DQS83YThBRUVjaFlZalpOS25nbnlMMUtucUFMV1VYUEFkSFF2U0xBWVRiCkJBRENhb0RtdTBTakxqQUNxcEhHaXFBeEEwSHN5U2tMS1dsTDZKbkxxSmxMcUJtQUlXeWFSRlFaVFVsZFRNdFl4YzVkeWRxN2hwUDkKRG0vdkdsN09LbDcySW1hV0ZURng2dmd2TE5ndGMzRWhNOUU1UHR5Qkd2QkhycG9rNHJPbEhLNGIvMG00VThLR0lQMFlBY1JSOFBodQpBbmo5b0IrMVdneng4SkE4eXlBM0FMdUdxMVN4NUZvKzZFZXVKck05MlArUWlSMVlJZWJrc0Rud1VZQS9MWDduUEZLVUF5TmpKYnRvCkhhL3dBMEV4QnFEUEpHVllQcGVXZnlHckFneDlKb0ViS3o2VlZINGlSbzFBcUJoWlZMVk9uUGVCcE93VGZza0hndndQeExXL0Y1VTUKSzJMMU9tV2dqenJVMTJPTHIycXJ3UjJKSjBBVDdxZkY5QVB1d1FMNjJXeFFiSUpMRFIrWm53Nk9qNUxmaWczbWpQQlo1RjF6aWJ0bgp3OWNibGRsSHpTY21Pekx5MS9ESzF4bVhpUDlVVVBhbHNQeVAvQ3lLZU9kbW5UNTFrMWZhRnQ5VTBNOVcvK3p3b0p4dHdiazdnZ0ZBCmUzY1pFeEVNbVp3RkVldi93aFlDU3dqejJSMHMzMmFRdXhzOHZwTzVVWGx5dVlpdmNPZExaRkozbWRoZEprWHpJRXFOUFdCaW1VZ2sKRVFxazN6TTBhNXdEelRmRVc3aG1PdUNUZnl1SUVXa0RRanpaQVRwcG9LY3MyRk1DQ2ZHU2JVSHVBUWFoUmNHTUMyS2doSHJMSVFBZwppRUhIOUZCeGVlNjhmMG04M3FFbDI1T0swSnFGK0hTNG5wdXhJZHBrUTRJNVBzdU9VZ3hYVG91b1pVdm9GZks0bzZsSExyVGVIQSt0ClBXVkhqWGh6UXp4YzZsa2FEeHhvZmhGQzZteGkyaHh5bGlrdGJ4NnpHRTVzWnR3U2MxNjVCUTh3VkcwdHJFRXhqdGF4RVZaYWlldEIKUXBhU1dqdEo1YmZLNkZCZmZWVGd4RVNJOFVFR0FCQm1JR3puUlJNaGh1bFJDNUJPeTFPcEtENHlZcENVN2VFdUQweEpDYTNyREtudApDSzF1RDYwNUdsclZHbFo5ZEV2VjBhMDFyUkYxSFdIRkhYL1hGUy9sMWEwU0gxM0hxbGhIU0NMNkhXdy9kaGJWTjQ4L2VQUnc3T0hECnNidGp0Kzg5SGtPRlA3Y3ZnSDY2cjQvVFFnL08renJWOUx1aStjNDVWcmdrQjJMMG45aDZtcGpGa2xNWmJreXVnc0dYMFFRS3B2RXMKUzVmSWFXSUo1YmtBRWlsWXZsb3BBR2luanpiU3p6czZRQjhUYUlnTDlvTUFnR0FmeXg2TlowSkdha2xUODVHb3JFNjZzcHZNRzVMSQp1N2lpTXh4bEgxL1h5OUgyc0hWOUFxL1RmQTNBYUpEdjFpZVU5WXZjQmtWS01OQVFYenNnMEE0SWRZTWlUelNFL2tuZ3g1L3pwSDdvCnFXRHpMaHE3eVo1RXBvUDB5N1Zvb05ra2c0d0dnZ0I5a0lIVTNrTWE3MzZkVjQ5VzErMnA3ZlgyN05aNW5nb09hUThONlFyeXViakYKMEJxK1M2N0xzV1BXck9OVXY4ZXVXa2tyWDBRb2RzQVZPQkFMME5Cb2FxRUZMWE1lSVcyZWM1cUZhN1lkb2NBT1gyaUZ5N04wemJWdwoyV3Zta2pOdlk5YmNEUm56bmJNWEVBdmhjN2lVV2c2UHNKSlJzWUpXQ1JmNlN5amxUcVJ5UjJLWkE2a0NZbzh2c2NLWFdKT0szbVhGCk93dDBQQW1OcHlCZ2E0RUJnTEJwb0tWUGxzSjRZaURBRUc4Q1FLamxtODBUc2xoQytUZUMwQldzTEVkZWpRMDV4NEdhOXZXMlV3ZE8KRHRZY0h5azdOVlRWMVZOL3VxZmw1UG5tTXhlcnVub2JUNTJISUFPZHZnQzNRRnE2THFGMFg1ak12cDZMazJudXU0U2xwZjl5eStDVgpmVU5YSWZ1SHIrMGZ2cnB2NU9yKzBXdjd6OTg0ZVBHSGZlZHYxSTFjcmhvNGY2RHg1c0c2VzRlcjdoNnRlTmhXTWQ1Uk05N1dOTjdXCk1uNzR5SjJqclhjUHR0ODdjT3JoNGVNUE9nN2ZQZHAyZi8rWlI2ZVAvdEE2TU02Sjd6QngyZjJiOVRHelhaUGVjb2w4d3pVY2pESUgKbDJpR1Q3Y2k1aGlIZ09VYjV6L010aUxrQW9CbTRST200NlBmeE8rZTVob0JSd0RnQy9Cb0dhdmtQVUhWeDZMcVQwVTFuNGxyUHhQWAp3MVhmTzl6YXhmUkNjMElxZ0FrQmlCZzFneENGeXB5eEltSjhETVNFRUdkQ1NNQUNKL3ZwcnRFekNMRVFDK0xPMzBvOFJONnNBTzBFCmdDYjd2eURZUEVCQmV0bGtBdldLQUI4NW1BT2k5NVQ1NktSZU9xbFdLL0hRaW8xZFlFS1pTdkJYWWZCeWVvWVZPbElWTGlVVk9wSnoKRjlCeUhXbVZTNWxGeTlrbEt6aWx5MWpGaXhnRmp0UmNMSGFVREV0eThteFNQRHp6YWFTbzZhVG8yY1E0Z05wOFN0SThjaUlBQ0g2YwpLQVlpeGN3aXg4N0Z4YjVGM1RxWHRQT3ZZbStkZ1J2b0xRendGZ1g3dWdjYjVDaFQ2Qk9zVjBLd2lSQUJRSHBQdWZIWnlqeTBVcldIClRLcVJLejNFVkxuYmFyckJoTFFUVVBVV0hoVXlnelhmSnNaYmtCS3RLY21BbmduOVVOQTZHRllBSUZMaVBGTGNIRUlrQUFoMWV4RjMKZ0hVbUczNG1BMmZ6dWZpSWVmZ29DM3dDS01xUmtnbmdjNkpuMnRNekZ0RFM3Y0ZEbEFRYlNvSTFOZWF2QWwrZGw4TGZUNzdKVDczWgozeU0wVUJzV3BNUG1QTVFtUDhUMnd3SzlVZk5Qa1BmbVFLOWdQNjlBZ3c0QVpQQldleGtCcFBHY0FKQlVoUUFrVVlLQnhFS2xtTzhtCm5OSUN4R1JKaFRTWjdGdUovRU9XOTBMeUxnUVZZcHd0QlpBSDFFdGVnSks0a0pLeWpKR3hpcFB6Q2dCYVJFMS9yUUFLQXdETkltMXoKcEFXK0VvRGd0NjhLSUNrQVNFVmxxN25QQTFDTUF5TnpKYnZrUlFEQ1dvT1Fmc1Rsb0o5SkFIMG1ySHhQbEE4QStraUE2cURYQ2F0LwpLeWphSUl0OExvQzIrZXRlRENBSkFFaXNOZ0tJRGlLTW1FM2FQUk1YT1FrZ0IzcmVhbTdaZTd6S3FRQ2lTbmFGZUJvd0FLVnREWm9FCkVOWUM5SElBN2RtaWp3LzEzclhKRFFEa3BsZXZsN3BUdVFvQWtOeU5OeFZBQ3BrY0RQUXpnSmpxcVFENmtvY0JpUHZyQU1SWGN2OGwKMGIxSEJ3QVZJQURoTW1hNXhzellFRHRyNHg0TFFqWmNWUytrbFVFQVFQYXVLZi9TMTZqU1RuMG1UemY1YnZmMGpSbTJ6REx6alhETgpCMWQrQ1ROZEU2YTd4RS9ISmM3QUpac1FVazNJbWJPcG1YUHBlMDBaQmZOWkpaYnNNaXRPT2VvYTQxZlo4aXB0QkhWMlJoVXRFRldzCmQ0c0tBd0FGVEN5Rytzc0J0RldQT0t0Ujg4UktEbndoQS9YK1dzTW1mVUpTYUZWYldIWDdreHlkektieVE1Rk54MzN5VG53cXIxNUQKcWZrSHAzaFh6dW1SUitOM3h4ODlIQisvZTNkOGJQekIvZkh4TzJQamorSG5lK2QrR2g4dk9YVHVhM0dXMmQ4aUxaMnp6RjJ6VGI5UApzM2JPdGlkRVlRQml5aWdZZ0FSeSttc0UwUFlRWFp4R2s3a3pxdkRJNGNvRGh3OEdSSjhtcVFZWXNsTmkrV20rN0JSZmNVcXM3dUdyCmhsbktVWjdIb0VSM1hLSTVJZlk0S2ZJNExkTDFpblg5SWxRdDFNdFZUZ1hRVkFOTjFnODlGV3p1NmFrQXduclcrbVNhSHJtbVZ6RmgKb0Q2bEo1WitZeU1RWXBDblQ3ZVgxMmt2ejlQZVhsMEdyM042d3pGOThLbWd6UmUyK1IwSkNkQzY3ZnFjbnZVZW8zWWRweElBdEpwUgp1WVJVNmtRb2NpUVZPcER6MFh6dXBOUzVyc21tRzFOZkJLQzN2NThBMEdKYStYSjY1U3A2QlFCb0piMXFHYTFpQ29DUWdSYmdpaTF4CnhlYkUvTFdNbUEwQ0Q2NzBad0JOcm9QeEh3RWtrSEdZWXVrL2VFR09aRGdwNXBrVDBtZCtzMjIyU3pSM2UwM0JpVXQxWFlQMW5RUDcKVDUrdjdldzFMaGg4SFFNUVpxQVhBV2lxZ1pwNlVTWUI5TE9CUnE4QmdDQXRaNitCZnZaZnVObHk4V2J6aFJzSHp0M2YxM2VuNmRqdApwZ00zbSt0L09GVDNVMGZqZzVQTmo0ODFQemphT2Q1dzlNNmh0cnR0Uis4Y2FQL3BhTmZqL1VkdUhlb2RsOGZ1dDZSdWUrTzdzTGRjClltWnVqQUdkVENQdGVoR0FySjhISUZOaUVuaGlPYnNVcmY4MUJVQ2ZDR3ZYY21vVzBnc3dBR0dselU4QTlQTkFxaWNHUW5rQ29CZ0EKa0RreDRyY1NUNUUzQjQ2MGt5MUFVMnVBZmdXQS9pWUlYRUZOQlFDQnA1ZUFxc201OXJUY2hkUnlERUFRREVCT3REelFEMnp0S1JsVwpKTGhhaTRPbkRmb0I0cGlTRXVhRE0yaEpjOGtKY0R1SVpBNHBIdmJud0krd0E2OFJBRVRjOVdlSnQxYlArZFVBa25zOERTQnNTc09uCkFEUXhCT3oxQWNpQk9nRWdXK29lRzFyczM0Uit6d0lJcS9qNVh3Q0lJWk45SjVWL3d2RmVUTjF0VDBtMUl5ZkFGZ0JrSk0wZUJ5SUMKMEhJbXFscitSUUFDTkQwWFFLaGMybGdjRFFBQy9id1NnR2JqRVlEbUVMYzZVZjMvekZPUnhRSUFFTWROOEVzQUpIQVgva2NBS2JRSQpRTzVxREVCc0RFQi9sMHJzbWFIUEFtZ0ZxL2dsQU1MMDh4U0FQdUdYdnl2TWUxOWM5aUVmOEpUL0x1aUVsL3VkZE1ldkFKQ3ZweEZBCklqOEEwRXpTendDQzdUeENFbnl2NEhyaUtRRFJwQkZoM243UEJWRHVqdUJKQU9Yc1F2ckJBSlN4UGVBcEFHMHh5R1UrSHY4VXE4aGMKTjdsUUtGY0laRExac3dBU2k2VWlvV3dEUTduR3hkOThReXdDRURIbGMzNE16eU5na3lmL1dRQnRNeWhlQWlCNHNSb1ZWNkJrZnlmVgp2RTlQc0NmbVdoTXpFWUJjNGt3MnhNM2VtR1JKaEF1cHNrWDBjc2dTZXBrbHJkWWFYMkNQejdSeVRURWxwSnRTQythNlpOamljMmE0ClJFT21PMGROYzQ2RXZPa1NPYzAxYWhvcUpvaWRpWStmUlVpYVEwbzNKV2ZEdWNTQ1hteUZ5ampLYlRqVjlweEtPMTYxSTcvOE8zbmsKVm9NKzV0VUJGTzdqRWFLVjZUUml3ODd0NFRtVjhZV3RzWVg3ZDVjM2JDbHZ4eEpXMlFZWUNnVUcxYlpCZ3VyYXc2b09iSzg5Slk0NgpSTlNWNytzY0ErZmNlWHo3THVhZWh3OGZQQngvOUdEODNwMjc5MEZGajhjTkJZTkxYYVBNdm80M1g1OHo4NnNrYTBLT0RTN2IvTHQwCkFOQWZXVDVQQVVqb3hrSW5XZ1h0dndmUXppMitPLzNWT3czYTJOajQzSU9kVFdmT3RlVTJIVk50NnlVTDJsaUM0ekxGb0V3MXdKVjEKY3hWZEFsVVhYVEhBOGVybmVmWUx2UHFFbnQxQ0Rhb0I0cXQ2K2U3OUF1MWtwa3BvYXZmWnY4Vm9vRjZ4WmlxQVVGMlJ6QU1DQmtKeAowL2E2NjdBTUtMMzZWRjVkV3UvVG5sNG5QVDFQZXVwT2VudWUxbnNQZVJtNnZRUDdBZ3p0d1pwUXo4Q1BHQW4yK0pMUDZQVUFvSFdjCjZqWE1xdVhVaW9XVVVnUnVRZzU4M21hNzdnRnR2NzBoQlFCa2kwZGRZSk1BTW5lZUFCRHNPNUNMa1g0WTFVQ29WY3pLS1FBcW5RUVEKNE1uTU5YOGVQbnNWTGVJN251cFpBR0ZkWUM4SEVGZktJQXVGZitVSDJKQWlwN3NtelNNbHo5NjQ4Ly85YTl1YjYzZTRiaWtyTzNhcAo5Y3kxdXFPRHRTZUhxazZNMUhWZWJ6aDVEdkpzTzFCejEza3NUMGxvRWtBb0ExTU1aTlJQMDhpVjV0R3JMZWV1QTREMlhmcGgvK1ZiCnRkZXYxVjlIeTN6dXYzQjcvOENQKzQvL3VPL2dyWDJOdDA3c0cyODU4S2lsZGF6MXlKMk85bnY3ajkydGJmL3hhUGM0SzdiTm5MejEKalgvNXZVV0xOaUhGbWJoRXdlSHJEWmZ0SnJqNFNRQmhNMEUvQVZBTzNJZ0I2QzNjYnJSTUZUNEJWTHFZVWJLU1cvNitxT1lUTVpyOQpHUUQwcWFqdUkwSE5hazZsRXkxL0hpRmxCbTRLZ1BEb09Ea0RId0g1TndsQkVJQ3docUpZTTBMRTV5SXZnUmZYejVQL3FnQXllTW1mCkFwRENRd1FBK2xyb3U1S2FhRTB1ZEtEa0xpYmtMeVRsT3REM0xxSlZnSHVlQWhCa0lUM2ZnWkp0VFV3MUpjQ2hLWG8yNkllYVlFNUoKc2lRbm05TDN3SStvR3BvWVowcE5OS2Vsektja3ZVMU1BQUM5U1VNQStwUElXK3ZEQy9ReWR0djV1cjBFUU05MmdXRUFVbm1JYVFyMwpOUXhmckZzTnZXT0U3Wk1Bc2lJbnZSWUEyUktUQVVCTzFDeEhXc1lrZ0JaUzl5eWdKeTJneC85ZDVPL2w1ZllTQUUyV1A3OGNRTmhTCkdDOEJFRm9zeXdpZ2pUTDU1enlmNWZSSUIwcnlBZ3BheEFMRU1qa0hOS3FBWm1XOERFRFlKRUJZSlJBQUNKUXpGVUR3SXpaRjBNc0IKWkUxS2VoR0FadUZDMFZwZ3BQREZOUCsvOFpVVU1lL2xBREl1Qk1hY0NpQjNsZkNYQUVpaVFRQ1NxbWtNTmUrdkVza0NSb2daS1hRTwpBYzJGQUYrYlp3SDBpYVI4RWtER0dEdS9RRCtpTXFBUHBwOFBCYVVmY1V2ZkVZQjdTdDlqRmIzRHpsdkZLZjZRbGJGZXVnVUFGS1QzCmVCVUFpWXdBa3Y1VzVHOUdRL00wR0FFVWdRSElGSjlvUjkwTFg2ZDN1V2dwK0VrQU1lRDhyUTlJMit6OUN3RUUrb0drYnZmSEpnR0sKQy9FQ0FJVVo1Q0pQelYrRjdnU3VXaVlTeXhXaWx3Tm9yYXVmeGNZNEFKQWpNZjB6WGl4SEhSVHNKWHhWQVBsNWNiVnFua2pKMkNoegovNUFSNTBqSU1RSW9hN1p6d3R5TmlmTmMwbTNKQlU3MDhvV01pc1VvWlE3OFJudDZ0ZVZHZE5COG01eHN6a3FiNlJ4bFJVakRBRFFECmpuRXVrVys1UmhpekV6SnRZOFJienJ0TlhLSk5uRkY3MGh3MHRkcGVTd0phRjlxT1VlbklLTGRuVlR1eFN6ZElkMi8xOGZrVkFJb00KOGdsUml3SU1IbEhGVmJFSHowZlVYMHhvSElxdVBicTc4dVN1eXVQYktqcTNWblJNR2lpa3RpTzQ0WGhZWmV1Mnl2YXdrcVBIYndKNgpIbzNkdVRhT3pETis2K0h0ZTQ5L0hIOXdkL3luVzNETG9aRkh1T0FESnQra21INmZadWFjYm9QTHMzTXBNLzgyMy9UYkZDdGMwZ0o4CjVGUUE4ZHlZUWdVREFJVFZBRDBGSUR6UjVWVUJ0Q01rZUdlb0lkcFhGYW1VN3c0SjI3dnZjTVBnNWNhakk0MkZoZTErTy9ySW1tRzgKcko4cTZXTkord1RLVTFMVklNZWpqNjA2dzFhYzRjcTdoTzQ5WWxXdkFEVVI5ZkUxazVtS29jbENvcWRqTkJBQWFESlllVFVHSUJRRgpBaENLdXc3U3AvVHNVbnVlMEVDMHA5U2FNeXJOR1kzdWxBNGtGTkJqMEI4eXlIWjZDRGFJOUN1WmFjc1l0ZXRZVGUrem53QUlQbFNVCllqZ0JtK015NXptbnpOZ1FPL1A3K0tjQUJKa0VrT21HVFBDUUU3VjBKYk42RGF0MkRiTmlOYXNLREFRZXdnQ0VHb0hJNVhiRWN2aTMKODV4ejVycWtMQ2R2L1JZT1dMOEtRQndGaXlEZy9vSHJiVTdZOGNaM1NQYXpYU1BndlBpR3k2NDUzMGZoZmV2empseHU3amxmMmQ0SApObTArUFZoLzRxeXhNT2hwQnNGdjBSMmVNR2d5alQwWElCaURtdnAvTmxEejBPV1dZYU4remw1clBudXQ4ZHkxcHZQWEd5OWNiNzU0CnBmbnFsZWFiMTVwdVhXKzRjYVArMHEzYXdkczEzYmZyV2g5MmRJeTNIYmgvK01pOWZZZnVIajArWHRrK3p0bFdPeHNYOWNaM1lkT28KVVcrUkkvN2Y5Mkh3NUdjUkluOUQyRDNiTmY1dFhCSllCOFF6dVJTR2NSUll0aGsrYlE0dVlTWStCZ0EwM1RWNkRqSFJncEsxakZXMgpsbGVKQVFqMDg3bWs3aE1qZ0Zad0toWlFjazN4eVFDZ2FZUklKQnVrSHd4QVU0TXdaUFRRcnVuZ0tpSWtCczdRbndqMVhFKytyNWRBCjd5V1lDaURZK1k4QTBudktuZ0tRWEMzOFZ1UzlscFlBbURNQ3FCQUF0SkNlQ3ppR1U4bktKd0JhekN4RTlLSG5RUndwMlRha05EUEMKbm5uRWhIbmtlRE5xa2prRm5KRTBoeElEQURLU0tOR0NubUpCVHpVam8xSnV3QWNBQ000RmZ4VDZxQUZBUGxJamdJejYrY1VBVXFtbApjZzhaQUlqcDVyYVdpUUEwZzR4b0NPZGZFM3dNQU1pY3VHY1NRR2dXeEZjSDBCemNMbE5jSkxBQkFPUkF6bmdLUUl0b2lZNzBaQWZtCm5xOGtnZDdlN2dDZ1lGL1ZVd0RDRElUdGhBYWdkVENtQXNqUDJ3TUFCUHJSYVpXL0JFQU1CWmN0RTdGa0VoZVo5SGNDcnhYMG5ZN2sKUFF2SWNVZy9KRFQreTQ2NHg5ai9sWVpWTGI4TVFLZ1I2QW1BSEtscG9KeXBBSUxmV3VIUXBFSDI1QlFNUUN1WU9WTUJ0SmlWL1JJQQptZUMyb05YZ1NWdVcwd3hmODkzb0VpNEFpT1VtZW4wQUVxcTFiQXhBRWcxUDVzRmtxQVIvRVV1TkFOb3lCVUJ4RHZUc0ZjeUpMckNQClJLWFBBZ2pURHdZZ1REL3Y4OUFNUUt1NGVhdTVKV3ZweGF1WWU1Y3pDOTVuSnY5TEZtTHdWTDBTZ0F4NkJDQ1JVdmFsS0hnK0RjMk8KWlVKRUs2MU1KOENYT1hJdWZvOHRKV2NwczJndHQvd0RmdG5Id2drQXNkeWl0L2tHWVFCS0R3OStMb0JBUHk4Q1VPeG16NTJiM0VMMQpDcTVPODBlQnlwV2prWWprY3BrUXhQTVVnR1FTT1FhZ2pTejM5MXo5clozakFDdE9wS3hQdUhGTVZWQ2dsK1JWQWVUdkpkQ3FPUklWCkZhZVFmOGFNV2tqTXNpYW1XK0gzb2psYlhWSXQ4RmtnbFVYTVNnam9Cd0tYN1BhRXd1WDBLaXVYVEF0cXlteGl6R3hDL1BUMTBXKzUKb0pFamFKaUo2MjVqZGsxMzJZbXlJV0xHeGwwek4rNHkrUzVpNXZySTJlc1Q1bjJmYWU2ODE1Wll1SUJTdVloUzdraXZXc2dzMnlpSwozS0xYUndWNHZpcUF3bnpjUTVRQ2Z5LzF6cnp5aUlQbk4xZWUzMTAzSE4xMEtyNitKN2F1TzZyMnpLNmFVOXVxam9WVmRtd3ViOXRVCjBlcFhlVFNrNG1CMC9iSE5KZnZxQm9mdWp0OFplL2pEL2JISFAvMTRjL3p4K01PN1A0eVAzN2d6UHA1UWZmWWpidkgwcnhJdGNCVm0KRzNPc1hUTHRObWFhZloxaCtXMnVIYUZnN3ZkN1hnNmdxVVhRTkRyeFZ3QW9JZEN3MjFzYjQrY1RHZVMxV1NzTzhmVktMaXdyR2J6WQoxRDVjZTd5L3RxYWxMV1JQSDgrM2wrSjJraUU5eVpjZUU4bE9TUlJkTWtXM1dOYkZsNTdoU250NFNvQk9MODlqTWxNeDlMUjducVRYCmFLQWUwYy9wRnFOMFNkVW9jZzhJR0tqYlRZdWxSNmtCOXh4VGU1eFVJUlgxdTN2MnFMMU9hcjNhZlBUbE9sV0VEcjdwOUsrRkh1L1QKRWxmU3ExWUxhajdnVkwzSHJnQytMS09WT1pBTDRieHI2cEl5ZDJQUzlPOWpNQUJaNG5MZ0haNEVrTFZyTGdCby9vWXNzNDNaMXZqOApKZlNLMWV6YXRleTZ0YXpLTmV4S01OQUtSc1ZTYXZsQ3NyR01tbFNHQWNqVUdRU2Z1SmdVOGcxUHpwWlJPUW9TNk9jcEFHRkYwQzhDCkVFL0ZKNGo1bnpKVXByalEzK0JqNFlNOTdmdndOemVDZ1NMZVhKODQ0NXVrZitncmt2WVBOdmFlcnovUlZYT3NvKzc0YUoyeE9QcHAKQmhrQk5EVVlnQnE2VVNZTTFIOEpNeENrYWZCUzA4Z1YwRS9MdWV1Z240YXpWN0hGaGcrZi9lbkErUithTGwrdnZYNmw5dWJWdXBzLwoxTi80c2VINnZhcVJlN1ZIcngwNWVPdm9rWWR0eDhmekdoNjUrTlRNV0I4ODdmdTR0MXhpWmhCaVFEL1R2OTg2Rng4eHpXVVg0QU1ECmtBVStBd0MwZ0pnUEFRRFpFQUdkT1doUTNnU0FVRVd6S1RIRkNsM3NvZFZNUHhCT0FPZ3phZDJuNHZvUFJiVkxXV1UyNUd5NFA5YjgKTTQyQWxJT0tySjhHMEpQbEdnaTdVTU1TQ1QySHVmam9EN2krTEozUXgxczBDYURKL0RvQU9ZdTA2Mmd4dHFRY0owcnVVbEx4WWtyKwpFbWIrQ2xybEtsYkpLazRwQkF3RUFISms1TnZUY3VFaTFzRUlJRXRpRXRqQ2pJd3lINjI0bmppTEVEMlhIRGVmbm1qQlNyTmtwSnBSCmsrY1I5OHpGeGMzRzcwWUFJa2I5WHVDcjh1Yi9hZ0FwTkhLVmg1RGw3cjZPN1QrTGlBQ0VVUVlBTkpjUTl4b0JaRU5Jc2llbE8xSXkKSndHRXBrT2tKam94VXB6WVNmK1VCUG40S05Iei8wOEFnb0IrTmdWNEJ2bDZZZ0RTZTZsZUJVQThsa3pFbElvSk1zbWZoWjZyYWRzZApDUEYycEZoVUJFMUVjYUlrTHFXbnJtQmxHTWRzWmY0aUFHRlRJRTRDYURFbEhXNTVMUUNhVDk2eWtxNy9ScUJnU0ZFTEVGTWhmQ1VBCnFWU29GK3k1QUpKN2lnQkFDalY5RWtCMHBlRFBRcGtkUFdRK01XdzJmZ2MyMk9xNUFQcFVYQXJCQUlSMWZtSEJBQVQ2ZVk5VCtDNnoKZUNVbkY3Qy9tZ1lBeWwzR3lIMlB1ZWRiUmZBa2dNSU1TbFFRNDZ0OE9ZRDBQZ0tESjBlb0FnQnRuaytMbkU2S1JpUFU0RHRNM0FVQQpnaSs4TlNrTHZraHJPR1VZZ0w0UWxBR0FPTXJZblFHYjAwTjhwZ0lJOGhJQXBXL3pUOW5taHcwQkF3RHRDRmJBRTJCcFBiN2txbDA0ClhoS2hRaTRUdVJrQnBKVEwzQlJvVk5oVUFMbHdsTzhUQW14YzRxMEl1WEExOHlFbm5xYmNIT0NsQVAxZ0FBclNpZEZBTUNPQWpHVkEKTHdLUTBCT3VobFZVa2tMNkJXdlhZbEs2RFNrREh0TWNsNDdORll2NnY1NEFhQkhna2w3bDZGemc0RklBWnlselFzYk1qUWx2YlloLwpjMFA4Tk9kSU1OQmJMcEhUalpteGNUY0U5SU9LRHpaR3p0aXdjOGI2N1RQL3RXdjJ0ekZtMzZkYmJ0eHJoeTljUUtwWVRDNWJTSzFjClJDL2RJTndkNXVPek8vQ1ZBUVN1M2FsWCtxcmxmaEhSNEo2b2hwSEl1b0VkZGFkamFnRkF2V0NnbVBydTNYVm5kdFNjQ0svc1JEMWkKOWNlMlZ4OElLMnNKTGowYTM5eDl5empHL2U3NGorT1B4aC9kdWpQKytGSDN6Y2UweVAxelhkTG1mNSszMkxuQW5waGo4MTIybzNPUgoxZGRwVnQ4bU9wRnlBSEJtemtVdjZnSjdYUUJLQ25DTEN2TGFGaEFBMmFIWGhta2s0WDY2K09qZGhTZk8xeDYvVUgxeXRMeTd2NmF0CnJTVXBzMVVWZEpMdmVZSWhQOE9VRDdDa1EwekpBRVBjeDVKMzg5VGRJcThlcm5veVV6SFVpenJJbnBNZVk3b0VxbTZoR2t1WENPVzAKVkFVNUkxT2pBSU1VR2l5bjNkVEhWZXBPbGZxVXV3YlZCcmw3ZDJxODlubnFpalg4SUtWU3FCR0pQWWxFcWVRalNzcGlhdFZhWWU0SAozTXBKQUFHbXpYR1pienNuQTFabWJvd3oyWkJndWpIMVdRQlp1YURaS1lGQjlxU2laY3dxME04N0tGVnJPVlZyMk5Vcm1aVndvYitRClV1cElMSEVnbGRnU3lzQkpjMTB5VEp4akY1T0R2K0ZKbndzZ21YcENQeThDRUV2R29jaWxuN08wYjd1R3ZFVkNnNkpuT08rQUQvbk0KOVZ0bTRPSm1FUGUrK1UzU24xVUZzWFVueWs5MDEzZWRxejAyQW5rT2cwNmZuWnBKQnNFL21UUlFZOTlGQ01hZ3h1SExBS0NtMGF0WQo4dzlxQWJwNG8vblN6Y1p6UHpWZS9MSHh5cTNHYXpmcnIxK0hORnk3MW5qMVJ1M1Y2L1VYZjZ6c3VIRzRmVHlsNk1kUFJiblQxbStECkwrQnNWekJsMUV4bk9HVHROaVZHenNKRi9HYkRyaG1FMkJjQkNIWHM0dExnQWc4QWhJMldud2VIQW5yQktqYWFBUWdEMEtjU0JLQ1AKSmZYdmkyb1dNb3VzeUZrbXVQaEpBRTNIN1RMQm80dllLWmtLb04zVGNEdmZJbTJmUmtUVEM3M0Q4cU5xUko1ZVlnQ1F3VnY0RklDTQplVDZBZkZGVnpiOEJ5RTBqQmdBUkpPcVBHVkhBbWtXMC9PV1UwdVcwb2hXc3d0V015dFhzVWpoV3IrYWlsZXFYc0lvYzZIbHdCUXZICmNCc1N1dElEQUlFNUlQT0lDYWFFQkhqNWIrUGp6U25KMXF4MEczYUdCVDNGbEpRQTEzaW9td3kvNjAxNnVCRkFma3BQVWFDMzNFOHYKOXZlVHZnaEFjQWNBMExPcndidDV5RlVxQVZ1cGZKOFRNSXUwRFFBMGk3alRoUEI4QUtIOEtnQ1p1Y1paNHhNbkFZUW1SYVJtVEFKbwpFVHZwRzNqaTNpOEUwQlA5b1BGZkx3R1FoODRkQTVCRUtYa1JnT2dLQVVzbVlVbUZSSm53YjBMZFd0bzJCMExzQW5MY0FoSWFBcmFRCm1yU0VrYnFjbVc1cy9zbDROUUNCZnFZQ0NPaGo2WXJHekdNQVVpV2E3d0FBZ0FCSlJFRlVBdjI4RW9CbTRNSk5TRHNBUUt2cCtuL3gKWlV3Smh5UGpNdHorTTRCNDdnS2hVdlJMQUtUU3NBQkFZaTBBaUM5VHMybEswWjhFY2x2YTVpY0FpcG9Lb1BlNEJlL3ppNllDQ0RQUQpwSDQrazZBQ29BOEZwYUNmZDFqNWEyaEZ5MUd2WCtrYWV0a2FkdjR5ZHY0NlZzSjM3aE1BQ2pHb3B3Sm9lNERuU3dDazE3R0ZLc1VYCmdwRDUxS2pwcE5oSkFFM0hvUVprUzFMbUlrWUJmSzhBUUorSXlnRkFmeEprYzFWeHV3SkRYZ1NnbkozR1BBRlE1amJVL0RNVlFER2IKZFArZnVMdUFydnBNRzBYZm1aWUNJVGdSb2hEaVFnSUJLdE9PZEtZekhXc0x5WFozZDNkSmR0emQzZDEzbEVEZFMvRWlOYVNsSGZtKwo5WjJ6enJuM3Judm5QdS8raDVBaWJlbjBuTlAxckwxMlFxRC83TCs4djllZXB6UVg3YUtrNi9WSHVOcVh1VmFKV0EwQVVrdmxHcmk2CjdnY2dBaytkVHM0S3diY0VrWWFoMDVQT2JhRXE4OXdXMVVNRHlDYTJvTWFBUWxXSmY4a3RqNkYwaDVKN2c4bGphTEVMYVRDVU1oSEoKbU5uTG1zTUF0SWMrSGs2YzJNdVlDY0QzN1NMMi8reUZ1dlVaN1k4ZGE5aElidlRwcHhhdGM4eHM4TXRzOWtVclNpeUxhOXVZMGJUKwo1V29BME1ZWEsvMWZyTnQ1dENzb1l6QUVOeHBPOXU0alQrK2x6a2ZScDE0V1Z1WFpiWldlaHdaUW5rdFZadGZhVlVLbFdWM1MyZE15Ci9Yckw4UXVsU3hkcUZpN1dMbjVjdDNTcC92aGxNRkRkMHNXYWhmUFY4K2Z5cHQ4cEdIK2xZdW1VWStMRGlzVnpWLy81Ly94L2FPM3oKZi8vdi8rTmYvK05mL3hwNC9ZdGZLaVoya2FaMjBxYUNjQU14eDBhRFhtNk5JbzhIL3JrLytLLzlvUmw5QWNjNmd3aWovbjhaZnRBaQo2TFVBRW9vb1BCN2x4d0dvb3NEUW1HdXZkYnZLbks1S2w2dktZaWpXeW5MTjRyS3E1cUdsMStmUGZUYjV3YWRUcHo1NTlmS05kOTQvCi84Ylk0aWxQMC91NjRnKzQ1Z3QwMWVkc3pYV0I0VExmK0JGYjh6RlhpOFZhQ2FIZ2ErNGJIL3ZpZ2dBRldsMGsxRjRRb1RnclVVT2MKazJyT1N0R00yM201RHVLc1FuZFdwZjFJby8xQXJmbElwVHV2TXIydk5VNFoxTTBtV2JhV0psV3FoRHFKMG9BblMrWHA5S0VZeHF1cAp2TUZEM05rRG5GbmdTeHpURzA0WjI0N3I4YzlvOThkRHRQcG50bTNQUktPUDl3SUk5Qk9BQStoUHhyTG5VN2pIVndFRWtjQ2VpMlhNCjdxVk5BNERDU0JOQnhCa0EwQlpjTjdTeVVkVHN2d2lsZHdFSUcvNzVYZ0NodmJ0eStiTWM4MVpjL2lQSGFoNDdXcjMrNWFwMUdZMm8KYUE4cXV0U3hGVCt4NVU4ZFR3cDc4a2ZQVDV6NWJ3dW5Qb2RZWlJCbUlNU2djOWV3dUV0Q0FLQlZBeTFmUmdaYUJSQ0tMNzZCV0w2Twp4bjdRL05ldC8xajh4OS9CT2t0Zi8zUHBxMytnK1BydlMzLy8rL0YvL20zNVAyOHUvT00veDYvKzM3cUdEL2ZoNng1NXFmeFJHcUNrCi9yR01hbDh1bnhvL0lwcVNCdjM0RVJvM2s5djhNNXUyNFJDQVFvaURvQjh3YUNocGFEZDVJSmpRQ3dEYWdnY0FOY0JkRExMWlR1NE4KWTQ0bjhlWlNCYWdFR0FZZ1h4cm94VlRoWEFScmJCZXBad091MFFjZ2xDY1dBeEMyL3d1VmtrRFRZWGNZaEFIb01XckpvNlFhc0draQowMDNXU293V05BTDBzQUJ5V0xCbHhYY0FwTlNMcVRMdGs2enFQZlQrZmN5eEJJWTNnVFdWZ0hyRjg4bWM2V1RlVEJKL0pvNDdoUUVJCjlMT1QyTDJEMExXRDBMR2QwTHFkMEx3RlBobGlFM3c0V3lqdDBQMExvZmVITVBzQ0dWM2JLRTFZSWtTVUNacUlBT1JIcm4rVzcxYWIKSlhBOHFJNjlVL3BEQUdTektPNEF5Q0FEQUhHMTJvTThOd0JvSTZWNkU3bGkwN2NCQk9qNVNRQVVTdW9DQUlYVFVPYnJWUUR0WVNBQQovVVdldXhaQStWa0dERUMzRS8vY0gwQlpkdVBEQW9pcUZBQ0FXRkloV1NiNG85aVV4aXpiUTI3WVEydUtwSGZDa1VTenVtTFkzV2oxCkQ3c2JBQVR4UFFBS0pyU3NCVkEwc3krYTJ2UGRBRXJtRFFDQUVnVURBS0JnU3Z0M0EyZ0h0UmdBOUZlaDRqYUFKRDhRUUhLTjlLRUEKSk5NakFQMWF0QXFnU215dDNBOEVFTFlTQ0FQUWZzNW9Fbk1va1RZR0FFcmdUS2V3b01zeUdjY2JPOEJ0ZmxuejBBQ3kydThESUZSNQpiZzJBOWpCR0FFQUgrRk9yQU9Mcm1xbzhCUmlBZWtwekFVQjl4ZG0rV2JEczd3WlFhNUc5TWQreUNpQ3EzbkNZclh1WmE1T0l0SEtaClpDMkFWQXJsV2dBUitacERsT3hRUW1zd2VXUVBiVGlkMjBwUkFZQTBEdzBncTlRSElCSk5MZm8xcnp5VzJoVkc2ZHROR1FmOWhGQkcKdzJsVGtRd3ZCcUJJNWxRNGZTd0VaYUliMmtsdlg1OVp0NVhhQmR5QnA5dlBDRG1JUG5oNDlqWDVVb0IwYmlQMTdTRDE3eUFOYmliMQordUhiTnh5cmYveWxTZ3hBTzQ2MkJ4N3JneFl1akRTREFXZ3ZiZkpGVVZXdXpWcnFNVDBzZ1BLek5NVld0Y2NnbFVqcGNxTXNwN3k2CllmcXQ4aE5YNnBZL3FUMStHUUFFREtxZHYxZzdmNzUrNFFKRTlmS0Y4cG1QM01NZlpudlA1azB2WFB0dmYvdlgvL3V2Zi8zUGYxMzUKK3IrME5hL0ZjeWIzc284bk1CZmlDWk9SdU5GZHVQNHczR2pBUzUwaHVPNmd6TjZkTHc4SFpVd0haSTd2T05iL29HM3dQeFdBR3B6NQpsUzVidFVkZjV6WlUyS3dGVGtlT3krSTJTczFLYnJiRDB0azdzZnpCdFpPbi96SHp6bzNwVTlmbUxuKzVkUEhhNjIrZi9XQjQ5blJlCjlVY1MwMm1LL0FKVmVabTVvcDk3RGZReFQzM2Z1T2dMREVCWW5CZWlPQ05XclFSSXlNZWdNM0l0Q3FVRzlQT2VXdjJCUXZPQlFyZWsKVWRmclJHWWRnMmVWS3RRU2s1b0p0bjVKWWtxbkR5ZlNYOTNQbms3bmVBRkErN256Q1J4dkdHMTBCNzUzYzJiSFpnTEttN2NGMzdFSwpvQkRDR0RnR2hROUF1eklIQVVPUnRLazR6c0lLZ0xqZUZONDhSQ0puSGl4MVh3RHRvM24rSXBSd0ZYUU1RR0xObmZtdjd3VVFYeUVtCmk2UlBNMHk3eUNXUDRodldIYXZ4eTZoZG45SHljeUlhMTl4NnJINUhCbEI0YnZ1ZnB1UHhYYXFhVis0QzBKMXhvTnNBdXN0QVN4ZlcKR01nSElDeU9mL3JWOG1lM2xqLy8rdmkxYnlDV3JxTll2UEhON05lZkxIejl4Zkt0cjA1Ky9SL0xmL3ZQaFgvOGMvby8vamIrWDdlVwovdXZHMk9YUGFTVWpXNGo1aitBckhpRTEvcHhROXdpcCt1ZkU4dlcwbXAvaHluOUdxRUlwRUFuMS9xVFdEUzgzckFWUUdQRStBTnFJCnh3RFVzb1BTRjg2YWdrODRUWWdxZndHQXNEZ2dYdGd2bUFVQTdTQWpBRDFHckVQbFF1OEFxT0crQnZJQnFBd0QwSVpqamZIMGJLSkcKYkRDdGpBQzUxOHlDWmRzd0F6MGNnQmh5MWRQczZyMk1nUmoyUkJKckxwRU43cGxJNHl5bWNHY3dBTVh6cGdGQVlmU2hBR0xQTmx3SAphSHRyWnV0V1hQT1d6QVovSE9DakNmU3pqZEcxaHpFYXdSd0JBKzJrdG04aTFhT1pPM0w1NDVUeWV3Q2tjanVrUHdSQVRxdnFYZ0R4Ck5KcDBQaG9CZWhDQVVQeFlBUGt5Q0s0QUtKeUNKci91QUlqU2dnSG9SWG11MDZiMU9CQ0FjbDA2QUZCQnRoSEwrdk1UQTBnaFlza2sKYkFtZktoUDhXV1pLWjVkRlVadjJNVnVqV0YzNzJOMnhuQjdRVHh5N0s1N1ZCUVpLQmdCdEpCVnRJQlp1eENNRGJjVlY3c0RYQmhJYQowY0FQcFRXWTFJeFZ6Y0RxcHNZd2UxRFFldmRTdW5hVG0zWVE2cmJqYXdOSURRQ2dmYlNlV1BhYUVTQnVmeUt2ZngrN1A0VGN2b1ZZCjdZZXZlQnhYL0RpaFpEMnhGTGtIVjQ1U0l4SUtOMU9LZHBKejBqak9GMFZxdEFaSXc2ZHF1VUk1VjZEZ29peUlhajVQdzJlcmVSQWMKRmRjSElJNHZDWkJJcXBLb3RES05WcXJWWS9wQkFMb1RCaEdFUnM4Q0F5bjBYSVdlTDlZTFFVSXNGZmV3U0wrVFdycUZVb3BtUTlGSworRG80MDNDZVlsbWpLYnpSMU5zQU9pS0YxeFVBUFN0ZGZFbzhCNEVOeGtMdkpKNDlCV0NLWll4QjY3V2ZQNTdPSFV2aGUyTzU0NGU0ClZVUzFLOGVxenJWcENtemFRcnV1MktVcmNldkwzSWJ5TEdPcFN3OEJIb0xBQUZSZ2wrZFpwUTRiMzJyaWN6U2FKMFJGZ2ZRNjZEK2gKY1YyaTc1YkdWOEg3N2VUV01OcHdQSHZtQUcvMmlHRHlDZkhjQzRJQmphbXlMais3dXlDcnQ5RFJYV0x2S1NuQkVpR3V6UVBVWCs2QgpRUG9wY1dQUlZZS1NBRFVVV0tyelRVVTVTb2RiY1V4dS9pVXJQNU5yNTRpVlFwVmNMUk1BZ0VBL2NxVk1xbFJJRkhLcFRDRVZLMlJDCk9aV25mWktjRjBGcURhR2lsVzRIbUQwa1dZblRMSGViWlZrbUZEbG1lYTVGbG0rUkY2SmNpQ3NwRUF0dlowRmNaVkN1UmFFM2NxUUcKRWt2TmZsN2dqcVgzaFZHbjlwQUd3aWxvcEdjZmF4WUZ3d3NSUlovWlE1MEtJWSt2bEJBaUR1MGk5TzNBOVVBbkhwcXhIU2kxV2hjOApYQUxJZlNoSUF6NEE5VU8vRTIyVXphaDkvQ2kwSE5VYk1tbzNaZFp2eGpmQ0l6aWM3TjFEOFVhU1oyTElzeThJMisyMnJCYVhhaFZBCldDNUV6RUFZZys1S2hGaVRaYTF5bVV0QnQxYU55Nkl3R2NSS05WZXQ0Y0Vqc2pUZlZ0MCtYak84Vkx0d3J1Yms5WnBYUHExOTVWejEKOFN1bGM5K1VIejlUczN6T00vNWU0ZExGd3VuWHg5OCtjK1AvK2xmSDhqZmc2WDNrZ1JqYVJBcHJPb0U0RUozWkUzSU14Tk1mOUdMTAo5aGNhdHYydWJ1Y2ZXM2NmN1F2QmpRYml4M2JoUm1NcDdjOEpzc2tTRGtkSzRTb1lYRFdMcjJKSzVCeTBFMTdCRU11b0VpbFZMS0h4CmVDUTZnMENpNGtoTUlsUE1nSitVSzlsWmVsbUpXVk51TlZTNzdiVnVHK0tPeDRrRnZNZElWT2R4MUdiYnE3S3NGUzV6dWROVWFqY1UKV0xSNUpuV1IyV3lRTTFoQ295Ui91Vzc1Ni9selh4My84T1BaOTk1ZmZ1L1Q2USsrbUx6MHpjelZ2ODIvZS9uTnNWZk9sSGFkMFJaOAp3bENmcDhqT01LUm5PSW96UFBsWnZtOFhQVWR5U3FBL0xUQ2M1ZW5QY2ZWbk9ZWXpYTU5IZk9OSFF0TTV2dUlzWDNWT29ENGowRUtjCkZ1b2h6Z2lOSDRtMEh3bFVFR0NnYzFMVmVSbThLcytJNWVmNTZ0TXkzUnRhbzFlbjc5SW9pbFJDZzQ0dnN2RGdLYTh5aU5RNnNWek4KSlNxVit4bjEwZlRsSkE3Y05RdHc0K3puVFVNZmZROTFBcml6R2RlK0hsZTdIZDhGbHhQYW1FMGFnd2dpalFhUWh1RDZDY3NjRDg0WQpEc3BFMzRjTEVyZ0RlRHJBbVUvbWVpR1NPTE1BS1FBUWRuSENSUnRJNnR0TkdBb2l3Q1U2bk02cHhJc1VJaGxkb3FDTGxDZ0xvbHpOCldVV1BTc05Eb2VPcWRId0lINEI0RWhWUHBFQjc0TVZ5SmtVaU9jeXlieVpXL0J6WDZKZFo3WjlSK1hobTA3ck1XbWoxNFpqaGFJT0kKYUVGWXNHK1lpbFU0T1hmeTFiZlBmRHAyNXViMHVTK09uL3JrNU5uTHl4L2VmT1gwcDh1blB3TUpvUXBpNTI0ZFAvZmw4Yk5mbkRqegorZktWNjZpa3hvVXZqbjk4ZmZrU2toQ3FxbkhseTFldWZBTU1XcnI2MWVMbnR4WnZmRG4zNVkzcG05Y21ibndHR0pxNy92WDBOMzhmCi8vdmZSNys1TmZmUGZ5N2UrdHY0eGFzdEhWV2FndXdvVnZZalIrdmhYb04yRWNTekhsZTlBVjhIL2xoSHFJU0FuaHQ4Q2ZTQkpuOWIKQmlyekRuZGZNQVhsODRUd1RZRU5ZbE5nVzFBYXcwYXNya1VRdFg4dmR4b2VzQWRGQzc0OThITlBTdWJocVpzdVJtVlFnNWtEVzRpdAo2L0Yxai92K0x3QWdKQjdjbW0xZjN3NzBrN2k2VGZoYWFHdWduZDdOTHY2VDJteTAwSzBXZ2MyS0RJUlZSWFd0YmdkRDdsbUpMRlFMCmJDWFFMakFMbWdMRGV0YzZneGdhSGJqTW1BcjFyemxaY2JUT0tQWmNQRzhHYXo1U2hEUDdoUk1wL01ray9rU0NZQ3FHaTBhQWRoRzYKdHh4dDIzQzBHa1RyajJ1QVo5RVdRdE0yWXRzdWFsY1FvemVVMGJlYjBRMzY4U2Mzd2EvMmMyTGx6eW1WajlLcjE1RWJRQ3JRUkthTApQQ3FUM0dOaE8rMEtsd05WSzFzTElHejNPOUFIWGtFL1dWYTF3N0t5RTk2a2wwSExxTlpKRFZxSlNDOTlRbWpZVEFMTjFQbVJDK0dzClFVT3ptVmkvZzlnY1FMbzlBa1J0RDZRaS9kd0xvQTBJUUpXK1dDdWhVZ2gvUXZrV1hPVjJmSDBRb1NXVTFCRUdIVnBxWndpdE01elcKRlVMdmpXUjJoZE5ib2xpMXh4UXV1MVhoY0duV1RvSGRUbnU0WXFEN0FzaGgxV0VBd3JJZ3FnMUtoWDd0R2lDeFNDTytEU0FCVzhGbgpTcVVNdVlDbVlGRmxITHhZODF0dWJncXJZUzkvTUliVkc4M3NpV0owN0tHMVJkSGFZNWdkOFp6dVJGN3ZJK3NKQmFBZlAxekpabHpaCk5uelZUa0tkYndTb2RUZTVaUlZBZTZnZHF3Q0twdmJjQzZBbytoMEFvUkdnMndBS3BYVGNCU0JVQkFOZkFXemNUQ3pmVHE4S29PYWwKc20wdlFWOUpKdUlxdVhTVTdwbkxWZk80UHZmNDZNTkc5SkV6L3cwQWNRRkFDaTJkcWVZZUVoa2VGa0JQU1NhZVJ2dmhaNStRZUEvdwpweEtZWTlHMGtYM1U0WGpHYUNKbjRnQi80aEJ2SEI2dnNkelJ3OXdLaXRyNXZRQmFIUUVDQU9YWXBIWXJ6MkxtYzlRNkFOQXVSdjFhCkFQbFcrVlZ2STdXc0FJZy9nd0hvajhKK25hbWlMdDhOQU9vcFFnRHFMUzRDL2F3RjBFQUZ5Z0IwTDRCYWl1d0FvS284SXdhZ28zTHIKcjlnRk9JNmRKNWFMbFFBZ2tWNG0xd0d2cFZLMVZLN3k3UXhUQ1JSS3ZwekcxejFOTFlna3Q0WFMwRjdITkdZZlNWWm1NOGwrQklDTQpCbzdjUUdack9NOExuTEdNcmxES0JBWWdsUGpuSGdDRlVWR3BnWEQ2UkJodGZEZGxOSmd5QkxHYk9yeWJPaGhNR3d5aURnUlMrZ0ZBCjI0azlXK0Y1aWtOcFFyRHQ4UnR1eDhiTU9qRFFUbngzR0FtbGI4RUE5QWRCbXc5QW1uc0J0RG9PZEY4QVZXVlo0TXlDL0FCQU9yMFEKd21LUU9PRDVxRlhvYlhwRFRyNjVwRDZudnJtaXY3TitZcTVoK2t6WjNJV1dFMWRhbGo3V1Z2VS9oNk9tSDBwOS9yay9Qdk1jOVFDdAo2eUIvSWswd253b3RORFN1akxFOVJHZ1Zoc1B4dmJ1UGRnVy8yQlh5Y2w5NDVrZ0VZVHlNTkJWSzltSUFva2k1OXdXUVJFNzcwUURDCjRrRUFzcWg0VHB1VUxzMDVST3g2VGo1dGJYMTc4TTFQRnk3Zm5QM2c4c0taVDcybnIwNTg4UEhzdWFzbkxuK3hmUDRUNzd1blh6dCsKL1BXKzRmY0xHcy9MYzYvUUxKK1NEWmRwdWxNazJTV2UvR091N0RKSENuR0pKenN2bEp3V2lqOFFDRDlteVM2d1pPZlpzdE5zK1lkYworUWRjNVh0OEZjUzdBczBwZ2U2czBIQ09iL2lRcTMyTHIzbFRabnBkYlQwcjFwK1FhenZWc2lLdDBLbmxXN1VDazE0QTUrSWVBTld1CkJWQXFmd2I2Nkh0cGsyQUlERUR3NnR1YU5CUktHZ3Nqb1lJWXdVUkE5a2pZN2R6UVllVHhmYXlaSkM1S3Baakdua3ZoemZ2V0FLRjEKMFBHK3ZXRFJ0Smw5MUprSTZuZ2taVEtDTWhQQkdEL01xeWFJNFk2aENSVTBERURZdHEvdkJwQllpWHA5RHdJUXRPSVlnTEJNeW1pMgpqakFDMThsejR1YTZxbXJ2OEFoODV1QVk3Nm5yTXg5ZFBIbjIydEtaejBFL1MyZXZJL3FnOEMyT1BuOTk3dXluOCtjK1c3cDREWnNGClc3eDRmZW55emVPZjNKci85TXVGejc2Q2dEY1F3S0FUTi83eHlwZi9NZnZsUHlldjMvSis5YmVsZi81aitXKzN2SmZPTjB5TzZmSnoKclU2MXdHNk1GeFE4U21pRkcyMWRaakVBQ0ExZDNBOUFXekphTUFBRkVIdlhBZ2p0Q0NNTUlCbXNBVkF3YlNDS2N4OEF3WmNBb0NCRwovNzhEb0NCV3lSOVZKcU9GK1ZNQmlLVlNQY2ZKam1kMFJIRzhxd0RhTC9LbWlpYjNDNmFTQlpPckFBcUVSOU94ZHY5amRWc3lHN1lUClduY0FmY2dkZ2RTdVlIcFBDR01BWGtFL1c3RkVpQ1EwdUxXT1VnWHhHTGtXRGRWUVNnNktQVXFqN044RWtOZ29lVkprMkVLcVFGa1cKLzljQUtCQ1BVZ0d0QWdnbHlya0RvSm9NdWN0aFUvNXZBQkJMSm1NcWhBQUptcHhMa0doL3kvVWtNK3YzY1BvQk1LQWZpSDMwam1oRwpaeXlyRXdDRTFnQmgrdG1VZ1FDRURmOEFnRkFwREhLTDc4MTlBQlJKNlF3bU5XSUEya1dzZnhDQW9qa0Rxd0Jhank5WkJkQW1RaVY4CkUvN3VEbHBOQUQwM21XdDVTYVpqeThWOHBRRDB3OUx3MkZvK1c4dmxhRUZDdmdvWVNnWmJRZmRKYUFWQTBENy9BQUJ4MWdKSXBtTXkKVkx5REFzTU9Tc2xkQUVKNXV4OE1vTVBpb1NkbG8wL0pKNDZJMFVMcEZQWllJbU0wbmphY3pCcE41azJoZGRQOFVkUy81QXcveFMxbgphUnpmRGFCdlQ0RWhBTm1zQXJOSndGVHJueENXQlRCOFdTSVFnSHozTUFITkJHOGpOWWZTQnVOWTAyazhsSFVhSFBablViL0pVdFpZCjRBUUErZFlBclFCb3NPeGJhNEF3QUtIOVg5OEdVRjJoRDBEWkNydFQvWkxjK1F5bkJBREVGOGtsQ3JsV0tsWXA1UnFGWEtkUTZXVksKblZRRkJsS0lsVkt4Z2lIUVBrTXYya05wUndDaUQ2YXlCbkNTTXF0SitTTUFaREp5NVFZcVg4TitRZWlJWjdTaGhjL0U3d0ZRQkdNUwpJZ3dZUko4SXBZOUNoTkJIZDlOR0FxZ0RPeWtvcGE4L3ZoVmxFc3BvUUdNL3ZvQ25NOUJubFVIYmNCMmhSTFJ6SjVMcWphYk0vcDdmCmJyRzZtcHpxK3dJSWkvc0NxTUpsZ3BNTDRqSHFSUVpmMFJXelhteFU4NjBhdGtISFZJTGtsVHc1MEVSSDVXaWxGS1hycjZZVFJ6VmoKZitMWEJPNS8rZWYrQWY3ckhnbmF0aUUwTWo3aWQrNWZpTWNPUzQ5REUzdFF2THlmNTQybGowZFFSa0tKZzd2eC9idVA5WWRsRElkbgpqb1puamtmZzRiQm40NmdkdnhWNnFESWVWMGI5RGdEeCtlUzdBS1JRY2JJTjhsS0xGZ01RTnQ0RDlMbHJDdXhCQVBJNE5Hb2RGeWZNCmU0cS9rTXhkU09kMDQyMVRqb0VMVSsrZkJRUE52bnRwNXQxUG9QVWQrZURxd0tuTDQxZXVlYzk4UG4zdXM2a0xWMmMrUExOdy9QVTMKKzZmZkwybC8xMUI2bnE4L3kxS2VJVXZPRVlVWHlmd3JWTkVWbXZBeWxmZU9RQXp4bmtCeVNpQTlMWkNkNDh2T2M2VVFaMFNpVXlMeAplMkxKTzJMcCsyTEZLYUhtSTU3MkRFY3pvOUMwS2VVdURWOXA0TWt0QW8xWmJOU0xUV3FoVmlkUUdZVVlnRWdxVlFxOVpoOTlFUVBRClFmNGNBQWplUjlHbmdrbkRXL0FkMEhENlpUYkRtMERpRU9nbmdqUWRRZktHRTJkQ2laTmhoUEhkZUxUaTNqZi9OYmVmdndUL0FnQUkKM3NDdmozYkNNK2Q5c1JEUG1JK2p6OFhTNGMxaU5HTnBIMnZxU1VFMVVhSUEvUWlVRkFDUVJNMWVCUkFFNkVldDVkOFhRQ0lGRHdQUQpvVzhEYUIwT0FXaDlab04vWnRzT1hNL0tiSjB2bnVHMGxMbGRZMldlZ2NIdXFiYy84SjYrNFQxM2RlR2pLM05uYnkyYy9Rcm9zM3oyCnh2R3pYMEFBaHBiTzN2UzkrY0tYUlBIbS9JVWJzeGR2ekgxOGMrSHFyYmtyWHl4K2VtUHAwNjhXUDRINGV2SHEzeGF2L21QdTBqZVQKMTc5WitPcnZKNzc2ZXVyMDZkcWgzcHp5ZkxmSGJMZXJMUTZWMkdWSkVoZi9ITitDN2pKOEtRQm9YVVlsQmlBME00WDJaOVhBbDVzeQpHamNmYTk1NnJHMTdaZ2NHb0JES0lKcjhJZzNlQmxBUE5nVUdzWTNZRmtvZmp1VjY3d3VnWks0M2tONEhTTG9MUUJ0V00wSGZFK2hnCmJnUG9jWHg1SUxQMGVZVkZiK2I4YUFBWmZlWEFWZ0hFVWFsK3gzY25NdHFqMmQ1RTdndzBEV25DaVZUeDdFSHhkS3B3T2tVNGxjUkgKQU5yREdBa205KzNBZFczUGFBMGdkQVpSZW9LcHZidHBmYUdNQWFRZld0ODJjdnRXVWhzcWlVcHE5TzJIcjl0SXFWNVBxbHhIUWdEeQpJeGVuaVhKa0JubVdoZnRqQVNRSEFFa01rcWZGeHUza2NqOXlyUTlBbFhjQkNBVzFQWURTOXJBQTJrUW85OGRYYnNQVllhbUFRaWxJClAzY0FSRzhIQU8xakFvQWNEcHZjNFZZOUNFQzMzLy83QUpLd2xDSm82eGxLSVVtdWdYT1V3cXlOWlBmdHBiZURmb0ErTWN3dVREOHIKYTRDMms2cTJFaXBBUDVzenlyZGxWZ2ZnR3pBQUJaT2FNUUNGa2x2MzBqcFhBYlNQMGgxQjdnQUFnV0MyNG11K0cwQ0F3YTJrR2hEUApLb0I4RmVDcnQxUHFnc2h0MjJpVnV3UzUrN1hPRjdRNnFrYkcwWWlZYXFBUG42UGg4N1VDZ1FibEM0Wm1rcWRtY1ZVTVh5SkU3bG9BCm9jb3Mzd01nS2VoSHJtZUpESHdBRUUzRlQrV2JNUUJ0OU5VM1dRVlFISHRzRlVDK1ZFQXJBRUloSHo4aUd6c3NHVThYVGFaeXg1S1kKWTNHVWtSalNVQ29IMVUrRmI2YnpSbEo0RXdtY29XZTVwVHlORmZSekw0QWcwUENQK3c2QUNsd3JBTExZQkFhamtLRTBIQmJCWGRxSwp0bm5EeDBWQ1NiM1dFeW93QU8ybURzUXlKd0JBNllLSkp5UXpSeVU5VGx0SmM0RzFFd0JVa3RWVjdPZ3ZMc0QwZ3dWR24xVUFkWmV1CkFLaTl4QWtBcWkwd1YrWWFpdDFLbTB2elo0WG5TVTVaSnRmT0Y4dGtjcVZHSmhNcEpCS2xWS2xVK3RZQUthVVNwVUFpaDhjelM2RDcKRmJONEg3VVQ1ZmVrRHljekI0OUpLdUdpZkhnQXlVeEd2a3JQRUdvNGZ4VmJFeGpOOEVBTUp3eENOeHJFRTgyY2hjQVl0SmNCM2V2SgpsZHdobE5GZzhrZ3daU2lJUEJqb2l4MmsvdTNFdnExb0kwbkhKbHdUV0FmYkRvYnREc01BdFA0MmdOWWZxOW1hMlI2TTZvNU5oZE9tCkFVQy81YmVaemU0RzU3ZEdnTzR5MEgwQlZHclZGZGwxV1JhbFFTZlVhUGttZ3hnVmhFZmxFaVVHczBCbkZHajFRcTJlQlFBaXlVVXYKY00zN21KM2JmbVBkY0VDd1Bwa1psRXJabTVKeDVQZUcxQmRMQXc5TG54SDJINUlzeEhQblUwUm9yQ0tlaFRiVFFpTVhrREVRY0xRLwo1T2hRV01ZWUFDZ2NOeFZKbUltbHROOEZJSjZTc1JaQVVoa05BeENEU2NRQXhKSXdlVXJtZlFGMDd4cWdCd0hJb2RPWUxUS3F1dUJKCndYU1NjQUVOZWJLbURqS25PVmtURmFNWHZLZitzZnpSbDB2dlhGNTY2OUxKdHo5NzlaM3I0NmR1VEgvMHBmZnN6ZG16WDh5ZStXVHgKOU5VVFp5K2ZPSFBwMWJjK1dGNThmWG5RZTZLMjk3WGMramVOSmU5SWM5N2hPNjlRVkpkSWlndEVnSkg0TkVuOEVVVjBpb3JpTFFiLwpiVHIvQTRid0RFOTVXcVo3VTIyWTFXcUcxUEppazlLRmtyeUx0RWFSMFN3em0rVmFvMWltUTBOeEdJREFIQmlBb21qZ2xXa01RR2tDCk5JRVZ6WnlCYXdrREVLaGlNNkV0d0RmMEdFbWUyVXVhM1VPY2d3Z2hUNFFTeDhQSTQzQTFKbkxtMC9pTEIvbUxhQlVSYnptWnN3VDAKaVdmTUFYMVdnamFYd0ZoT1pDekgwcGYyTWNlUDhNcnhFcWxRU1JHcXFGZ1ZzTlhjUC9jQ1NLVVRBSUNrYWo0R0lLR2NTZnBoQUFvbApqVUU4eSt1czlHUVA1NXZxaXgyZDNSMHpKOTZEei9tVml6ZThaMjdObi9zYTBIUGlqRy9tNjl3MXdORDhtUzlmT1hjVFNMUjQvc2JTCngxOHVYcmtGOVBIRmw4Yy91YlY0NVV2dng5Y21MMzd1dlhwejRkcmY1NjcvZmZxelcwdWZmdGIzMnV1VjNkMDVwVVV1dDlYak51VmsKNjdMY1NwZkhBQUNLNCtjL2tvSG1tdjNSY0FYY2VsWG9JLzAyZ1B5T05mZ2ZiZHI4TWhvRUFnQUZrZnQ5K2tFcEVMRWREL0ROcllUMgpUZmdHaUozRXpnakdhQnh2OWk0QVBTRmRQQ0NjaDdzamdOYUxBUWc2aHo4VVFJUzZqWVRhVGI0ZjNrRXZmVTV1VVpuWUR3c2dwMVY1Clh3QUp0TEkvQ2x3cHpOWVk5bVFTZithQVlOd0hvSGtBMEFIUnpINEJBbEFjRDZVQ2d1NXJFTEV2bU5BVFJobEFLYUhwS0dkMEdHTTQKaE40ZlFPN2VSR3p4SjdWdW9iUnVwVUUwYjZhZ1NRQjQ4cThqb2NVNkc4bWxLY0ljaVg0RlFHNW9NaDRTUU1vVkFJbWVrZWgya3NzMgprUUJBeFJ2V0FHZ1hzUlVEVUNDbDdTY0ZVTWR1V2c4QUtJemVHTTJxelZRNG5UYTUwL1U5QU1wM281M3cvdzZBbUFveFV5VmlLUGtBCklMSk05UWVCTTVWVkZjWHVoK2V3ano3ZGFBRVFwaDl1VnhLdis1RmdlbE1BcFg0SGFDYWphdnV4bXAyWmRVSDQ1dDFFdEFBSVd3MjkKRmtEUmpPNjlsSzV3VW5zQXFXRWJBUUZvSndDSUNuL2Fpd0hJVnhEK3V3RGtSeXJmU3FuZFJXK01ZUFZ1WTFlRVdrc1BseGIvTnRkNgoxS0VtMmxVWkpqRkRKMktpYlh0Q3ZwclBWM01CUVBDc1oydVlkd0VJWVB2ZEFOSWErQUFnMEkvTUJ5Q3Bqa2xSQ3BLNUZnRFFabkxKCmd3QUVvTGtiUURJdmZPZXdlQ1pkZ2xZU3hOSEhZbW1qaWRBRzhFZlQwTGI1aVFPOGtXVHVlRHluLzVmY2ZLSGU5Q0FBd1JzTVFJVnUKRkJpQVBIYXAyU2JVR1VRMGhlbXdzRHFRZ1hLbCsrRlJFb3ZIMGRNRXZkbENhZ3Ftd1BrYkIyYWxDOGFPaUNkeDhoNlBvN0Mxd0FRQQo2aWp4QUlBR2kvTHZDNkRWRGZCWUFJQ2FpbXdBb1BJOEJDQ2pVL2M3ZWM1QmRzVXhqZzJVSTFXcU5ES1ZVcTFRd1g4S3BVYXVWc3MwCmNxbEtLbEZKcENxT1FQTWJaa2swclN1TVBnQ1Bxa1RHOEl2aUNyMVI5N0FBeXJISnpTYUJXcytBNXVGbHFUbUpVYmViMkJkQkhJcWkKVEVYVDdnQW9pdW1Ob0UrSFVpYWdpZHBGN04rQjc5M3VtK0ZDZ1VmTFZ6ZGx0dnRsdEszUGFGbWYyWVRtdkc3WFU4UjJoMkVHd2dJegprSDltU3lCaFBKUXlHVUdmMlVlWi9RMnYxV0IyWVFCNjBDRFFmUUZVN3RDQlplSFJZOUlMdEdxT1FjZTNHVVIydlVpblZXaDBRdWpXCnExUUNqWllyMDNQSUN1VUxndXc0MW1EZ0h3c0RucytOeW16Y1QyNlAvbE41T21kNkwrZTFrS2VVVDdHNzRQbWVLam1aS2x4T1lLSGQKc3dBZ05CR1RPYmpycGY2UWpPRkkvT1Fld2xRRWZqSUVOeGxEYm50T2tFMlQ4M2x5R2dDSW8yS3VBZ2dOTmp3WVFFbzExMk5VbEZsMQphQkYwMXNxS254OE9vQnlEMHFoaGtrVE9wNFdUY0p5cG5Ka0QxUG1EekJQeHRLVWpuQ2xHOW16bHlOdmpiNStiUDNWNStzTlBSdDc1CmJQbk5UeGJldk9wOTY4ck11NTlNZmZEcDVQdFhadDYvT25mcXM0bVBiazZldm9sZ2RPYjY3T2xQMGVqUmV4ZThiNTk1ZmVHMWs5UEwKUzhQZXhlN1I0MjBESjV0N1gyM3NlYTIrODQyZXlkY0dKcGVHeDhZRys5cmFHOHNxQ3p5NVZvZERZM0ZwRERhRnppUXg2c1YycmNTaApSd1c2NVdZcEFFaHBnT3NLVGdHUHJGRW0wNm9SZ0RoVHF3Qks0YzNHc0x5aDFMR3RoTTcxS0lOVUhRSVF1UTl0UEVRVG83TVJKQzlFCk1IbDhOMmtNVkJSRG4wN216Z0dBMGdYd0w4d0RnSkxZaXlnVE5IVm1IM1VhaTcyMDZTZ2FmTWNMc0E2ajlCMWdGK0FrSXBHS0tsVFIKMXdJSU14RG81NGNBeUo5WThUTmM0OGJNYXIvTSt3QUlUZGlSa2MvU1dhM1o3cXplTW5kVHFiMmp6RDFZMXpBNU5YUHlnMC9tejk1QQo4MTludnpqKzBXZGdvSlBudnp4eDRkWWl2SjYrQ1JKYXZIaHovdEtYYzVkdnpGNjZQbnZ4bXZmaTUrTWYzNWk2Y25QK3MxdkhyOTFhCnVuYlRlL2x5Lzd2dk5CMWZxbXFzS2lySnovTTQ4MXdXaUp3c3N6dkhhTTNXV1J3cXVPSUJRRC8zRGQ1Z0kwQW9IOCszQVFSZmJqeGEKditubFJ2K1gwQ0RRVG53M01oQ3h6eGNZZ0laWEFJUnI4c2MzQXdXaVdPTkozQVVNUUw0MDBDc0FTaE9nSmNZN0tkM3dZeGlBc1AvTAo5d0dvNmphQXF1Rlp1bzFXL3F6RW9qRHkvazBBb1hYUVBnQ0p0WklYeGRDNHR2aVN0RTBkRUtEbUlFMnljRUEwbFNhYzlzMkNUUU9BCnNJMWdvZFNoQ01yUVh2cm9YdVlZK3BJK3RKdld0NHZVdFEzWEJoZmhWbXJIVG1iUFRtYlhObnFiUDdrQnJlekdWNjMzQVdnRHBUU1IKbnlmUUs5eFdQaG9Cc3QrOURmNEhBRWdCQUpJYVJMK1NhQU9wWlp2STFUNEFWZiswQU5xS1I5dW5zSnJ3b0ovZGRBU2dFRnBYQkswdApuUFp3QUlJQS9hQlM4QTdUandJUTJnbFBWd2dneUhMWkg0VzJnK3pLYUU1ZkhMc25udE1MOUZuWi8rWFRUd3EzKzVFd1p2dHVHcHJ0CjJvV3JCLzNBNnlxQUlBQkFZWlEyREVDZ24zMzByajNremxENGdJajFvSjlWQU8xbElnREZNdnQ5eVlYUUt3YWdjRnJYdlFEYVRxc1AKWXJXRWNUcDN5Q3YzMWRRL01WVC9URnZPNzZzZGY2MncvYUhJa09GUVp0cGtKSk9ZcmhleU5EeVdtczJFZUhnQTZmUjh1VW1DQUdSZwpDSXc4c1o1TlVvb1R1ZFlmQXFEREVuaWR4QUIwV0R5TFFqYWZMcDFMNUkzdm9mZnZaUTNHQTMxRW93ZWtFd2RsNC9zRlF3bThFZmhrCmZ5M0lreHIxb0o4OHUzWXRnS0M5WEFVUXBoOE1RTGxPQkNDakRaN2FBb3JDZkVoWUY4U0VEa0hUQ29EUVRWNEJWOTRXVWtNUXBTZUsKTVFiTVFnQ1NqSklWWFFYT3ZJNThIUUNvdlNRWEFEUlVtTE4yQ214VlB4QmQ1U3Rid0xwS1hCaUFxdk5OQUtBQ2wxTHQwUDlDbHBmSQpMbitKQndDU1N0VnFsVUpyVVdxTkNyVVc2VWNGQU5KSU5WcXhSaWZTY0FUcTM3R0swYVl0QktEeE9QckluMFRWR3BQcFlRR0VOcjZaCjRGOWt5dFdjVEtreGhWa2RRdXJiUXhxRDVpU0c3a1ZMSzN3QTJzUDBodE9tb0NuYVR1blpTdXJ5eDdmN1phTEtYNzVvOUFWNkQyMEQKdEJDK3FFVms5STE3UTZ3MUVEWVVCTS9aUU9nOVV5YkNHVE43cWJPLzVyYnB6Vm4xTHQzREFxakNpVTRvUEhmTUJyVDgxbXdVMlkxaQppNGJ2Tk1pdGVyNUJ5ek1vK1FZVlM2bWhNeFhTb3dKSE1tRW02b1htUFg5dUNQNUxhenhsSUFiWG5NQWJEaFhQUlR6blRDYTJwZ3ZtCm4xQzhjVkI0SEdDUkpwaVBZVXhHVUNlRDhjTzdYdTdiZld3d2dqQU9zVHR6Wk5mUmdXaFM2Mi80V2FzalFCaUFwQXJ1ZHdPSXIyS3AKTkx3Y2szSXRnTEQ1cng4SW9Ed2p5NmFqMDZVNXozQVhrdG12N0dkNkQ5S25EN0NtRC9IZlRLRE94bE5IbjVHTk1VdE9WSG92akg3NAp5ZWc3SDQyL2QySGtuWFBEYjU4YmVlL0M1S2xQcGs1OU12N2UxY24za1kxRzN2OTgvTlQxcVkrdVRYMzQyZlI3Vjd6dmZEejd6c1crCmo2NzFuN2syZU83YTJNWHJFNWV1VDE3NmZPekNsZEd6bC9wZk9kNDlPZG5hM2xaWFZGVGxkSlJhOWNWV2JhRkQ0N1NyelZhRjFveTIKNUpoMFlwdFdZdEdpdXg3dWQ2V0Jkd2RBOUVvNHl4aUFzRFZBZHdGb1BiNStFN0Z0QjZrM21Ed1NndEF6SGt4RVM2RjNFSWVEVU1IVQo4VmpHVEFwbkxsMndkRWlJREhTQXU1ekNXUUlBUlZFbXdzaWowSDc3U2pvTUJwR0dRMGxEQWNUK1hhU1daRllXVGlMMEFRZ3RBSkpxCk9IY0JTS01UQUlEZ2ZzY0FKTmZ5N3dKUU92dGJBSG9VdjdJRzZGNEFwYkQ3VE02Y3p2TGN6aXJYUUxGbE1DKzdwN1pzYUhEeTVBY1gKWGp0OTlkVnphREhRd3VrdmxzN2VYRDZQeG42UWlpNSt1WEQ1SzZEUDlLVXY1aTVmUC9ISnpkYy91elYxL2F2cEw4QkFWMFkrZUw5dApicnEwcmNHZW42V3pRc2RHa1d2VEZtZEJaOGxWbk8vTXpyVmJjaTA2ajltUmhjZ1BBSHFVMEFvQWVpeWo2SkhNOGcxNE5PUnpMNEQ4Clhtclk5Q0kyQ05TQkRJU0hYNkVYQTFBUUVYMW9BQ0JnelJaOEM0QWdoajE5TDREZ0RRQUl1Z2ZiU1oxd0M2UGlYNlM2SHdLZ3gvR1YKUUNVQUVIamlNV0tkUDdYOFNhRlZhaEQ4K3dEU0dhUWF2VVNxRlJ5Vk90SllqVEhNa1dUZUJDb0g2UU5RdWhBQkNNMkM4YWZqK1NzRgpNY0xwSTN0b0k1SDBFZDhJMEVBUXRYY1h1V01yc2RtZjBBaXdDNlQzQmJQN0ExbmRXMmtvTCtKNlgxbVA5YVJLZjBybEJrbzVmTlE4Cm5kcHBFUUNBc3V5U2h3YVFRUWtBVWhpRXY1RnFkbFBMdHBDckVJRElLRnNCQUdnN29Ra0FGT2liQmZ0eEFJSXZvWDBIQU8wZ3JBQUkKOUFPeGg0b0F0SWZXQWdDS1lWWGpsUTdRbS9QYm1hRHZBbEMrMi9nVEFNZzM5a09UUS9BcGN1a2ZSY1pEblBJNFRuOEN0d2NGMndjZwpiaGNFNkFjQktJVFNHa3B0ZzRBM3lEMkVGaXozRHdZZ1ZEbU0yaDVGNzlybjA4OWVha2NrcVFQK0ZBUFFac0ozQVNpR08zZ3ZnRUMxCk94bU51emx0b2Z6VzhLeW1oT0hXNVBtcWxMRzhKL3J6bnVuTWVibzkrN2thKysvTHpYOHAwR1U2RmNBZ21rNUExM0RwR2w4aE1CV3EKbGlwVWkxY0JCTmZpZ3dFa1ZCb3hBTkVCUUNJZGl5aVh4SEVjMjhuRjl3VlFNbmRrUDM5c0xZQ09pSkdCam9obm5wQjVEOG1tVXNURApNZnlldllMT1BjS09DRkhIRWRsWXVuTHlnSEp5djJnNFRqQWF5Ky82dFNoWFlkVmhBQUw5WUFDQ1dBVlEwUm9BNWJ0WEFLUzNvMjRyCldXWTVKR3dJWnZadHhnQkVLdmZkNUdVWWdBSXBQWHZwYUp3SmJyTW5SQ00wVldlSk82Y3JYK3NEVUY3blBRRENGZ0JoRytBQlFCQjMKQWFnc1Y1L3ZWc3JzK25ScC9qNVd4Wjk1Vm9GTUl0RnFGRXFkWHFsV0twV0FJWkZPQTUrbVRLMlhTZFV5dnB6RFUva0ExQUUzY0RoagpNbzQrOWdkaHRkSm9mbGdBNVRtVU5yTkVwMlVxMUN5OFRKZkNLZzhoOVVDakVrdEQrb2xqenEwQ0tJdzZDVTJSUDZYTmo5U3lnZERrCnF3R0VTaHV1SjZKaVFLZ3Y2QXRVR3ZwMlBFcUFWOHhES3daYXFaaVJXWWQ2bWNUUkVPb0tnSDdKYTlPWjNBMXVmYjNiK3FCWnNBY0IKcU1TR052OERnRXdHSVdBT0FHVFRDZDA2bmszUE1lbDVlcTFRcjBHYnNWbHlYZ2JQbE00YWl2cHIrYjdNK2oya2dZTzg0OUV2ZGlTUwpSNUtsYjhTOFZCdUw2MHpsZUorUW5IeENzSENFUHd1dGJBSjdJWW8rRllZYkNueXBKL2hvWDJqbU1HQm9aOGJBMXFPOVVZVG1YL1BjCjN3MGdpWlNPQVloTXd3T0EyRktVTUJvRFVMbE5meStBVmcwRXJ3OENVTDVWYXRJeXllTHNKM256U1p4WGtwbVRxZlN4Vk1iNGsreVIKTk9aVUl2dlZXTmFic1JUdmIwU2pscHBYeDA1ZW5YajkvTXk3VjZiZS9YamtyWE9qYjUrZmVQdkN4RnZucDk0OFAvY09pT2Z5NURzWAp4OTlGTWZuQng5NzNMODIvZjNuNDNLZERwNjhPZjNCaDZNMVRnOGRmN3huM05uWDIxemEwTnVWbndmRlV1RXh3NzFSNmpOVWVmYmxUCldXd1c1WmhVOEh6WFdXUWFpOVJna2xnTUVvdE9aSVRQM0NEQUFBVENvR2hWcXdCQ0UxZytBQ1Z6dlJpQXRoRzdmQUJxOUNPMGJpZDEKN3lMMTdpS3VUS2R1SVhUNVovYnRJZzVIMGlZUzJYT0FwMFA4QlRndnlFQzg0Mm1jeFFTNE1tbGpnU1QwdzVzSW5YN0VqazJFRGw4cgozcnFGV0ozSWN1Q2xJckdLSVZLc3BFQzhGMEJxUFJ3azZ2UGNCU0NCZ2ttVVBoQkFhTWsycmdkYnNvM0ZYc2FVMXByZldleHNMN1VNCmxyb21Tb3Y3S3oxOXRjV1RrK05Mcjd3T0JnTDN6Sjc1YXU3MHphWFQxMDZjK1h6eDRzMmx5emNYUC9scS92T3ZGai8vY3Ztekc4dVgKUDEwNmUybjRqVmZhWmlaTDJwdWR4VGs2aDBGcmtGc3NLby9iVkpSakxzNnhGdVphOHp4V2o4ZVdsV056NU5pdE9UWjNqaEVBdEkvdAplU1N6eVkvUTZFZXFRTXQxYnkrQ3htanlPTDc2OGN5YURTL1hBWUQ4L3Ryb00xQXJHR2dYcm5zdGdPQmo5NjNlYTk1R2JQTVYvQUdrCkx0NExvRlQrYkR4emNoc1J6WFEvRElES3NaV1VZS0JIaWZWK2xJb2pmS3RZTC80UkFMSmJGYjdVZ2xKc0p6d0dJTG1PbHlHenByTWIKWXVpRDZNbnNteERBQUhSQU5PT2JCWnRKNUUxR3M5QXlvQWdhS29rYVJoa0lvZmJ0cHZYc3BIUnVJYUVDcUZ1b0xXSE1RWWdRWnQ5Twplb2MvdVFrZE9hRm1IVm9DZ1FDMGpsd2V3OHRuNjFRSVFBNlVEUHBIQUVpdkVTdU1ndC9KTktHMDBoVUFrZXJBaFQ4aGdMYWdiWldOCjhPK2d3dklZZ0dnSVF6NEFOV0FBZ2cvenJsSVkzd3NnckJEWVF3SEl0L3BIVEpPSkdYSUJWU0g1czFDZnppNkpZYTVzZlVlNzN6bWQKb0o5a0RoYWRqd1RpbWdBMEViU3VTSHAzT0JXTjdtQzFMN0JkWUE4QzBFNUMzU3FBUW1nUERhQlFYa2U0ckMyaHRpOTVzVE5pc1NoeQpNaXR4SkRlcDE3Ti9JTy9RUU43VG5kbS9yYlg5cFZDUGN5cklKakZkSzJCcDBIYXdId0VnbVk2T0FVaW9ZK0VWa2xqVzNRQ0NVNzZICk9mQWRBRUpMb2VWVEIyV2pLYktCTk1Qd2s5blRoendUaWJiZUk4cXhkUFgwQWZWVXNtUWtWalFXSitoK1RwS3J0R2xCUHhpQWloeSsKYWhnK0FFRVVyUUZRUWRhM0FLVFFDWWh5S3dBb2lIVUhRQ2pWcVE5QThIQUpJSGZmQVpCNGlLN3BLSGQ3dXZNMUFLQzJVZ0NRYzdnQQpiUUhEZG9HdEFnamIvN1VLSUpRRmNRMkE4dHhxc2Myd1g1SVh3U3o3QTgvR1YwakZXZzFLbkc3V3cvZDVXUlp1dm90Zm1DWDB1UGhHCkkwK3U0WEtWenpNUmdFSnBnMkgwaVJqYTJCOEVOUXFUNVVjQXlBNU5sNWFqVkxFSWNtMHF1enlVM0x1UE9oMUhSNVVtTVFCRk1iMEEKb0ZEYVpDQnhCTVRqSzVkWUM5MjRkYVQ2eDhsMTZ5aDE4TXhGVDF0VVF4R1ZVWHdNVi9OelhDMFc2eENKVmd6a216NVlBeURTQ0FBbwp6QWVnWjdtdFdrdFdmWmJ4WVFGVTVUU1UyclVZZ1BSYW5ra3ZzQmxFRG9QWWJ1Q1pUVnkxU1NUWFMyUmFybEJMcFNqNEx3dE1zZlRCClBmaW1DR0o3Q1BUYXVjc0pML1k4eTVuYXo1bzZpSEpwamtMei9LUnc2U24rM05PQ2VXaHU0emxMTWZUcFNNTEk3cU45RU1HWkF3SDQKZ1IzNC9xMzR2cjM0cGw5eFhSUXBGd0RFa2ROWEFTUlNzZitYQXNpdE54dDFVckk4NTRod05GNHdreXFZT01DYWlTTlBKOU1HRHJBbQpEM0RtRDNLV0FYWko3Q240bzJlTngzT0dqM2U4ZW43bXZjOW4zN3cwKy9yNTJYZk9UNzEvZHZTOTA2T3ZueGs0K1dIWDhYZmJsOTV1ClgzaXJ3L3RXeC9ocjdTTW5CN3I3dTF2YjIydHJXc3FLV3dvOTZCUzRUVTFPWFgyZXN5RVhIV0ZUdHJQV2JhdDBXNHFkeG55bm9kQ3UKZDluVVFCK3RVWVFXWUpuRUpyTllheEY5RzBCb0JHZ1B4YnNLb1AyODZTVE96Q3FBVU1PSlF3QkNHYVFJM1Z0UlRZYjJEZmlXOWJqbQpqVWU3ZCtBSDk5QW5reml6OEhjeEFLVUw1by93bHVFRUpiSzkwSTlIcGRvelcwRW5qeEthSHlQVWJ3U1g0K3Y5U2VXSkhEdGVJWktwCm1HSVoreWNIRUxZTGJCVkF3YVFscmFGZ3FNaldXMjd1S2ZQMEZwZDBsMW5HYWl3TjVYa2p3NFBIM3oxNy9PSXQ3L2x2NXM3ZVdqNTMKN1kzejF4WXYzWmkvY21QdXN5L25yMzI1K01XTnlkUG5tcWZuOHBzNnlqeXVBb2NseDZiM3VJeHV0OUhtMEJydGFyTlRDK0xKenJWRApPSE9zOE42VFkzZTd6WGE3M3VwVUE0QmllWG5ZRkJpMGZ5alJEcjVtb3k4VEQ3Z0Uyd1cyRmtBK0F6VnZPZHEyTTdOckZVQUJoRUVNClFKc0pMVmpKNTNqMnpIN3VIUUNoRmREZkJwQmZadU1xZ05aaGlkeCtNSUEya2l2U2VWYWhYdlRUQVlqakExQmRES01mQXhCYUJpUloKT0NTYVBpVHlIaFI3VTRWZURFQ1I5T0Z3S3RJUHF2bEQ3ZzZpZGUrZ3RHRkxucmV6MnFJNVk1R3NZVkRSZG5LckgzcldvVEpuNnlobwpHUkFHb0doK1BrdXJSaFU4Zmh5QTlHb0FrTklnK0wxTUcwNHIza3F1QkFDaGVnT0VhbjlDM1U4TG9BQmk2MW9BaFZJNkk2bk5rZjhuCkFFU1hTNWdLSVUwcC9yTkltODRvQXJyRTBOdGpHUjF4ekU0QVVCSzdFL1NUeE82QWVHVExzY3FkbVRYQnBNWndhbXNrdlgwdkJMVmoKRDZVOWd0d0JFVW5wM0VQdHdnTGV3M2ZDaUMyQmhQcHQrS3BOdUlyTmhLcWQ1QVlBVUNTak41clJIYy9waitjT1FDVHdCcE1Fd3pIYwovZ2hhaHordGFnT3A3SEZjc2UvREt0dE1ydGpGcWc4VHRZZm5WeWROdE1jdWxVVk5aY1ZQbEVTUFZlNGJMa29jeWtrY3lrc2M5S1QwCnVnKzNPNTZyczd4VW9NZWJwUlFWajY0V01UUkNsazdNMDBsRVdxbFNBNDJvd3FSVjZuVG9OTU16MnFRVG0zeXJJM1ZvZ2FSQWFWcVoKYnBmcGVUSWRUYXlsL2xVcWoyRzd0bElyTmxFUUxPQUtXd1ZRUEdjMG1Zc1dOWVBpRDRxbjFpNkZSZ3dTTDZSSnZGSDY3c1NPenZUWApPdmN0bDBWNEM5Tkc2dmEzTjZUVWRpZVdUMFE1K2hJa0pjY2tMb2ZCN1hCcHMxeTZYS2NlQUZUbU1GUTQ5WlV1UTdYTG1KOXJMbldiCktoMzZjcGUyS0V1ZG42MzBaTW1kYnJIR3llZWF0SDlSRmh6a3Q0WXhlclpRMmpkU2FqZFFTaDhqVjZPY0VIQ2RFU3QzVWVxakdHMnAKckw3RHJLRmZDaWZFK3JMYTNOejJmRTk3b2EyL0pLdW5JS2VqMU5sZDV1Z3BkL1pVdW51cnNxQXZPRlNXUFZ6c0hpbHlENWFpY2FEdQpVbGRQcWF1cjJOWlVhQ290MEhvS1ZkbTVlb0xKR0NjeDdwRTVublhtNDhxS1NJMmx1TTdxRjRmcm41MXJmbmF1L2VuWmpvT3ZkdjEyCnNvR2Y2OVR4aEF5UjdqZWN2QmhLWnpnRlZmaUxvNDg5ejI4U0c0MEFJSWpWZEloZ0lGRE9LbnJ1Q3ArQk5FNHpWNjJsQzdWMG1scjAKTEtOb0QzNGtoTzBOWXkyR3NVYmlXU05wdFBrWXlsSXdaeWFBTlJ4MHRQdG5uS290anVZOVRUM1JMZjNielhYd2dhdy8ydVIzdEhNcgpybUVUcmdhVkFDTld3QVB4TVZ3Vkd1L0JONkxhcUptMWoyWTBQSnJSOUZobUl5b09EMDlKZkEyMGNOdUlBeUhraVZqYWJEUmxPcDNkCkk5YVhORHBsdFZubXVteExZN2ExeVdOcnlYVkF0T1U2SVpwemdFUTJDUGlqZWc4SytNa2F0Nm5VcFlWeldtYlZaT21rWUF1cFJhakYKY2x1YmhIYU55cWpteTh4OEVLMU9TaEVwT0grUU8xSzVVNm5RdGVWNlV6Z0xFTW5jaFNUT1BEU3VxWnc1Q0doVFVmc3FSdWx1RHdobgowd1RlZVBiVVhzcG9hT1p3MExHaG9NelJ3SXlSSGNjR0lQYVFXbjRwZEpIbEhKNmN3bE15ZVdxbVFNbVF5ZER3ajFpK3NnZ2FBQ1FRClVKZ3NFb1dLSjNISUxCbExxT1JvMWZ3OHM2ckthcXkwVzZwdnJ3RnF1TDBOSGdNUWZCT2lKc3RXN2JZQ05RQkF4VDRBNVpyVkhxUEEKcUJjVHBjVlA4bEZGM2dQMHlmMGtieHhqSnBVK2xrYWZUR05PcC9sR1N0TDRpMm1DK2YyQzJUUjI3MS9NczVxbVV3V2psd3VHTDFqYQozdWVWdkpaaG0wdFZ2WTUrZ0xzWXoxL2F6K25HaVhPZFJuMmxUVjFoMThIZEFhZWdJY2ZXbUd1L0UzbXVodHVKS0d1ekFVRG1FcmlKCkhMcDhxemJib29ZR0NUVkZKckhCSWpXaTlVQWlqWVdyc2FMTXFLQlNxa3FZd2k0SW9vK0VjQWVqZWQ2OTNNa0l6bmdJWXlpQTFyK04KM09sUGF2ZU5LVGJjR3lpMUpxNTVKM2tnaWpHYnpGazZ5SjgvSXBvL0xGbzhLRHgrV0xpUXlsdUtaUzJFMHNhM2tqcXdBZzZQdzJ0bQpEVXJsaDIvZVJLNCt3TE5SNVV5SmlpRFVBSUNZTWkxYnFlWEFVd2hiQkkwQlNLdmphZlE4MzF5WVFIa2JRRUlsVHl6alpzamtLUnpIClZuelZ1b3htWDQyWEtyL01acmlBNFhWclpzY3VYRzh3ZmpDVU1JcXE0MEZRSittS2hzNEtkMStKbzZ2YzNWOXBIeW9ySHFqTkg2N04KN3lqTDdtMnBQZkhLeVhjdVhEMSsvb3VwTXplbUwvMTk1dk92bDYvLzdiWFByaTIrODI3L1lGOTllVWwxVGxhdHgxV1c3eXJPc2VkNwpyRGxaWnBmYmJIWG9UUTZkMmFsM1oxbXlzNjA1T2ZZOGp6MDMyNUxsTWJ1eVRRNlBTZTlTVWwzbVNIb1YvTXJyQ09Wb0xBMVh2WUhVCmlBQ0VSOFdKMGZxcXpLclY4TldscWR2d2NwUC8wZGJ0bWQwQitMN2R4TDRRMzFMb1FCTGFDT1lyRk4rM2x6bVd3Si9aTDVvN0lKdy8KTEo1L1VqVDd0R2p1Q2ZGY3VuZytuamNUeVp6WVNLckRBdk1ObW1YenhiMzB3UUpPaWo4ZUd1K0dkY1FHYU1nM2tTdmp1RmxNZzh4cQo0ZHVzQXJ0TmhJb3dyaGhJQnJIQ0lGK3NCWkRES3JOYlpUYUwzR1JHQU1JV1FRT0E0SVF5RmVwbmVmbDdHWDE3MlROcG5JbkQzQW1rCk43UUllaXBOQkwrTE4xRTRIY09kUk5Vd3lBTUJ4SjRnY2w4b3VSOGlFTmNSa05rZVJPbUo1SXhFODhmQzJBTmJxVzNvVUlFK3ZyRWYKeEE1eXplT1VDajlTUlFJemw2UlhtUjBpT0JJd1VJNVY3YzdTbVhQVTVpeGxsa3NOWDNvczZoeUh3V1ZEV1JDenpDcTNTZWswS2F4RwptZEVJOTRnTTVZYlFLaVI2K1YvbHVpaGFyaCtwM0k5VzZrZENOZVkya1ZBZTRKMmsxZ0JTQjZBbmdJSjJnUVZSMEh0VXJJUGN1SmxVCkN6KzV3V2VnZFpuRmNERHdNYTRubHFJZ2x6eE9LbDVITEZwSmF1T3JDYitUMkJoRWJna2h0NGRSTzRQb2JXZ0xHTFV6ak5hZVJDK2sKcTIxV3F4SmxtSFNwczkwYVQ1WStkelVYb3NzSVVlU3lRQlM0ekJENWJ1dHFLWGk3Ulc4eDYweG1CQ0NORVFDa2t1dmtFdDBLZ0NBQQpRRUsxbU84ekVFY3BFS3FVVENXZnBPRFFaR0s2VEh4VUlqM0VzWVZTYXlKcGRmdFlMYkdjampodVp4eThjdHJqZVMySmdyWkhOcjFVCjVQOXk2ZlpqRlFINHVoQlNVd1M1TGZLMmZqQUFyUVo4R1U1cUR5VTAzd3VnUGZUZUdHWVBCcUE0MzJzaWZ5aWEwd2NBMmtHdjIwS3UKUWt1bGlCV2JTWlZieVZVQnpJWndZVWRxdzBDNmR5QnVzU3A2MGhNL1ZoUTdXcDR3VnBZMlhKZzhVcEEwbko4MGxIT2czL09ManV6ZgoxZG4vWEtSLzBhTW02c1VVblpDcEZRbDFVb1ZlcnRFcnREcmZUbmlkVEtlVEFJRGdNVzMwRGY4QWdEUUcvaXFBSkhvK0JxQS9TZVhSClRQZGFBS0hCbFFjRENBMENTYWVlRkk4L3JaeFBVbzNHNS9jZm5oallmN3d4YXFvMGVydzhmcm95ZWJ3cWJiUWhkYVF6dnJNdHViTDAKZHdWdVpvSGQ0elJEWHlyUGhUenJjNjRoUDBlWGw2c3J5alo1Y2sydUFsTjJuc21UbzBjWGdVV1JiNUFZTFZTcFNabXBMam9pQUFCMQorMU5hSHFWVlBNb3NmSlJZOXhpcC9uRks0MFp5MDFaU1d3aTFMNUUxZVZpdytKeHdYR1lvYThqTDY4alA3Z0FBRmJ2N0NuUEJOOE5GCm5zRml6MkJaYmwvRlNneVU1dlNYZUxwS25HMWx6cVp5UjNPWnM2WEkyWnh2cjg2MWx1YWFMYmttYW43T1V5V1ZhVTB0ejQ1Mi8yYWgKNDlESmxyaTNXcDlaYm52aXRhNG5Udlkrc2R5Yi9rclBMK2VhOFZVZXJsTE9GSzRDYUFRRDBHLzVMY0lmRENCcytBZWkwS1oxbVFVYQpIVk9rWTZEYzNLeWlhT0pJS0djMmtqc0szZXNreG5Rc1p5cUd0eFJPbXc0VWRvUVZOQ1pPVEJ4K3cvdk11Ym1uM3B1STZtNzJkeFp2CjBKWThyaTU5aEZiMkNMbnlNU0pLb28rNmhwbG9kZVI2S3FxS0NrOWtINFBRampDSVI0OVZQWFlNTHRlV3RRQTZ5T2tEQURVNEZkOEwKSUFob20xY0JWSlZ0S0hmcTh5MUtxMTRNQU5JYVJmRHI1MmtsVnIzUWFWQkM2NnZRTWpVNm9Vckw0S2k0TDRxZEIrQ3h6dlB1NTgxQwoydytSd3NOaS9sNEFIUlNodGJxSjNKbDl0UEZ3UEphTlpnd0F0RE5qRUFJQlNKQkZsdk5XQVNSVU1URUFTUlIzUm9DK0YwRFlpcC83CkxnT3F6VVlHQWdCVnVNd0FvRUtyRGdDVVl4TENiVVdRbEJ6aFRhWndad0E5K3ltekNhelpnOHlaTkliM0FCUEVzM0NBZzdaS2dXL1MKQkhQN0dNdnh6Q1g0ZlZPWm83R0Vuc2lNbnJETXdlQ000ZDJVOGZDTS9raFVrR1F5anRweVRKRHROQmlySFZyb0VzQ25DaDh2b0tjcAp6M0VuOHQzSVFMY0JWSlZsQVFBVk9QVUZOcDNIcXJHaGRKcGl2VmtDQUVJdGsxNEFBTkphVUhWa2VFL1RDSktZZWVDWVhmVHVRRW9mCnhFNUs3M1pLRjhERm45UUsrdGxJYk41SWJJUzQxMEFiOFMyN0tJUDdtS2dFR0p3YUFOQVI4UklHb0RUKzhUajI0aXFBMXVFUmdOQmkKRngrQTRDbDNrRzhGQU1sVVJBQ1FWTXRZQlJEMklMb0hRR2duL0cwQWNkWUM2TEhNRlFDQnhoNEVvTjJrTVlLMHNiblUzVk5xd3dBMApVTzREVUUxZWYzVkJUMzE1WDFmNzVPekN5Vk1YWHIvODFhdFh2MzdqNDZ2emI3M2RPemJjMEZoZFhaNVhVNVJWVytDcXlYTjhCNEN5CmJnUEk0N0c0czAzT0xLTTkyd2dBb2poTkViUksrSlhSSWtXRW51cjF4QVlNUUxjTmhOVW5Sb0cySUJ5cjMzaTBlVFBhRDM4M2dBS0kKdlR2eDNVSGsvbnNCOUpRWUFRaHVDZ0JRQkdQOFlRRUVwOUlIb0xyYkFLcU81bVRURFBLZkNrQUtQWit0VlAyYVh4REY2b3ZpZUE5dwpKeEdBaEhPZ245c0Ftc1lBRkVtSGk3OC9rTlFiUk9vTklZR0JlaUhnZVI3R0hJemtEWWV6QmdJWlhadkpMZXVKOWFqRVBha2FGY08rCkE2Q3FPRlkrVWFjeTJZVndKSENjV1RhRng2RUNTZVJabFVVV1ZTRzZRNVhaTnMxM0EwaXFsNytzMEViVDhqYVR5d0JBYUN6bld3QkMKQXorN3lLaFFLellDZEMrQUVIMThWUnlBUVk4VFNoN0RGYTNERjhNckFNZ25nWnB0aFBwZHBLWWdjbHNvQldVRFdnVlFPTDBqbVZIRQowRmh0TmhVNmNwZmE0OUxsK0twaG9QYlJ2UUtnUXZlcWZ1NFBJSU5SL1VNQXhCS0xhRElPV2NtbHl5VVlnQTZ6SGFHVXVuQnlzeStiClQyOE1xeitPQlMxK2Z3SzNMNG5mOThpR2wzSWgvRjRxMlBweTJjN01taUE4U2dNZFJtd0g2MENzU2dqZWh4SGJRZ210dTRuTlFLV3QKYXdBRTNNTUFGTWZ1QS8zRStsNFRlSU1Bb0VoNjUyNW1Xd0MxYVFlcDNoZTFPOGwxd1l6bUNGNW5YSDVYWEVkYjlHaFo0bmgreW1oeAovR2hwd2xocDBtQWV2RThlTFU0WUxVb2VLMHdieVQvY2wvdFVtL3NYalk2WHNwVVpkZ25WS0Jab3hXcWRYRzlRYUExeWhVR3MwYThzCmhWNEZrRll2QkFBcGpDam5HUFRGZlFDaUN6UzBGeVNLdmN5c0xaVHkrd0lvaFRjR0FEb2dtc1FBNURNUUF0RFQwdkhEbXJFa1ovK2gKM3BGRHg3djJ6UlRGakpla2pOU0ZqWlhzR3krTUhjK05uY3piTndVSFhIS2tOLys1Tm8rMHhLNHRjdGh5VWJjSlRuQitqc0dUcDNFWAphYk9yczZTZDJmVEJYTzVBbnJnN1Y5U2VJMjV3YThyczBsdyszYUY5UVZkMFVOSzJoeis0azkzclIyOTRqRnF5bWRHNGtZWm1mQjRqCjFNTWpPNGphSDhPZWhCN0dIOFFqR2xOcFMzNU9aNEVIQU5SWG1OVlhrTmRiNXU0dUsrd3JMUndxTFJ3dWdkZjg3dks4bHFxOCtocFAKYTVtdHRkVFJWdVpxSzhsdUxNa3Bxc2d6MVJkSTJ3cGVuQ2o3bGJjcGJXa285WlhScDk4WStzWHJYUWRmYTR0L296dnU3YTZrTjNwUwpYKzg3K0VyLzRlV2VYNTNvK3V0QU5TM0h6aExwZjhQSmlhRzBBNEFpbUNPeDlQSG5lSzBDUFpvQysxNEFyZXJIQnlCMUZ2VFVkUnlwCmpzblVDbi9MSzRnakQwZHc1eEk0dzhuTXFTVDI0aDcyVEFoOVBFbzVjYUI3NHVsTEkwY3VqeCs2TXBoNHVpWCtyYnFrNWNZa2IzUHkKZEh2aWRGdFlRODhXWjhQUDJLVS9PMWE1TWFObE02RmpBN0g1Wi9nYVAxek5CbndWMmthQkwwY0xJZUVwaVhhT29LS01XNG05dTBuagowVFF2eEFGV3YwQlhXdWRTZlFlQVZnMjBGa0NnbjJLSEZpMkN0a2lnR1ROcmhVNjF5Q1VYMk5WY2kwRnFOUERVS2hvMGRSSVRrNnprCjRQalorM25UNEFaVVNZbzlENzhkQ3BSV2VHNC9DeG5vTm9CUXV0dURvb1VEd3RuOS9MbFk1dFFlMGtRb2ZteDM1cGh2RUdob1Z5WUEKcU8wMmdHaTNBVVJmQlpCVVFWOExJQ3FOQUFCaVN3RkFMSjJHWDJCU1Zka01GVFlqQmlCczRHY1ZRS3V6WUJpQXNGbXdFb2NSQUpSbgowZVNhUmRDN3dFbktEbkVta3pnenFZekpGT3BzUEhzbWxUVy9uN0dBQlJqb0lIY2huVCtYenZjbVN0NU1FTDJheEg4bGtiTzBoeks5Cm16Z2RTSmtOcEM2RTBxYjJFa2IzRVZFZXBuaGErMUcreDZFM0FJQnFuY1o2dHhrKzVOWTg1OXJBQUlSVkk2bnoyS3V6cmFWdVU2SEwKQUFES3NXbnRWb1hCSkFFQUdhMHlrMWxzTWdneEFNRnpBTjREZ0JKWU9adnhuU2k5Q2c0RktCa0NqZkdnTldRTjBOdkdBSFN2Z2Z3SQpyUUhVb1dnVzJ2WjFTTGo0aEhnQkFKUXVXcjRYUUk4VDZ0QUlFQTYxdGFDQnJkU3FRd0lyWGM2NkF5QWQ4N1orVU1EVkFxSFQ4N1VHCmJDNE1Hd0hpcmdWUU10dU9BZWd4M1BjQUtJUTQrcUtndWFyUTNWMWk3U2x6OXlFQUZmWFg1QTFYNW93M2xnelVsVFNWRjNZME44ek0KekN5ZWZHMTY4Wld4N3ZhKzV0cU9xc0syVWs5N3VidTF3dDFRWXE4c3NOd0xJS05kQ3dhQzl3QWdqOGNHQnNyT05tTUFzbVVaOUM0Vgp5V1lLSTFldXc3V2cxaHJmZ1BvYlB2cmNCU0RmeXVpYWpaa29FNm5mc2FZdEtDTmlUeUNoUDRRNGlBRUlUWVFSZTNjUmVuYVRCNkpZCjQ4a0NMd0FDMndPL0ZrQngzT2x3K3RqZHZ2bmUrRGFBb0NHUFl1ZVFkY3AvRTBDclUyQktnNENyVmo4dnpJdGxkVWF6cDFPNUU0ZDQKNDNEOHZqVkFDRUFRQUtCWUxwb0NBd0JoOVZCRFNEMm9maXB6T0lvN3RwYzNFc0VkQ3FDZzh1OStjRm5Da3dvT20xeURDb0doRVpxYQo5ZFJLT094WVJnRmVwOVRiMFFnUUhDMGNVbzVEa1dlVm83Q3JjK3lxYktzQ0hrY1BBcERhS0FZQXlRenlZd3BOSEQxM0M2bHNFd1lnCmNnV2djQ3VwQWF3REFNTEsxR01Bd2lxMndoK3RBTWczQmJhSldnbmlXVThzOWFkVVlkTmVtMG5WOExvUlYrbUhyL0xIMXdLQWRoS2IKZzhob0ovd0tnQml0NGRUMmNIcmJmbllCVTJ1eDI5VUFJS3dVeGtvNU1MaWpid09vSU11Q3pYK2hLYkRiQU1xeUd6RUFHVTJhSHd3ZwpBVjNKaFNjQVhTNWpTcVhIeFBJakhHYzRwU2FjM0JoSlJmdlpvNWw5QUtBRTdrQWlyeDlsZ3ZiTHlObjRjZzRZYU5OTFJWdU9WZTdLCmJBek1iQTdNYk4yTmF3N0J0NEI0SURENndKY1F3WVNtbllTNkxiaEtERUM3U0FoQSt4aDlzYXhlQUJEb0o0WUZ5T29GQSsxajl3S0EKd3BrOUliUk9nR0V3cFRXSTNCSklhUXFtdFlReTI0TUZaVUgyNHIyMStRZDY4dFA3OHhNRzgyUEhpcUlIUEVrakpmR2pKZEZqeFRIagpSWEhqeFVtakJTa0RlZnQ3YzM1YlovcGpxUzdETFdlWnBGSzlETG5ISUZXWnBLaldpVUhxV3d5RWJRWVJyZ0lJdWw5eWFJcjBRb21PCnhsUFRueGNySTlZQUNHQzdDcUE0OXNpOUFEb2tuZ0FEL1VJOGxxcnNPMWcxL0l1bDhiampsYUdUenBpWjRyamhpcGl4K3JpeGlzU1IKL0poaER4d3R2TjgvWEhhNHQvZ1h2YmwvYXZPd3FrQ3pqcnhzUzFHMnFTQlhuMXVnRTlRN254L0pPcmlZOTh2RjRoY1dLbjV6b3ZMWAp5MVYvbnF1aVRKUWRIYWo3WlgxTHJLdHRtN2hwSTYzUm45SzhqZDRHQitsSHFkaElxZHhFcTkvT2FBMWxkOFZ3KzVQNFEzOFI5NW1zCnhXMTUyZDM1bm80Q2UwKytxemMvRndEVVZWN1FYVkhZVTVIdmk5ek95cHkycXB5VzZ1eStFbGRuZVZaRGJWNUpRNUcxcllJeldQMUgKYjhOVEo1dWZmS1hsNEJzOVNXOE5wcnpSZC9EVmpzTW5XOUpmN1Rqdyt1REJOM3VmT05HVC9tcmYvbGQ3RGk1MkhINnQ1OW5GMXI4MgpGQUNBbnNNQVJCMktZQTdGTUNaL3plM2dhSzBQRHlBbEFBaWFBUVFnSGZmM2dweGsydEJlamplVjZvM2xUTVlLNXFJWmMrR1M0ZGpXCmdZT25SdzVkR3pwNFpmRElsYUhrOTFvU1R6UWtMOVluek5URWVhdmk1NnYzTDdkRUQ5VUZsVlJzMHBROVJxLzhPYTV4WFdibkJueS8KYjJOOGd5OG5VQVhFT2x3VldoeU5yL1BEMVFPQWdraWpvSjhvbWplTlBjalZsTlc2dEE4Q0VMeTVDMER3WXdDZ01vZXVGQzN6VXR2cwpjaFBhQ0NaVVdhVkNqMHB0NW1rMEFwT2VvOUV4cERxMndFQWp5emtaL053azlrUWlhektCTVIzSG1JbWp6Nkpnb2xvSzRLRVV6c0orCkxzbzBBdzN0WWRGS3BBblJRcE1veWtRRVlSelZ3Y2dZZ2dqQ0RlMGxkZjVTNENITEJHc0JKSmV6MFhackg0QmtjakFRWXhWQUZBNlIKTFVQVlVnRkEwRTBFQUZWWmZRRHkySUVVQUl2VndFWlpzSUVXdE00cHkxTGhNcFU0RFlVMmJaNUZuZU5UUmFZWTdkNVA1TTRtMHljVApxTlA3MkJQeDhJdFFaeE9vczBuMCtUVFdFZ0RvTUcvdU1NK2J4aHZmenhsUEF5cHh2QWtNYnlRRlZUSUpwZzZIMGVhaXlWT3hsTG05CjlJVUVlaGNBeUs3VFl3QnF5TExBUnczb2FjdDNyVVp6b2FzNTM5bVVCNGNLQjJ5cnpqYVhaeG5SUGtxN1B0ZWhkZGlVUnJQVUJ5QUoKQU1oc0ZPbk1YSU5GYkRESXpDWUJUU2VJWjJadHdyV2dOaGdyRklXV3o2TllSMXFKRGFURzFjQlVoTVVtWWxzUWZTU1dzNWpLUDNGWQp0UFNrWlBFSnlmRkQ0aFBvMVBnQUJEcGZCWkJ2Z1ZxOUQwQ04yNm1WVHdxdExBVlRyaWFKdEZ6UWoxelBVdW5admtVL0tEUjZuaGFsCkR1Y0NnQ0N3WlVBcjFUQlVhQmtRQmlCNHRLSVJJSHd0WExyclVTWm9CS0J0dUU0QTBHN0NVQmh4RFBRVFRoa0xJUTQveitrc3lQZDAKbDFrR3lySjZLeHg5RmJtRDFYa2pWYmxqZFVVamRjVTlWUVU5MWNWOWpkVzlUVFVkOVZXb1ltQzVyMGhPZFc1UFpUYjBpT3FMSFZVRgo5bFVBUVlkdEZVQVF6aXl6TzhzQ0FJSUFBTGw4K3JHNjlRYTNsbUF4aFJBUmdCNG5WZ0dBNEVOZUN5QnN4bmsxb0VNQ3Q5Nm1qTWF0Cm1YY0FGRXJ5VmNQd3BRS0NDS0ZBYjNreVJUaTdDcUFuZk5XSDREVk5OQnZEblFxbGo5NTNzR2QxUU9qZVFLZVNnQUFFSngydFpTSFYKaExQeU10WHFod1dRMHliSEFHUzJySlFEV3dHUVNTalFLUDRrZENjd21xTllZM0ROQTREU0JGNlVHYzVub0ZUaE5NcUZ5RUVMQmlKbwpRNkcwd1FqYVFDUjlNSW81SE1NZGp4R01SL0tHZ3hpOVcwaE5mbWo4ekhmWVNEOVlJQU90cDFiQVlVY3hDak0wYWd4QXFIaVpTK3B4Cnlqd09oZE9sc21XcklkRFdLb2ZpT3dDaytmOVp1OC9nTnE4MFgvQnEyOHBac25KaXpwbFVkZzdkZHR1eXJVQ0N5RG5ubkhQT2tTQkIKa0FSSkJJSWttRE1WU1VsT2JiZXozUTd0N3A3Wm1UdDdaM2VyOW43YXF2Mnk1d0N5ckxiYm5wbTd0K3BmcUpja1ZBSko4SDEvN3puUAplWTZFejVkenJnbkV0WGpiWHBSL0c4YTNCUUhMVEFGdWdISUtLK0gvRGtDb3hNOEJ0QmtGOSs2RWw2VE80TmIyWUg3bXEydnIxUkFBCkVNZ08yQlN3QndDb1VBY05BSFFRbThnREtIR1MwTjlBY2hKbFB3VlFmdFNuQUNBNDhHTTNQNUtISTBENm53SklLQk1BQUxFa0QvWUMKK3ptQXlEd0dVVXpIaXBoNExnUVFnaU84UURNV1lhTW4wQkdRVTlqZUV2eEFCV21vaWpKY1JSa0UyYkN0dzc3bG1tM3JGZnYyeXg2NApGMWg3Ykg5SDM0SDIvb05YZWc5ZGpSKysxbGVRVUNIZytDQWl2cStqKzFFQW5TZ0FpREFLVWs0Y2hSdW1FZ0NEUmt1STJWTndVN1RzCkNYVHFPQ3A1REQxOEZCZ0kzUWR5R05OL0Vocyt4SElVNi9YbndzYUxjWDFEeGxRNzV5NmRjbFJPZXN1bnZJQVVlUVA1cXFZOXRSUHUKMm5GWFc5WjhjZER3MjRqcW1sMUMxUExaQ3A0QS9uYUJnWGpnTVc4Z0NLQjhHem9HT04wOEJCQkx4bUJLOFdRUi9rV1c4QmplQnNjQQpVZjVIQVpSZkJUYjVjQW9NR0FpK2labHpBRUFnRjVnejlZS1JzN0haMW9YUmszUGVFd3VXMGtYbnFRbDc2V3dVQW1ncVVETVZxcDdxCnJwem9xaG4zQTZzVnp6b2JjdllYaDJ5b0hqTS9vTmU2TlZhbjJ1RlVJN0tPYzB1dXlqdXV0aFhQK1VWZjNYVi94UzEvL1dxZytXWVUKNE9QYzNjeVo2MlBWNlpFanpzUldmdmR2OEtGZHhQQjJZbVFiUHJvTjA3TUgzWGNVTzFSSnlqUlJSeTl6a2dhREIxd2hraTV6d3FOTApPVTBBUUptQWVUcS9GWHc2YkUxRVlaSmh1QVkrNTdQMGQ3bThBeDd4ZUFpMUVIbmxldS9UZHdiYjdxY2EzeHM1Y3p2WmRpY05vTk44ClA5MTBiN0Q1N2NHbWR6SU43NHhmdUpPK2VIMjRkVDNWY0RmWmZDUFJ2RDUwOWtiL3EvM2VBb0RLMEFQSDBXTUFRR1c0Mldjb2FhTFkKK0o4QjBOOFpTTXUxYUtGVHdTMHlXVVo2aldsdXhJK1dVdVpyOERmTHljdEhzYmxUM0tuVzRjVzJUMmZxdmg5citIYXk4YXZVbWEvRwpXOTVOTjkxT05sNGZxRmdNbHk0RVNoZDg1VXV1bXV1aHVwVlljVGEyengzZXhBcytqb25DdlpNNlV4c1JRNXZoSW5rNEpnOXUwTUhOCjlJWnJrVHlBMGdCQVFEL0Z1SlY2WWc0dkNrUU0wdjhxZ0lBUG9ucTVWeXZRSzVrS0tVMmk0bEJpK3FzclFVcGN3MUp4bFdLeVNFVm0KeUVrc0NZYkFaN3pHY0ZRVFpxdndzeFc0dVhMTVlobDZBZlk2d2k2VzR4YXFpY3UxY0orcEc0Vk9NK0JhZTRaNTR5enJaZ3Y3UmgxbApxUUszVUlTY0JRQTZkQ1YzNE9wWUhrQ3BaK2gyQ0NBdWppb2dQUUFRbndpWFd3dUlEd0hFWUdDSUpCUUFFSWFDQkFCaThva0tDY09qCkZuWnBJSUM2TFZBL0JRRDFPWDdjOEJXT3N1VDFBemQ4TmFtQ0JvVlhMM05weEhhVjBLS2tTNlhjcTZ4d00yV3BpcklLdnBkUzVOUlIKYkg1ank4NXA4Q0xCOTlWQXZGRUEwQm5xMGxQc2xmT001ZFBrbFJiaXpUcjg5VEwwNGluMDNDbnM3RkgwVWlseXJoeTFYQmdCZW90cQowa2hFWFhwUnQxSFdhMUgyMnpVSnAyN1FwWCtZQVJjRVVPRzNBSDcrM1ZaMXlLTDBtK1VldmN4aGtCcjFJcVdHRGNRREFLUlNzd0Y2CkZHb2F4SkNjclZZeGNESmFEY204dlhOZ1MyZlhWbFNza00xb09KNjZDZFZieUM4QmFDZHErQWhodW9wNnE1bXhmb1oxQ3dEb0hPZjIKYWZZYUFGQWovUmFBRVFBUWVBNjRyTUtxL003ZUp3b3JFenRpQjdIaHA1Z2FzZ0RQRnlJNUVqcFhpZ01BRXNuSkR3TDBrM2RQSGtEUQpRT0F6c0VJUkFvaGNBTkJsTHErV3JOdlJBVzFSQUZCK0s0eGVPSHY3TXdDQng0djRVWlBkblE0cWN3RXJBRkFtYkIyTDJLZTZITG1JClk2TExPZFh0emtXZFFFWGdkbWkweXpVZTg0NUYzU01SV3pwa0dRNVlFajViekdQcmN0bUNMcFBQcmk4QUNJaEhhNUFYQUtRM0tSOE8KQXBtdEtvTlpBZlNqTnNzVUppVkNyVDZHakc1cUg5d0VVQUwveXFKUWdiOEVvSTdJMW12ZEFFQzdyc0p1UUE4QkJCN3pMYUZoWjZEagoySWtLOGp3QVVCTnp0WmwxdlRVUElKRFRMRUNpSldDakk1aUpuMDk0UFRvajl2TnNoS3RKQWdBVEJRQ0J4Nk40NXh0QzZmOUNBSUhMCjhCdE1YUjIrcHhpZnF5VlB0OEQ3NThYQ3pYTVRZNjZCTVZ0RG5hbWd6SlNTcG9DUWl2QzVNdkowSlhXMmtqcGRRWVBEUDBjSjJiMm8KeE1PcFBXQ2RmSnZtQnd6YWhneHRnZVd6UGFkd3JqZkZZb21XbFFjUXkyRGltQ0dBaEJhRHhHQVVnNWlNZlBDWlh3U1FpZzBBSkpLeQprRUpoSTlHMkgrWGJqdlVXU3B2ekFPcUJBRUlPSE1qcjUwbDBQeXlGQmdDQ2RSYzlPNUZkMitEdUdTREJKeER1N1pnd0JCQUtUb2R0ClFRUTJ0ZnZBRXpaM0ZEd1UyWW5vMlllTWczOTdHRDEwQkpNRUFEcUpHemlPNlR0SjZHdWsySWd5cFM0L2MvY0FRRVk1TEJISnQzNSsKTU9wamdiMm1mb2pHYWxLYkRUOU9nZjJYQUlRWFV0RUNPbzdESVhNNUtBSHZXYWErQk84cndrZUs4RjNGK040eVVxS0trcXlscCtzWQpxVnA2RXU0R3YrV2FZOHRWMTQ1cnZ0MkkwRDVFejVPSU9NeGJQUWN1eDM1dW9QMGR2WHZhbzBBL0JRQWRRTVZQWWxObHVHeDUza0FGCi9aVGlSMENLOEJrQW9DTDB5RWxrK2hoeStBaHk4QWhxNEFBY2Mrc0dLY1gySFNFNnl6aXE1M1h5VjN5eWl3bDE4N1M5WXNwYU9lV0cKSlVFd2NDaW9lc3BYTitHcnovbHFKdTJONC9iemFldkxNZjBWcnh4ckVURTBBcTZTeTFmekJXcXVXTW1WS21HYlRsZ0IvY2dJRUZjSwo5TU9rU3doRUVlRjVwdkF3OWhjQlZFdUdnMENOK1lhZUxZelp2SUZtQUlETzAyZWJCSlAxMW9tVG52aUphTEF5R3lrZkQxWE5kQjJmCmNaNmNzWmRNdThwbWdpV1Q0ZUtjdjN6Q1hqMWpyQm4zZ0RTTU9jNW1iQzhOV1RwNmpmU0lRUmd3WEp6ejF0enlsYTM1bWxjRFo1WUMKalRkQzlYY2lMYmU3eXRlQ1pXdWVpbnV1dXZkQ3JSOE1OSzZuaXllR0QvYjE3MWIwYk9GRk5wQ0NHN0RSWGZpaGs2VHhXdXBVRTJVYQp3UnMwVzV5REx1MncyNXp3Nm9kY3BwVExtUXFhczJIVGFNZzBFWVRMNE5OaGUzKzNNeFIzdWZ1Y2xPa29Zakg2OHUzZXMzZjdXdTRsCld1OUMzTFRkSGFsL085dHdQOVA0OWtqajI4azZvSiszaDFydnBWdHZKcXZmVFZUZjYydTQyMzkrTmY3OFJQaTMyZUNWbUp0a01KQVkKQUVDV01uVGZjYmhwYzY0RU4vOFVPWXNUbW40SlFJWDhoRUZRUWhCQXNJc2RBQkJGaHJ2RU1iUVFSOG9wYytXODZ3QkE1Y0twdXVSNAo2eWZUcDcrYmFmcDZ1dkc3eVpidmg1cy9HNjY1RTYrOEhxdTYyVjE2STFCK3cxOTVJMVExQjRlQ3ltK0VLMjkxVlMzRlNvZTdEMXA5CjIzbldEZmpZQmt6M1kzQ2RmSHdib244YnNtOExzdmVKVG5BYjJyTWJtVHJZbVN2R0xKYmdWMnZ3NHhoQkVGenAvMHNBQWs4R1JJaHEKWlY0MVg2ZWtxU0IzMk1pVTlaa3ZCdHZmN2FkMldjRTl2VkJKWVN0b1BERXdOL2RGdXIyS09GdEZtS3ZFTDFia3A5N3lBUWFhcjhLdgpBQVBWVWE0M3drNTlOMDdUYjV4aDNEeWJud3Ryb0sxVUVaWktNUXNuRVRPd0ZQcnErS0gyc1JMVXlMTjBGNHJMTEFDSUppWXlSWGkrCklML2FTRURrQ3ZBOFB2NGhnTEM0VGl3VlJlSGdBWStVTXJwZkt3YXZ1VXVuNkxFKzBNK2pBSG93emZUTEFKSkl1VmZZa1NiS2FnWGwKZWhsbTZnUmlQTi9EYlhodlJ3cGN6MDZoWjhBMzBrd0ZBRm85UTFscHBTMjAwSmNhYWNzTnRPdlYxT3VseE9YajJKbGoySmtUdU9VSwp6R0lGZXVrVVpxRWFOL2dtUmErVzhDSTZRWTlCRmpjckIyeWFRWWR1eUtsL21JVGJCQXlVY01CZlJOeXU2N0Zwd2xaVndLTHdHdVJPCm84eGtFS3EwSENDZVBJQ1lBRDFLRFYzNUFFQTB2SnhlUXpYdlJBM0FYUVhRa0Q0L0pMNFY5U0NQQXVoUkErMUNKNDhTWjZwcHQxdVkKZDM4Q29DYkc3VWNCQk5ja0l1TlBJUHZnbkJxaTl6QXU5Qnhiays4OGlRSUE0c253ZkRrQjBFZXNvQlFDOWFPZ3krUlVxUUtFRHM1UgpFRUFTQ2tlVVg4cVhCMUFOU1FzQTlIajdBR3pva0FjUWVCc1hBQVNyWng0QjBFbk1WQ3Q2V21ieEprT0tDYjgxRTlSbHVxempZVHRBCnp6Z3dVTlE1MGUyYWlEckdJemJ3T05YalNuYTdVMUYzSnVyTWRMbFRZWGNpNEk1N1BkMXVkOGh0TGdESVlkVUE3dWlNQ3FWZUNnQUUKSkFRTUJENERVcGovQWdCU21hUUtrd3FoMHAxQXhiWWhNM0RLSmc4ZytCUDRHWUFLRTJIZzZyamxhbVRiMVo1ZFZ3ZjJ0Y00zekVNQQpnY0FXeWNqUlU3akpLdW9pTEtCaC9BTUFsWkptRDZOei8xVUFnZDhMWEtrRUFkU2RCMUR2QVp6N0ZiN3MvdytBbEVwdUFVRGdmcHVyCkFNWmxYV09xbXZEaFV0eFl6UU1Belo5bS9nQWcyZ3dBVUJWNUNoaW9uREpUMEU4MWZiYUtObE5LbmppR3orNUREKzVBeERmbHVRUDAKc3gzWm5XL1REQUcwNlFHQXdvRHNKN0R1MTRRaW9ZWU5BR1FGcjliQTFodDRScFBFYmxBNFZWS25TbXpWQ25UNlh3U1FVTWtSaWJraQpHUU1qRXJTUkxBZlF2aDBZNzFaRVY4RXhRRG5BT2tBdEVFRG8va2NCdEFjVjI0V0N4ZVBnbVNCYmtBRVEyTWtQRzl5QkQyOUNlaC9yCmRHN0ZCd3Jyd25aMEFrdEY5Nk42RDZJSGptQUd3ZTM2Z3lrd2JQd1VLZFpFdFpLQXEvWHdGZHIwVXF0UlpqUEo3V1lGUU05RDkxaXQKYWhDTFJRVlNBSkJKcnpEcTVGcVZ0TEFFN0Q4SklBcWZXUUFRbnNjbTgxZ29QdU1acHFpTVlQa0JRRDBBUU5YVVZCMGpVODhjcVdlbQpOMnhwZDI1cGQ0UGs5MFAxQXdQdFJZVDNJcnFBZmc1ZTZYMm9uOEpjR0RqWTF4NHJBR2hiQndUUVFWUzhDUE1BUUNBUEFWU0NnL3FCClFXV09JNUtIT3hJSDJ1SGMyYjdPNkw3T3lKN084QUZrOUNEV1dVdFZ2aTRTZCtpNXZ3MEt6cVUxZGFQR3Fra256RFNjL3lvRUhBTUoKMVU2Q2VPcHl6cllSMjNNSjQ1dGhGYzR1cGVwRlBBMEVrRWdGQVpSL2R6TEZjZ2dnbnB4U0FCQkRCZ0JFd2d1SjRBZHhBUE9QQVZSQgpuS2doVFFBRE5kQ2dnVm9lR0dnRzVDeHp0cFcvVU1tWk9NRk1sa3FTMWFiaDJ1Qmc4M0NtY2pJQWlGWSs1eTZkY1JkUCtvckdQYVVUClRnQzQrbEZ2emJpM2F0eGRPZWFvRzdXM1phelBEQU1KMldxWDRKVzc0bmF3OGxhdzZsYWc4bmFnK25hdzRXYXdaajFZdGU2cnVPTXEKWDNkWDNQZlh2TnZUK1A1Z3l3ZVowemVueWtaVHU5M2R2eEVGTmxLNzlwTUh5Nms1Z0RPVWFNRHVjQ1U4MmtHZmFTQm9USGpOYWE4NwpHVFQzOTFnU1VldHcxREhRNC9FbC9QSnNDRHNidnJUU2RXRnQ4UFI2QW83eDNFMmNYaDgrczVZQ0FHcThsMnE2TzlKOEp3VlN2ejVjCmZXKzQ5cDNodG52Sk05Zjd6bC92UHIwVWZIblVpK3l4NHp4R2dsN0o0VXNrRlA1REFCM0ZRQUFWNHhjdmtMSm9nZlhYQWZSekNibTAKSEp1ZUN5NVVmQW1CTHNkZTRldlBrRE5WdExtanBMRWlZYVlsblR2NzVXVGpYMGRidnA0OCsrVkV5eGNEMVI4R2ErNUdxcTlIYTIvMgpsRjMzSFYrd2xTMjVheGJEbFhNOVpmUGg0c1ZBNldxdytsYTA0WHFzWnJxclBCUFlwUTl1RWZvZUkzb2Y2d2pCbmJSaDJRZTRXWWRuCjVGMm9OQUJRRVhheENIK2pFai9XeVEvNjlQOEJnQW9HQWdBQ0tRQW9iRkJGdEZLWFRxRFZzN1F5bWtUQ3VCclROditoKzlsL25rRXQKRDlMMVFvbUlMSlV5V1dJY1JzWjlnV2I3RVVENDVYTGNjZ0ZBSmJqRmN0d1NNRkJoRUtpdzNCb0E2QUxyZGh2N1poTWRMaE1EWUNwQwp6aDYrbGdNNTBqNWVnaHg5bHU1R2NkbFVMdUdYQU1UbEVaaE1MSW1NQmdEQzBaRGdtZUNyS2pram9KTUFBRVcxaWhoYzJBOFhXejFhCmJseVlZNEpGVGxaMWwxa1pOaWxDUnJsWEwzRnBoSFkxMzZ4aVNxVDh5Nnh3SStsNkNXbTFDRFY1NkZxaEoyOXNTM3Q4VjhjZ3VJQ1YKRWVjYktLdHR0SnRuYU5kYm1DdHRuSlY4QVVSaFA4aTVZZ0s0L1owNmlsNG9SYzZVSXVlT28yWXFzZkUzcVJxMWhOTmw0TWFNOGdLQQpIdFZQSGtDR1FaYys0ZFNCRERpME1iczZhbE9HTEhJQUlKZEphamFLMURvdUhQTFJzZFFhbGtiTlZQMEFJSTJhVGxEU2F1bm1IZWorCmJaZ0ljTThQZzBBRit2UnRSL1dEQUx2OEpCczc0WXFoQW9CcTZIY2VCZEFaempyOHZlUUJkQmovZHdCNkhOVy9FUUlvZGdRZmVvR2oKWVFnSkloRUtuSFlLQUJJclNBOEJWSERQRHdDaWl2T3pZRHdwRlpZQmljaE1JZTFSQU1IaEpiaVkvQjhBQ09nbm44bnFqaG11d1RjVQpsRTk2TGFtZ0lSMDE1eUtPMFc0bnlIaVBhd3djQUFCMU9jWWlkcEJNajNzMDVobnI4WXgwT1llRDluNmZQZTV6OVByZFlZL0Y3ekM0CmJGcW5UV3V4YWdGNkNnQlNHV1FBUTRWUzZBS0ExR1k0QWlUVHF6clYrbUpjWWpkdUhJNnJYWU5UWUQ4SEVLRFBnMVZnVi8yYnJ3YTMKWEk3dXZOSy85MXJ5SVlCK0dBU0MrMlBrSzZDWDRQQlBIa0J0N090bjJBOEFWTTlZTENMT0hFS04vNXc0djU2SEFOcUM3QUVBZWdJUgoyNC8xdmN5Vi8wOEFTQThOeFA4SmdGaHlLay9HUkhFVVowamhDdEo0dmhjaW5EMW9ZenlZUUdpa3o0SlBRZ1BSNEI4QzBFOEZCV0JvCnFvdzBBYTQ0aDlDd0VlTE96cjZONk1nbU5KencydFlKbXhNQ0NVRzBvUUhhUWx0eGtVMm8zcU1ZejZ0Q3NVQU5SNENzZXFaZHpWWlkKaGZ5UVJoQXlxdXhhczA1aDA0a05XczZ2QUVnbzRvZ2tkTHhJY0paaVBZVDE3Y1Q2NEgrVUJ4QlFUZ0ZBd0QyUEFLai9JWUIyb0NQYgowQ0dRWGRnb05CRGF2d25qZlFMajJrTDJiNlg1TitBczI5R0JIZWp3Ymt4a0x5WjZBTnR6R05kM0JOOS9ERDk0Qko4cUlneWN3dmNWCmtYdGE2RGFLVXFVM2lDdzZrZGtvdFpoa1ZyTWNRQWVLeHdZWEdNS0JScnNHSE1OQUEya3NSaFVBa0VFcis2OENpQ3JnRUlSMGpKQUIKQUVUaVVsRjh3b3Q4WGhQSFVzVnlWYkc4MWF4QUxTZmF3STAxOGVQTkFwZ05teEVla0MzdDNxM1hZTFpmOWU2NDV0dDF6Zjl3N0tkQQpuNGNCQU5yVjN2VVRBSlZqczJXNGtVY0JWSXhObjRTZHNGTW5rZWtqaU1FRDErTDdyc0xkTnZaMGhJQis5blRDK3ZaRFJGOHpYZC9PCkUyRWtsTmNzbEtmanNuTVpZMVhPWGpuaHFKeHlWc3k0eW1jOFpiT2Vram1ZNW9sZzdhUy9iTklGdnRvNmF2dHR3b2dJcW9sMkJWOHIKRUdoNFlqVlBsbThPbTE4REQxZUJQUW9nbWhRQzZHbW01RW1zYlFmUy93OEJWRTNNQVFNVitrRTM1dzFVQUZBTFk3cUZ2VnhQWFc0aQozMmpBelpYajBqV1NkTFVsV1JFTDFTUUR0VGx2MWFTM011ZXZHZStxSG90VVpmM0ZNNEhTU1gvVnVLZDJ4RjJUY1ZWbW5TVTVWOUdFCnEyYk1XVC9ocVYvd1Y5d01GSzhIU3RkODFiZjlEYmU4MWJkRDFYZTZhKzdFYSs3MFY5L3VBOWR5QUtQcU85N0s5OTJOSC9hZWZuZTgKZm5hcU9EaHlURDVZeWtrMmNFYXhzZ0duMjVYd2FSSitVMS9ZbFBEWlVuNVBNbXhKaCsyOVBVNTcwaXVhakNDWGUxNjZFMis3MzFmMwpUdjhMTjBZdTNNbzByNmZyNzZVYjMwNDMzUWVQU2NDZHhudVpscnVaczNlenJmZEdHdTZtMis0a24xN3VlMzQ4UXZGWmtCNjRzRnZICkZVdUZJaTZmSjJEeEJIekpEd0NLSDhWa2ZnRFFHSnB2L3lVQWVmV2lmOHdnSGRkdTRLbmtQQUFnaGdKN1RhQTdUODNVMHVaUGMyNDgKbFowLy8wVzY2ZnRrNDNlVFRkOU9ObjNXMS9wdW9QcW11eWhuTFVyYmFtZERkYXVoNmxWLzgzSlA4MVNzWXNWZnRScXVXbzZVTDBTQQpoTXJBd2MxbzZhMUkyM1M2S2o1d1VOTzFuZHdGS3o5Zys4UWVPQUxVRVFIWHRnUElCd0Nxd09jUXZJQlhwL3dQQVFSU0lFSUJRRkdqCkptS1EyMDE4bFlWalVETFZRZ1lxb0R4ek8xejVyN09YUDV3aHVsUXFMbUE1aXl4Q3Q4dllMOUh0bFlTWlN2d3NBQkFRVDJFRXFCZ0wKdDFBQUgxWVNWbXBJS3dCQWhZWjc1L0lBT3MyNTFjS0V5OFFBajRwUmMwYzdKbyswVHh4RFRQd0tnTGhDMHM4QmhLY0NBT0hBVjlVSwpabEF2N2RiSnUzVktXUHVjWDJRTzNOUHZORHdzc2dFcEFDaHFVVVhNU2dBZ24wSHExb29jR2tFQlFHOHhJclhFbFZPRTFST29pUU5YCmt0dmFnU2tqNEFxOXRRT2NQVWRLaURQZ0JiZlNiNTZtMzJvajNUblB1SGVhZWJzUmJrRUtTNzlodzJqVVNoRnBwUW8zWDRHWlA0bVoKcWNiSDM2S3BWV0ptUk04Q0FPcXpxQkoyTFVEUHNNdndNQVVBd1RqK0RrQStrNndBSUkyZXA5QXlId0pJcWFZQkFLbGtBRUEwb29wZQpBTkJXRERoMzkrYlRCNUtuVDZLUXphaStueHNJQkx4SmpwRm1meDFBTzM0QTBFWlUvREgwQXdBZHd3ZGU1cWlaSW1JZVFDd0FJSUdDCkNBQWtVVDRZQkFMb2tTbHBNZ1g1RVFCUmZ3S2dhcEoyTytKSEFHMjhHdjhsQUIxSFRaUmVtNlByd00yT2ROSmpUZ2IwNmFoeE11d0EKeWhucGRvRUE2OEFVR05UakFoSWFEZHV5SVVzR25pdXNneUZyekcrTnVFMFJyL1VoZ0t3Mm5jR3NBdlFwMUVGckRmTENMTmhEQUNrdApNb2xXMGFrMmxoR0g5NU5tdG1OZ0szWm9uYitmQWl1TS9RRDliTHdhM25URnMrbEtZTXZscmgyWCszNENvSHdsMEFNQTFkRHo4MS8vCkNFQ25DTk1Ia0dNL0o4NnY1N0VIQUFLMjZObUo3SDRDRWQrRDhiN0FVZnl2QWhCVFJoSElHRmllNGdJbFVrMmRhS0REamJIQkRXb3IKZmJwZ29DYkdYRDE5cHBZMkMvUURVa1diQWZRcHhvK0JuTUNtRHlBSFlTZG9aUC9qR0xqM082eDZCdGNqUkJmY0I2TUFJR1R3SVlCZQpFWWdFNnZ3SWtKNFpVSERFWGtuN2lQblNoQVBkYjVLNHRCYUQxS3IreFJvZ09BSWs1SWdsTklLWWY1WmlQb0wxQUFBQlp2MGNRQWN3CkF5RGc0Q0I2QUVnSWZHazNlQm5veUhaTUdBUWVvTUs3U2RHdFJEL1FUN0Z4cE5vN3NWTVkzSVdEMll1TDdNZDFIOFQxSE1ISGp4SDcKanhNU1J3bnBFdEpnRWFHL2hOcmJ5clJTMWNxSEFES1paR2F6SExnSDZzZW1ObGsxQnB2RzZ0QmE4Z2FDbjg4RHlLaURUWUFlQWtnbQpGNHJrUWdBZ3JvVDdLd0FpOFZoNEFTMC9Bc1FrYzBsWUVmNHR0ZVFGZmZBNXUvYzVtKzg1VytnNWE5ZnpsdTRmMHJWaFM3czdieURYCnBrN1hwZzQ0RHJTclBieW5QWHFvQXc3OG5FQU1udXdjQWpuZU9YZ0lNZkFrb245dlp4UzRaM3RIQU55cDdPM3NPWXhPbk1KbXl2RGoKUmNSMEtXbWtqSkFCRWlxa0dKczVpVW9lUXZmdDY0eUNKMi9yZ01ObGNQZVFUaDlReU43T3dBbXM4VFJkOUJhZmhSWFNVRExHWlN2Lwo5UzVGZGM1UW03UFc1Wnkxazc3OEVJdTNIRWhvMWxFMjdRWXBuM0pYVGJycmN1N21yS3N0N1R5YmRIYjROVGk3bEtVWEFDT0xOVXloCmxzbFZNZGd5bWxTSzVVaW9OQmtiVUowcHd5RDQrRGFxK0NEQnZoTmwyNEZ5YkVXNjh0dXlkb1BmTjNoSFZwTm1La216SU9DZ2hqeGIKUTVxcUpVODJVV2ZhbUF1blNabnp6T3V3ano0MVY4a1lLeU9OMTdLVzZnVkxUZnpoSnM5UVpUcFFQR1dzbVRWVmoxdUxScHpGTTlISwpVWFA1aExWb3hsRTg2UzRiOVZTbXZWVWpudW94VDJYV1ZUbm1xc2pCYjZGaTNsTzE0cXU2RmFoZEMxZXZCVUJxMW9NMTYyR1l0VWpOCm5UQlFVZlBOUU8xdGI5WDlRTzBIUGMxL1RMYXVaeHB5UTVYeFhwSE5Zbk01KzkzT2pOMDA2akFPQnl4ZE1aZXJ6ME9lN2tQTngxOWIKNlh2NlZ1TDArbUJMZnFycnpKMU0vZDFzdzcwUjRKN20rOG5tKzBOTjl3WWI3dzgyM0I5dXVwZXF1eGV1WFUrV3Z6dmFjaXZWZHFPSAoySzhrcVRoaWhZN0Rsd240VWlGUEtoUEtSVHkrV01SanM2ZzBvdlFwcHVzb01WR0VHUzdEOVJkVGMzWGtWS2ZRYjFCTERXcUZTVXUzCjZFa21CZCtsbFRyVUxOaEZSc2tQR2hSdXJjU3E1RG9OUW5qZDBrcmNHcmxmSTNYb3BIS1ZVQTR1REdKa2gxRFR3a3ljRVV6VnpTMDEKZjcxdytydk1zMTlNTlg4MVYvTmxwdkk5WC9sZHg4bWgyRTVCOTM1aThxU2l2N2czV0wwU0xWbHcxdDV5VkZ3UGx5K0ZxaGZEOVV2Ugo2c1VJT0s1WThsVXR1SUdLcXE5SHl4YWlSNFpEMnkyZVRRenZsbzdJbmpmNzRMQThjdXdnL25veFpyRzhjNjROTjQzaytzeG1ka3huCmpSc3RDWk5seUd3Y3R1cUhMTHBCSzZ4SEtXQ293S0NDRHdxellIR2RMR1NGSzVKY09wNWVUVktKc0V3VDU3VXhSL01uNCtmLzZUcm0KZXByUEpaZ1ZLSzRNU1dEem42T2FLbEVMc0IwK1pyVVdkYThKdXd4M1BFV3RWR1B1bDJLbnluQzNTL0ZybGRUVlJpNHNoVzZsckQzRgp2SGVPdXZvVTQ3MUc0bklkOFowVHlKWEQ2Tkc5aUtsZHlMNWp5RXdiM25tTnlXTEtDUVFSQmlNa2tJUTRnUXpERitHNUFyUlFndWZ3ClVReDJKNGRISUpBUUJDSVNSVVBSZUVTaGlLS1dVTHhhWHRRc2plb2tDWXMyNFZBTk9Zd0ptMm5BQ3B5aEczU3ErNjNxaE0wWXM1aGoKRnJnb0RBNFhXUlJCdmRpajRUc1ViSEJXNWFqWWw3amgrczc1Y3N6aWs0anN0aXNwT0JueFduQWJLcmtSRVh5eU0xYlNzVkpIVzY1agpUemN6NTg4UjN6L0x2bldPdW5pUnNWSUQxL1VzTkdEZkEySStpTHR6Z255M0hKR3I2c2hWWThZdmthUkdNZEpqZ1A5WHdtNGV0SmpCCjYwbDRyQ0Q1MG41bDBxdFAyTzBaVC9lUVBaU3d1WUNIdXAxOG40a1ZOc3RjT29IRktGRHJtRm9EVzZ0bnFaVVVrNW9oVjFQVUpwRk0KSnRHcFJXdzFyNDFtM0ljZTNJd1kzSW1Md2k2RjZNd1RWNGUzbzRkM1lSUDdPOVA3MnVPUGtSeGI4SzdObmQ3TnBPNG5TSU93MlNBaQoraGhxQ0Z5VGlvRStpZStlNWI3enRQQm1HMzM5S2ZISExieWxCczVDSTJ1NWtycThIemUxRVRlOEFSZmRpTzRCTklGOTlqQ0RqMk1HCmpoRmNyN0RFTERGSkxFUHpaRGl4akFnaWtaTWV1QWVHQVNKWDBFQ2tDanE0Vlh1NEVJd3RwTEw1dUxlNDBncWlFMXdDWVVlcmdpRVEKUFp2YTRjcjhYZTFKOEpNL0RMZmRlREFGVnRHUkxjSk9vc1d4Yk1BeTZqY2svWTVwdjIzT1k1MEsycWNqenBtb2U2cmJQZEhsemtVQQpmVnk1cUhzczZoN3RjbzEwT2ROZGpsVFltUWphK256bUhvOGg3RElHSFhxUFZXdTNhSUYxOUNhMTBxQ1FhV1Z5clZoblZCZ3Rhb05SCkNhS3pxTlJtaFVRbmx1bDVsK1QrSWtyNkJISCtGRzV5VC92d05uVC9ZeDJoUWx2MkxYQzFRWFE3eUpYSXRzdkJiVzhHUUxhK0VkeDYKS2JMOWpiNDlWMU5QZG93ZDdNd2RRazZjdWpKZWlwd3FRVTBVb1VlcnlETU5kTmc2dVpFR3Qxek02K2Y2MmZ4Y1dDMXo4U1J4YWg5bQo1T2ZFK2ZYczZBeEJSS0xpY0pvTTJiTVIyYjBmN1c2alcrUXFxbHBOTm1qSWV2ais0V3NNUW1BZ3E1Wm1OVHhpb0VjNklwbzBQQkNBCkQ0M3FBWUFrZVFDSkpMRGxLVjRzZVpYcmIyVk0xakh1TkRCWFdwaTVSdVljU0QxenRvNHhVMHVmcnFGTlZWSW5LeWdUeGJncDhPTTYKZ1JrL2lza2V4cVFQb0lmMm9oSzdPL3MyWThJZ1c5RWdYWVZzUThHVjhMc1E4ZDNJNkRaazhDRGU4VHhYSVZRd3dEbFdaeEFabERScAp5UEQ4WXV6Q2JQZUZFUWNscURKYXhFWUR6NlNEalJCTmFnZ2dFSzBTM21USzVWeUZUTW1YczNoS0JrMHFlcEd1UFVadzdzQUhkeE82CmRtQzd3Si9HYmx6M1htenNTVno4SUxiL01IYmdDQzV4R0Q5MGtERDBKSzUvSDY0WGZIVVhQcnFUQUJKNWpCVFpRdXZkZys4NWdBdnYKRUxpcUZzZHE3L2FXejJvUGEyTmJxUGFkT1BkK1F1UkpZdXdRcGU4a2VhQ1NPbGhLaTVmVDQ2ZVkwVk04LzBXcGs2cXg2QTFxZzFtZwpjQWswVHFuUnJqVGJ0Q2E3UWVjMnlmMG1VZERFam5yUUF4NWt2MFBzczdxTUpvZEJwekdySlJhbFNpMVRxcVF5aFZncWgwdkFCRkxZCkJaRXRZdk1rTEpDQ2dSZ2lKazNFS1BSQ0pBdVlCSDZoRVNJSFlBaElDS25qRUVKS1pMOE1OU0JIRGlxUXczTEVzTHg5V0hZdEticzYKTE4yd3RTTS9BdFFKR09RQ0I5czcvTHM3SW5zN3VnOGo0TFFYb004cEpPeitEQUIwdUROeG9ITmdENklMYUFZQ0NCRUVHQ29BcUJRMwpWZ0JRT2ZHQmZ2SUFTaDlISlErZ1kzc1JoUkVqQUNEWVBoSUFhR2VuZncvQ0R3QjBsaTYrd21jVEJEU01oSDVGejM3ZEl6cWQxRFJuCkRiVVQ5b3BwdU9DOGZBWThlaXBtODI3STF3WVZ5cUxyeDF6QVFLMFo1NHY5eGplN3RIZ25NQkNIcjJJS1ZVeVJraWxSc1BoeVBGdEIKWjhwWmJEbVpLY1YyQ01ndGRPVUJ2R2MzQmtvV2JyY0w3bDg3NDA5aU1rWEVtU3JxTW5pbmd2ZHJMWFdxbXB5cm9VelUwYVlhYUhDRApNT0Q2UnRwb0kyMmttVHJaUUpwb3BJeTFzY2ZyR2FsV3hWUXBMMXRqajdXbElvQkJaZVBteGdWRFpkWlpuM1ZYamJ0TEo5ekY0ODd5CnJCUG9wekxyS2MyNks3S2VpbEZYMmFpckpPY3FuWEtWejdrcmxpQ0Q0SGhQSVdzaEVHQ2c2bnlhMW5wcTF5TGw2LzdTTlYvVldyaDUKcmYvaVd2YUZ0ZW5YbDJLVTJWNWpwaXNZOC9pN0hmcGhEMjBtZEhrMWRHbTU3NVhyQTgvZUhqaXpuZ0Q2YWJrTHA3cE9yMlZhNy9TRApENXZmempTOVBWcDNmNlQrWHJMeExuaENYOHV0b1F2dng1NitrV2k5bFhoaHZ2LzNZUmRKS2RidzdId1pUU2poS3VVS3VVZ2g1WXQ1CmRKNlFMZWN5VlhTNjhCbUN1UlNack1VdDFlUG5hMGkzbXlqVFYyUlJuVUpoVkFtc09wN2JKTFFxbVM0dDEyZmtoU3owaUVYcTFYSTkKZW83WHhITWJPQjRUTTJTbmh4eVVMZ3ZEN3NwWHJjckpQQTJaSU5JOXErcXRuSnhwL1hiZzNIZUp4aSs2Vzc1TW52NWlxdlhEa2RNcgo5a3NMc2pxRjQ1TGU5clRZdXdVWk9DWDFjV1o5VnliMWxUTkR0VGNTRUVDci92b2J3YkxGWVBGeVY5V05udHFsRVBoazJYS2tZclduCmJubWdQamRVSHVrL0lnbnV4dGwzWDBudTZrdytpUjgrVGhvckl0K293Sys4VG91NURJNXVteWhxRmZiWVJIMTIyWUE5UHhkajB3L2IKVEFuYkF3QTlyTU10QUNoaFVRZk5DbzlhYkZHd05DcXlSazRXbUFYWEJzeVY3OFJmK05QYzc3K2NJOGVNRWhtQnBxUmloWnJ6ZEVjMQp2cjhldjFoSFdpNGhMQlFUMXNxSXMzQnpQZEtOQ3R4b2FlZDhOZlp1SGVGK0xlbEdNN2pmRlN5MkNhYk9pT2RycVpObmdiQXBTNmM2ClIwdUp1YTJ2dzgyUzluZUdXNGphVGo2VHhMbEdZbmNLVkh5V2dDUVFZWVZDdWtqRTRQRklJQUlCamNXa1VDa0VMQnFEcGw5bDhMRVMKS2RXa0FoSlZSbzI2WG9OK0FEakRybytialVNT2Q4cmp5ZmUvMWc2N2JBTldSNTlEMzJOUjlqcFVFWk1FYmpxaDVVWXNFbytHYTlNSgpCWHp1YjdtK09zcEs1ZVdidXp0U3Z5SEd0MStPYlNQRU43d1doMlBwVjJlUGRNSytTcTJFNjAzTXo5czRhNmVaczQyY3FUclNSMDh6ClA2akMzaTBpanpUaWxxdXVYcTlBemxaanN5V1l5VkpLOW5XdVRDZEIrN1hLb0o3WloxRWtiWWFVMHpEbzFZRWszZnFzMDVMeXlWSmUKZGRxbkczSXBCcHlTdUZQY1k1ZjMybzFkWnFYWEtIVmI1VG85VjY2aXEzVnNneDVldXF3YXRsSkdobFdpcWc2dW1uaUJhZCtENmRsTQpzUjFHeG5kMWR1M0E5VzRqOTI4aGh6YTB1eDdERFQxQjdkdUltOTVJeW01RVRlekc1SDV6MmJjRG4zNjhZL2h4YkdnL0pYbUNmTDJWCk4zK1dzblNCdFBvY2Qvb2krL1o1emp0bnVIZk9jZFpyaURjT29lWTJvN0lBUGR2d2lXMXdDVThQQkJDMjd3VEI5WHUyaEMwQjdrR0QKazA5QlAzOFBJR2lnQW9EQUFUQlFBVUQ1TFZFcEFFQnYvZ0FnMlAyNU1JdjBNd0RsTndLREFDcEY1WTVoSmk5enV3WTk1b3hmbXdoYQpScUsyMGFnOTF3WExnSEl4OTFpUEMwNkhkZjBVUUpuSWp3RHE5UmdqZVFCNVliOGZXTzVqTUd0VWVnQWdLUUNReHFRd21GVkFQM3JUCmp3Q1M2UG12U0QzSENFUEhDWE9saExsRHFORTkySFMrMHdRY2FvVzlrZkxiRWo4c0E5cDAyYlhwTGUvV3QwSTdydlR1dlRaOG9IUGsKTUhJVTVDQnEvREE2QjNJYzNBbVFGbXJvcTNYTUc4M3MyNDhDcUlXNVVzTllPRUdhMm92Ty9KdzR2eDRBb01jZkFBak9naFVBMUV5egpTbFUwdFlxcSt3RkFXcjNRb1ArZkFaQVlEdkl4OFdMUnF6ejNHZVo0TGYxbVBXTzVnVDVXUzVtckljOVhVMkNxU1BNVmhObFN3a3dKCmZoYm81eVIyNGhoMi9BaG03REEyZXdDYjNvOU83a0VORlVxZTRaQk1Qdm1Kc0o1OEhrdy9IU1M2bitmcitTb09BQkI0d1VZRG05Wm4KdXJEYWZXRTJXai9sdkJiWGFxd1NuWjRQQUdUOEFVRGdoUHdqZ0NSU2dRd0NpQzRXdnN6UUZCSHR1d25lUFJqdkhtdzRQMnpUZFlqUQpmWVRRYzR6VWU0SVVQMG51TzA3dVBrYUtIcVYwSGFhR0Q5R0NoMmorZzR6QVFZWnZOOHQ2bE84N3h2UWU0M2tPMmZ3TjE3TjFkM3RyCnI3dUtCbnFmdERpT0tlemxVaytsM0ZlckR0V3IvVTNhNExPYTRFdTYwUFBtNExNMjEyV3JtV05XcXkxaWhaM2xNRWhORnJuY28yVjEKV1ZBRDlrc1oxd3ZqcnFjbVhTOU9ocDZlRHI0ODVpSEVIRnFIeWE3WEduVktoVUg2U3dEaWlwa2duSHd6NkVjQlJPSXo4RHc2bHNmQQpDMWdnQ0NHbFhjOUdoZVRvaEF3ektFY1BLOUFwSlRLbEJ1bE1xeEVwRlFUUU5vUVhBQWdFSEFNQTdlbUk3RWYwSEVVT25rQkMvUlNoCmt1QVJIUDhJSUVRUUFBamtVUUNWRURNRkFKVVRNbkF1TEErZ1k3Q2xFbHd5dHJVZDlsQjZzSDlzcDI4WE1yQzcwM3NTYTdoSUYzWHcKMldRQkhTK2tkaWdZYnhrNXYrMlNYa3dvR3laTWNOUm4xcE4zajY5aUx2QkRaZlFEQTlYa2w0WUJCdFhsbkJkVDFqZWlPcHhUU2pkdwp1Um9JSUxtQ3hWVGltUW9xUzA3alNnbDBNZmFLZ05GSTFlL0JCUEtWN2JETHdsWlViQ2NtOFNRdWZad3dYa3lZcUtHTzE5RW5hbW01Ckt2Sm9KWG0waHBhcnBvNkRiNmVHTlZOTm5HOGl6NTltak5aVFJ1cklDK0JPcFprOVZzY2RxZWVQVndtelZicEVjNnluZGRRUFhrejEKcUtObXlGMlJndUlCMWdFZXFzNjZTclBPWXhsbjZaaW5aTlJkbkhVVlp4MUZZdzdBbzlJSlo5bWtxMm9GWE1YRDFUZEMrYm13Y05WYQpxT0p1QUxpbjhtWlBOVERRdldqdGZUaEtWSHNyMkh5N3UrMU92UG50dnVmdkQxeSszWWRjam5ZdVJ0NVk3WG5tVG0vemV1ejAya0RiCjJrREx2Y0dtZThQNXBKclgweTFyNlZiQW5mVkU0OTJoaHJ2cHhudVpwdnNqK1dWZnd3M3JzMDNyOGJNM2h5LzhJZlhjalI2TVhVdVcKc0ZSc1UvNHRKcER3UkdKZ1NLNVV3aEpKdUJJaFI4VGtDbDRscWh0eDBWckdTQVV0V1V1WWJDVWtMeW5jQmhYUDdXRHFGVFNMVXV3egppWHdHcVVjdENaakpQaDBmdk1rRFJrN1lMQWJIUVN0N01pUC84RjNIMGczTjNJVFlaeVB5QkoxVUFSN2pjand6TzFMM3QxempOOUdMCm42ZFBmNVZ0L1NiVjl2RmcvYjN1TjI3YnA3L3A2UjRmZlAvRDZNb2ZrbGR0OGRmbHV0c2ZlOUovTkx3eUVpNmFDYlVzZHpXdCtJdVgKM1NYTDRkcUZlT1Zpei9FYjBkTDVjTkY4b0dqQlg3RWNybC91UGowWFB6OGFQemZVK3lRN3VoTWRlN0lqZFFvOWQ0SjBzNGc4K3p0bQoxS1N4ZGRuNFVidWczNk5JK0RSeHB6cHUxOENGZFE0ekFOQkRBeFVxZ1FvQTZqRkpJeVpGeEtCMGEwVktGVU11bzRpMFhKSkgwYmJpCmUvclRzWlovbXYvZDIvMEVHeCtnOFpwSWRaNWhLc0xOVkdKeTFYaHdIcjk1aExKVVFadXVwYzBmUm84VkUxZEtjUE5WK05uOGhoZ3oKcDlsejlaU2xSdW83Wnhoclo5bTNtaG1yd0JDQURnY3hxWjBkdlR2YWh6ZDNCbXBwdHBlcEZMcVlDbTdwMkdJR1hQL0Y2eFR5c0d3RwpRaTRoQ3Jnb0RyT1RSZThVY0loVVlpZVJoV0J3c0FJdXhTUVhCdlhnKzlLbGZNWmVxeVFaMW9BclpjeXU3YllxczkzV2RNVFFiWlAxCk9uUXh1eEtrejZYcHRzb2pGcmxQSi9UclJWNnRRS3RBbVJTODE3azl4YVJieDl0ejRQeXdBUjE4NG1yUFkxZGllMURKVFZlZHV6cW4KRGlONlc5QUxyWmo1ZXZMTld1TFNVOHJaT3ZiMUMrelZpL2lGWnNiZGN0WlNJMmFpaFRSWmhjblc0R1pPWWVmQmllSVNVeWZqNHZ3Ngozb0JETldBUnA2emlqRk9aOHVvSHZmb1Jqem5uZFkzNFZDbWZNdWxSalFRMTZhQnN5Q3ROT0F4eHN6bG1WY0haVmF2WWJoT3BkVXlOCmdhblZNM1ZhaGtYTk1tamhSY0trNytEcnFjMVUxMjVTWmdQQi9oaTZmeXNsdUpYazJRUXVKN2dSZ0pYSGlQSGZFRkk3RVlNYk9tSmIKQ2NtdFZ3T0g4SERubWEzWXpMN095RjdDOERIQy9RYnVCK2VGTjE2UUxyMG9mUHNzNWIzblJiZmE2S3VuNlRkcVNFdEY1UG5kbUxIZgp3RHJsL28zSTJGWWtCTkFUbUhnUjBYbUpJK1NJSVlCNEN2d1AraUhMbEJSQUgyQzFCM2tFUUdJNW83QVFEQUNJSThBREFKV1JuRnM2Ckl2bFY1YkRtOTRuT0J3QUM3bndJb01JVVdCRjI4aUJxNGtWR1Y3ZlROaHBRSlVMNjRXNXpzc2MwMXUwWTczR094bHdqdmE1MHpKbnUKZ1gwUmN4SFhUd0FFeTREOGxrY0JCS2ZBckZvZ0hyVkJXUUNRMmdqcm9Bc0JBRktaNUFCQUlnUC9CWUg5QUtidkVHNjZncnhZako4LwpUcGlCTzVXaVlHOUo4TXFmeUsrN2ZCd0JOK2JMbDNLN05sMTFiN3pzMzNJNXV1ZGE0Z0FpZmFnejN3c1JQd1lvQUV4UVNWd0F0d2ROCmxOWDhXc2diRHdGMG1yVmFBTkJ4NHVRZVZQcm54UG4xYkVNQ0FNRTV5a0poelVaMHp6Nk10NUZtRlNucFNqVlZyNlVZZE1BVDNEeUEKdUJZZDQ1Y0J4UGtSUUNxT1hNbVJLdk1Ha25JQmdBaGk0ZTk1anJQTWJCMXR0WmEyV0VmTjFsRmg2US80RzYraExsU1I1d0NBZ0g2SwpjVE1uQ1dQSGNYRHM1eEEyQ2JJZk03UWJOYkN6czI5TFp4ZGNxNWpYejNaVUY4Z09OS0FQM0E1c0d5YXlCUlhhaC9jK3pUVnpsQUtECmdRR0hQSzI4OXJTaDZXYm8vR3dZblBxZUhUV0tQWEtEN2tjQUFmMDhDaUM1V0NTU3NvUUtCbFBDZTRPbmJCRll5MFdlVXE2alV1eXQKa3ZocUpONTZlYUJaR1d4VEI4OW93MmQxa1RNRzd4bURHK1MweVhYYTRqeGpkWjJ4NStPMnZPVHpQdVB4dE1XQ3RXUGRMV3ZKeXBWUQoyYXEzNWtZM3VNYWRUemgvRjNlLzJ1dDhmY0J4YWREMjFxRDF0UUZUZThLQ0hMYWlFZ1pxV0NhejhuUm1yc3JPRlhsMWpMQUJOZUI4CmRkUjNZU2JjUEIrcFc0elVMb1JQejBiT3pFUXU1bnlYa2k1bTJHcXc2aTE2cFVZdkt3QklycFFBQXoyY0F1T0lPVkEvRWdpZy9CVFkKQXdEQktUQStEY2VuWW9Bb0JBeWNpSWtRVTY4YTJJaVFESk1RWTRha0R3Q1UxblZtOUIwWmZmdUk4VWNBYlVhNENnRGFpK2pLQTJqZwpCREp4Q2pWWWhCNENqK0FZN2hpUGlPOUdoQUI5dHJYN2Z4d0J3cVh6QUVxVms5SVZCUUFSTW1XRTdFbHM2Z2h5Y0U5KytPZEhBSFY2CklZQlF2ajBvZHduTzhDeGRpT1F4YVFJNkpUOEloRkF5MjYzc1Y3ckViU09hcWhscnhZeWo4Z0dBZ3JBVU9xK2ZCMk5DMHg2NFhtelMKWFR6ckJnWjZLbW45ZmEvK1drQUdyejBhbGxoS0o2c0lMQ1dOTDZNSnBFU0dsSGhWTEdobVdRL2lJM3ZRb1owb1dOQytCUm5jaFkwZQpJUXlVVWpMVnRORnF5aGpRVHkxMHowUWhWWlJjSlhtOG1KUnFnRFhSMDdYTVZBVTNYY1dmcUtZUG51ZjN2eWpLdG5ER2EvaVpDcTczCnJNN3dTdHg0YmxoVE4rcHNIUS9VallYS3gvd2xJNDdTdExraWF5a2JkNThjOHhhTmVvdEhQRVVqVGpoVGxyR0RnQ2VVWngybEU1N3kKYVgvbGZCQld0TndLVnQ0SmxxM0J4V0tsdDd2TDcwU3FnSXB1KzJ2dUJNQmpkYjZBdXZGR3JHbXR0K1YrdkpDMmU0T243d3kxM2hpcwplWHVvOXY1UTNkM0JodlhoQjdtYmhIbG50T0YrQm53SUdOUjJiK2owL1ZUTDNWVERXdXJzZXZ6WjY4N21keE5QZnpOeDhaTWt0c2ZDCjFMSEZRbzJjYjVOd2xDcWhSTUVWYW9WcWVBdkJFOGhGSERiYnJuVHFFVG8vOEc0Sk9ZMTBERE5zUVl6Y0VlMmhEUTB6WFE2aVZjZUcKdmEwMU1yOUI2VE94WEhwbWwxTVlNdlA4T2ttWFNSY3dDSWU2Mk8vZk4zLzhuZTNyRDlWM3AyV0RjYlVnb25obEpkNzZ6VlRiTjcxbgpQc3lkKytQTXVVK256MzQ4WFBkZXBPeW05YTFKemZxN3c5LzlxZWQvKzlid3IzK04zTDZmakdXMW4veVQ3ZE4vdGsrdUIxK2VOcDJaCmMxWXNCY3BYdXVzV3V1dm5JeVdMa1VNM3U2dVhlNnRYWStVM3dxV3IzdEpGWi9XOHEzbkJkMzR4VXBMMUg3ZEYyMlNacDNtajViaHgKZ0kvWCtFbTkwUkN6bVdKR2ZaL0oyRzgxeDJ6NlBsaUFva3ZaTklWS29FZVhneFgyeEFBK2lKcEFsRjY5VEEzT2huS21Tc05UR2tXWApZdHJLRHhOdC83ejh6TDhzWFpsMHlxWE1EaGJ4SlJyMUdPbEdOV081RExsUWpiN1ZRRjArMlRGUlI3NVZTeGsvVEZrOVNsZ3NJNjdXCndEWGtLMmZvaTIyVWxhYzRmM3lCZXZkcDJwMVd5dnZWOU5WUzV0cFI4dTN0eU5qbUsrbk42SGdKMGZWN25vb2k1ZE1FVkxqZnVCVGgKN1JITVRUbWpZZGJLb2p2b0l4dTAxeFpuUGJPVFRrem5hUnpoS285SFVVczRKaW5IbytFc2o3cisvSEZ5ZmNuNGgzdSt6ei9vWDVxMApUbVhVZjN5NysvNU5UM1pRTkpNMVR2YTd3eVpSeENJTm14UUJ2VFJvVm5sMFVydFNZTmFTbFRMaGE2Um9PZlhtVHR6VTNvN2tYbVI2CkE3aWlYTzNhU3U3ZWNObmR3b29yMDVtWDBkTWkxNlFudnZ3V2Y3cUp2bnBOczlJL2xhUloraG9vWS9YMDkyR1JPM0dtaUxoUWhydGQKaEpsdkpFYXZVaFJ5TGlWb3AvUmE3TDA2VWRMS3picTFLYmRsMEdNR1AvOVJqMlhFWngveFc0ZWN6cFRmbC9Db2h6ektJYmVoMXl3TgpHZUNMOU5zbERwc1EwTWRnWVlOb2pReTltYU0yczRVU0lyaXo1eG01WjduV0hlaUJqZGpVSnZ6TUUramdidXdJVU10bVRQOFczT2hXClhHSUwrQXcrdEEyVmZKd1EyMDRkMm9GSmI4UVBiQ0VON2J3V1BZaEtsOElHdmwvVWN6K3FaZDl2NVg3OGxPejJhZTdxV2Q2dEZ0Yk4KVXRMTUlVSnFPNlovR3k2ekJaUGFpaHZZaG9vQkFHM0c5cGFRSEc5eGhiQVB1QXpOVnhLa1NoSklYajhVdVlyNkk0REFoeEJBY0JicwpVUUN4aFBnM09KSlNvbU16QWdKb0t3STJPd1lBMnR3Ukx3RG9RT2Zvb3dBcXdVd2ZSRTJkby9YNjNaNkpvRElUVUk2RWpMbWdianJxCkJJSDlvTHVkRUVBeFp6YnFtQXpEUVNBQW9HekVDV2ZCSXE0Q2dPSmVVNWZiR0hJYWZIYXR5d1o3SGhvdGFnQWd1VTRtMDRsVkJobWsKajFFQm9qVXJGU2E1VkM4UkdJVVh1WlpkcUo3OTZJa1N3a0lwY2JHVXNud0NOM2tZbTkyUFR1L3BITnpSMGIrMUEyNWRYTURRSm9SLwo0OVhneHJmQ205K003YjR5ZEtBamV3eVpPNDZhT0lJZU9ZWWFMY05QMVZJV0dxaExUWXlGL0NZU2M2MmNGZmpUNXR3QUFHcGlMbGZSCjU0OFJKbllqVXo4bnpxOEgzT1VDQUcxRzlSVnVkemVpZW5lanZUVlVPMWZCa0dzWWVpME5SS2ZuYWcxOEFDQ3JudmxMQUNvWVNBOFgKZ3NHZTR3OEFwSUFOZUhreU9oR3F3bnlPbWF5andxMVBheWtqdGJReEdIQXZUWitxb1UxVlVTYktTT0FITlg2Y01ISVVsejZNSFQ2RQpIVDZDVDRGMzBRSGM4SDdNNEJaTXp4WnNkQnNHSkxJTkc5Nk9DUmF5R1Q4Y0FiQ2FBQUNBQUVsRVFWU3dpOUM3QTl1MUQrYy95elpUCjVFSzFucUV4c2hRMjd1VWhWZVYxWjl1c3QzalYwenp2SVBmbzdIcUpVZjlUQUNrVWhSRWdNUnl2a2pONE1qWkdLWG5kYWZwZDJQbEsKd1BwcTFQTDdidk9sSHZNYk1kUGx1T2xxditsYXd0ZythT29ZMXNHa3RDRHRHVzNIaUE1bVZBdkVnRStiTzBac0w2OEdXdGJDelhlNgp5aGY5cGRjalZhdk9sbm5iYnhmY1YrZmRWeWRON1JOYWJFNUR5cW12VFNvd09UaytwOEJscGFSK0lkc240UGhrakM3RHF4bm55NlBlCnA2WkNaMmFqclhPOXJUT3hzNU85NTNMZHpiUFJzMU9STTFPQkN6bjMxWVJWNHRFYmpVcmREeU5BQlFBOUxJSUdBSUw2a1RBZjdBVW0KaGdDaUNDR0E4RUlxVmtnckFJZ2taQUZVZE9vNTZJQU0zU2RDSmNTZFE3S09sT1p5UnZ0RzF2VHFxUG1WTWZPR2JlMGU0SjZ0SGE1OApQRHZiSVlDZTdJd2RReVZPNXZWVEFGQitDN0Q0L283ZUFvQ0FrM1lnQXZ1UTNZY3gvUkJBK0N6VUR6bFRTY3BVRWtZQWc4b0ltUk5ZCjhFYzdzS01ERHY5czdvQWJpQUQ5YkVaNGRuUjZkcVA5KzFDdWNvTHVCYm9BdzZYVGVUUXFuMFlRMG5FeUpsWkZ1K3prUGR1dmFCblYKMTAxWWFpYWRzRFBRdEw5NktnK2dXUytzQ3ByendzR2hHVS9aTk9SUnpZUWI3cUk2WW50bTJQQmFWSUcyOHVsS0prVkhaYW9ZZkNtZApLNkhnRmVTWFpOeEt0bTR2d2JtUEhOcU5EK3pBQmJaandudXgzVWZ4ZzZYNGRDVit0SlkyVzB1ZnJtZk9OckhtR3hnenRlU0pPc3BrCkkzMm1nVG5WaUorclFXWHFXY2tLTml6V3V5VHY5NHg2aFpIZWk3Z29QdEF0VFJuSWRyVjhSTXBib2Z5dTM5Q1MwVmVuemFWWlorbVkKcTNURVZKWTFsbzQ2VG82NEh3ei9aSUIrbkNVcFIxbmFtWS85Vk1vT1NUVHVnbjJQRnIzbDEzMlZ0d05WZDRMbGQwUGxhMEZ3WEhNegpVSDhuVXIvZVUzdTN0L3BlWCtOOXVKNnI5YzVBNjgyK3RwdUowN2ZUcldzakxldWo5ZmNnZDVyV2hodnZESUhIK3J1RHdFUDVZdWRVCjQ5c2pnRUZOOTdPdGQ0Y3YzdTU5OFZibzFacys4ZHNjMzd2cXQ3Nk12ZkxWK0l2ZnpIU2tReUlwVHk0d3lBUUNLWWV2RWNxVmZJRk8KS3BEeDJId21XOEpUaU9XcXU1K3laejdRdGl1RzIzVjlVNStvMXI5aERVd2IzdnRLZHZjajdmVzdpc2xacWRXRUQvbVljOVBhNFFScgplSWc1T2E3b0QvTzlPbmFYV2RsbEUyY1RrcSsvNlByVHA3cHZ2bFArNVF2dk81OW51Ui8xbmY4MGVmcnozT2xQKzl1K0dHLzVOUFhjClo2TnQ3eVZMN25oL2U5TXVUZXI3QndKLytjNzdsKy84MzM4Vy9MZXZoei85dk91RDd5T2ZmdUg3M3orTHBkNTJ2am1yS1Y0TTFOOGMKcnArUGxpMjRLbTkxMVN6QXBXRmxpNkdTcFdEcGFyQjhOVkN4NHExYzhGYk5lWXJXZy9YVFFjUjhGem5udjZoTkZLTnZ2RVJPYWJUYwpnRTdRYjFKbXJJYVUxZFJ2TThTZGNPVVJBTkN3WFRmb2VKQ0VYZHR2MS9UWjFIR3JLbVpYaHZVU3YxWU1mR0JXQ2VVS2xreEsxSXB3ClFwdTg2dTNvMDM5WmZ1NWZWbC8rT0dhT3lsSXhkV1RVY0k2ZE8vN0d4R3VpQ2ZkZ1VoR2Vyc1F1bFJMZXIwTXRuMEl0SDJ0ZkxzT3QKMVZEWHdHMWlMV1htREJ2Y0FZTnI3ZEo1N3NvNTJvM251RFBOdUpteWp2RnFSbnpQbFlFajdjcFhwQTZVV0FEb3cyUmNWY2pSSTFuRApoeC8xLy9XYnpKKy9Tdjd0dS9Ua3FIRDlwdlcvL2RQNDdSVzdWdjZ5emM0dzZNaytCNjgvSXZjWmNhbGUrcmVmaGY3OGxmZnJyN3gvCi9xYjdUNTkzZi9WWjVDL2Z4YjcvdGdjY2YvdGw0cFA3aVV4TU5wZDJqQ1hNUGhNajR1QjFlZmp4a0RUaVVQR2w0cGNvcmliS3hLSDIKN1BaWEIvZGVUZXhGT3paZWdqdXZiWG9sUkxRbHYvZy9VcmZYUjc3NHpQQS8vaGJNekU1Zm9kM09MaVQvNzMrTHYvL3g1RlhWVERQagpmaEZwdWJoejdnSjNxaEkzZmZoYTdnek5oK2J6cEdLNlZVdnJOcHY2cmVxc3k1QzJtVE5CdytTZ09odFRKRHc2SUo2SlB0MXcySkFJCkdRZTdCY21JTkc3WEpaenFIcnMyWkpFNzlBS1BUV1l5OHRWYWhrSk5NNWg1ZWhPL2IxeVN6RWtkVnBKRWh6YU8rQzVLdEcxY3R6Q2kKZVZZMHVoc3p2NDNWQndDMG96MTJnbTdhMHhIOERYbHc1NVhCbmNqd0JrVHZsc3RkZTBteERiamtCbkx2ZVhIOExIUGdaVjZ1UTd2OAp1bXoyQmRGcUcvZkdhZkc3amRUcmpld1BLem52N1Nkbk4zVDR0K0tHSGtmMGI4SDBia1hGSDhjTWJNSEZ5aW4ycTN6d3g0TVh5NUJjCkpSSHFSMFVHeWV1SENsNWtBVUFLY0p6M0VERFF3NFZnd0VDUEFtZ1RBZzRzL1RxQVNwRlRSOUF6RFpSaGt6TThIVkJPK0pTNW9HMCsKWUpxTzJPWkREcERwaUdNczVzemtBWlNMT0FDQXhydGNCUU5sSXE1a3lESG90OEl5SUxjcDdOUUg3RHEzWFdPemFVeG1OVndKcjVNRApBQ24xVXJWUkRqN1VtQlJxczBKdWxFa01FcjVSZkk1ajJZYnEzb0VjT1lJWlA0R2JMYUVzbDVNWHkwbXpwWEM1MytSeDNOZ1JiUFlnCk92TWthaGg0YUJleWZ5ZGlZR2Y3ME43MnpBSEUrRkhVVEJGdURzaXBETDlTVHJwZVJidGVSVitxWkM3VnNaY2JlTXYxN01XZkFLZ1MKMEJtZjI5R1pmS1Jmem44eWtTZVF2ZUMyWVVjbkJOQW1jSUFKbHBNZFREbExwbVhyZERTZGhtclFzM1Y2dmw0SDBNUCtqd0RFL2dGQQo3QUtBOHZzUU1DaFM5bHNDL1FWbVAvajdyU0pQMVZCSDYyaFRNQXg0S1NtVUFUMm9BYUxNblNST0hjZFBITU9QSFNWa2orQkhEbUdUCkI5QkRXL0c5SU52d1BiRGxHeUc4QXgvY1FmQ0RiTVYxN1NNRTloTThSeWp1QzN3alNjbFg2cWxhTTFObTRXSjZaT1hMeG9ZNVIvV2kKcDJiWjlXYlM1TkFyQ2dBeWFDQ0E5R3BCZnZkV1dBU2RCeEFQQUVnZ3A5Sk1iSHlmaWpCdUlJMnA4T1A1NUJTRUNUbGhRa3FlQkJHVApwNFRna1RoVmlCQ0VNQ2tBd1U4SndIUHdXZkhWQ2ZrTDY5YWFXNWJ5QlF0Y0FYMDlVcnJncUYxeW5idmxlWGJkOSt4dDIwdEx1c3V6CkdsUk9qUi9YRXJJcVRGWjVkVno1WmxaemFkRDBjc3B6ZnFycjRuVDQvRXhYMjF4UHkzeHYwM3hmNDF5OGFiYTNlYWFuZWlYYU9oczUKUCtWL1pod0NpT2ZWNll3cXRlNUhBQldtd0I2T0FCVUFCUFJUQUJBMUR5QVFuSWlHRmVkWGdRbFlSQUViSEtBMEhMUkxoaGlRdFE4cQpMeWZWcjQvb2ZqdHVmbmJTY203S2VtYmF2bUY3aHhka0c4SU5BQVF3dEtzanNCOFJQZFRaZXh3OStDaUE4bHVBeGZlMXh3Q0FBSDBBCmdIWjJCdmVodW81Z0I0cndtVExDYUFVeERmUlRSWVNwelBlRFBvNGRlaElSMzQ0SUF2MFV0b0tISllkNUFPMUYrUTlnWERWRS9lOFkKUWl5SFR1VlRLQUlhU1VRbmlaazRLUldoWTE3eWlwN3ZWN1NONkdwejFzb3BKNng5ZmpqOE0rY3RtWU9yd3dvQXFwdnlBZ0JWNUp6bApFODdhY2NmNVllTXJFY1ZWcHdobllsRFVUSnFNU1ZJenJwaTU1MjJTTW9QK2tNSzVoeGZZeVlaTCtMYVFJcnVKOGFPRWREbDV1bzY4ClVFMmZyV0hNTkxCbVc5aXpyY3lwWmxxMmpaNDl4eHcvejg1ZVVjYzY5YmEzdEgyTnhPeXp2SXhsMlBIUmQ0S3VXeXAxbDJKOHpYejkKSTFsbVdUTjJUeHRlcE1raW1qZEcrQmNISlEwcFMvV1lwM3pVVXBZeGxJOVlpNU5PT0NDVXNZTUEvWlRtQXdCVW5uS1dwcUdIaXRLMgpvaEZiMFppamRNb0ZTNlFYZldVMzNFQS9kZXRkOWV1OTlldDl0V3NETld1RDFldkp1bmVUVFc4bkFXWE8zRTZldTVWdXU1TnBYTS9VCjM4MjByTUVKcjVhMVpNdjZVTk85NGNaM2hocmVINjc5WVBqMGVrL0x2VVREL1V6OWV2cnN6WjYzYnJ0RTkvWDI5MVhUWDlKdi9WSEcKK0RMMjVpZmpMMzA5OTlhOWhNMG4xMHJGV2hVYi9PRm9CUmFiUnBWSnFrYkhoQjRmVTZua1d6MmFEejZuZi9JTlA1N3pSQ2JNOTcragpmL2hYOHQzUExYZStKdC84akxmMkZmdld4NnhFRGp0emkvYng5L3c3SDVJLy9GcjgrVGVXKzJ1VzZaUW1FNU5uZWtVcjg5cXYvOVQ5Ci9jZjJQLy9aT3ZPbFUvZFY0dExuc1lzZjlaLy9hT3owbDdteTd4T05uM1UvKzhGUTNWcXNZY1VRK3REOTRRZmhoVFgvUjUrNnYvOWIKNzVkZmhmLzBWZlNiUDhXLytWUC9kNTlILy9aWjVOdXZ2RVAzUE5jV1BNVnpuaFBMbnZwbFg5dDhFTnhHMUM3RC9rREFRTVVMUVJCdwpVTDRBYzNMRlh6b1Z1ckRnL08yaTduUWlYR1VjdithTUplWTFRK084NlRIRlhGeVpkVW9URGxXL0c3Wld5ampOU1ljZTVDR0FCbXdRClFDQlJpeUppa0hxTllwOVI0Vk5MdFNxbXlVcExob1YrcC9DbFdldjV6OGQrLzVlVlYvOTkydkgxMEw5OU0vSHR2MlQ2Y2ptOGJIaGsKL3ViLzlkK0hWdS8zbnFhTm4raTg5VEp2bUtESVh1SXQxR01td2ZteFFiUlN6NzdWUXIzVlNwcXRFTDNmUUY5RWFZYVM4N25SbWJtdQoxTGdyTjNtTzZQVU0rVzc5WVdwd1dEMC9ZWjVKNnNiajh2LzJwNmwvL2lMejV5K3puLzl4NE05ZnBiLytiT2k3TDFQZmZwSDg1dlBVCiszZTd2djVtWUhYRmNQKzIreTkvU3QxYnRVK09DRDU2ei8yMzcrUGZmQlVBRFAzTHR3TWdYMzBXL3ZMVDBMZGY5bjM5V2VMYkw2TWYKdk8zNjg1ZUpQMzNTLy9ZZHovcE4yOXlrNU1QM1BKOTlwQmpNZU40VXBFbk8zcjRWNTlNQzc4R09xRy9lN0p5TEd4TmhmeTdBTmN2Lwo4RlgzdjM0MzhOKy9qMzd6VmVTdi96S3hOSkg3NjNkZC8vNjEvMzk4bnd1bXh1dFFzeTlMaG9NREl6UDN4OWpkODhYbzI0M1lucmVZCk5MYVE2akpJL0M1Q3Y0K2ZjaG9HekpyNUVkVW5uNmh2MzVZbWU3VXJjL0tQUDFhdDM1ZXQzVmQ4OUtYOC9qMUx6S01CdjUyQVF4angKU08xR3VzUENkTmpaUFRHVk55QlVhWEZXTGV2enYrai8rZi9VTEV6amh4TFh2dnozd0kwL1dWWS84ZjYvL3c4N3NCcmRSdTNiZ0k4ZApRVVc0UWYva1YyNjYzN2NmMzYvS3l2dmUwU09OYmx2UzY3aHVQc1lJYmVvY285bkhodTk2ZXZvU0gzN3MvUFNmcEhyZitLdmNwYlBNCkQzN0hHMmtoM3ptSmUvOEFmV1VUWVdBVGJ1RHhqcDVkWkxpKzdBbHNZaXV1dTVwcTd4RHdoVktjUkk3aXFhQis1R29LaUVJRDlmTmoKSGdHUUJKWUJ3WVZnNENZTkFPaDFycVNFQkFFRWQ1aUhMWXk3SDg4RGFCc2lVUURRRWRSa0FVQW5NVE93SFNWbXRnS2ZrUm9pT1o4cwoyNjN0SFE3M0p0eXBtSFV5WWwwS09SZkN6c2x1WjdiSE1kYnRuQXovQ0tEOFJKZzdsUWZRZ05jYzg1Z2pMa01CUUxBTXlLclNtNVFxCkF4d0JVaGdnZ0lCK0hnVVFUeTl0WlpwaHI1ck80ZDJJNUFIVXlGSGlWQkY1cGhxY1FtR3Y4TVVxNm1JbFpiNkNQRmRHbmkwbHpaeksKcDRnOFgweGFCQ2toTDVTRHIxTG5tL0czbXltMzZ4bkwxY3k1ZXZZOHNNNVoycDJMdFB0dDNOVUNnRnBacTQyTXBRcnE3Q0g4K0hiRQo4TTk4OHg4bUNnQUVlTG96ditMNENVeDhHenBVVEhJQnNraDFYQUFnZzRZTUFLUTNDUElBZ3UyVi96R0FkT3lIQUZLcDJYa0FzWUNCClJIS0JRTWtBMTVlclF2VUZabmNOS1FjQVZNc1liMlNzTkRGWEcxbkxEY3lsZXNaOEFVRGxsUEZpOGt3UmFmSWtZZXdFSVhNY1ZsQWwKanVIN2p1Sjc5NUNDZXltQko2bUJRMHovRVhiZ0pNOWZKUFFYaS95VlNuK3p5dG1tdFowenVpNVpMU3l6UUdHa2FVMGNwWW5QREVtcQpsN1MxODdiR09VL1ZrdWVwVVpQU3JnSUFNdWdnZ0lCK0hnV1FSQ29ReXZnQ0dkd1FubVdoVXhKOHlxU1FubU5USjVYVVNUbGxRa2FaCmtKSW1KS1FKRVdsU1FKemc1NDhseEp3WWhEQXVJbzZKQ0tOQ2ZGYUFuUkMxandsZm0xVzlkTS9aZU10V05LY3ZtYmVYTEx0TFZzT2wKTndJbGQveVY3NGRyUHdxM3ZCOThkajN3dTJYUG16UHVOM0wyVnlkdEw4eTZucG4xUHowUmFabnBLMThaYXAzdGFwN3JicGlQMVMzRQphaGZCWTNmRFFxUnhJZlRDcU8rTnBLZXozNFh2ZFRBaVpwRkhyN0NxWlNiRkw5VUFBZjJ3WU5nTUNRdUVCZzNFSklrWU9Ba0RLMkVoCnhTeVVrSTBXY2RvbG5Nc0d3Uld2OHZXTTRkVVIwOHZqNXVlbXJPZG43YzN6anZwRlYvV2llOE1PaEE5a2U2Y0hHQWhJYURkYzF0RjkKQk5WM0FwTW93ZzRXWTJCT29RYU9JL3NPSW1MN09yckJFd0NBUUFDQTlxT2pSM0dKSW53S0FLaVNsSG9Jb0NyeVNDa0pBbWdmb2plLwo4Z3MyVU1xM1VmSUNaaFVBZEFqdGFDRHFYbWNLY1Z3YW1VOG04a2tFQVJWOEEwZ3BIU05ub0xXY043eUNweE9LaG5GOTFaU3Rhc3BlCk9RWHJvQXNMNHd2NmdSNkNNSEpWVGJvckp6d1ZFOTZLQ1UvOW1PdnNzT1haUG4yN25RUEh2clRjRHBma2QzM2EweVBXdW15Z0xoT3IKSGtyOGY2emRkMXhiVjRMdy9UeVRTUzlUTXBQTVRKcHRlaS91SlltVE9KbVVTVEpKN05qMGprQ2dnbm92b0M0aENUVWtJVkFCaVE0cQo5T1p1WTV2ZVFRTFJPM2FTbVozZGZmZDVubjNQUlk2VG5abmQ5NS8zOC9sOTlMbGNJeXlEN2Z2VnVlZmVjMGhmOW9wRTh5Sk4rU0phCi9YSnUrUUZZZFJDc0tUaTNNU0svT1JyUmNDUy85aFN5K2h5MjlrT2M3UnphZklGVllodWtkTS9tS2x0VkY0dDFLUTJGNHJIOHlvbmMKc2xHeWRSTGptTVEzOThQYkIvUHMxekhhYXFTdWpsQnloWkpYVC96QXhJd3hDd0xOaFlGVnpOQnFmcWhONGwvSkJmbFZjUTlWL3BjQwpiRUJDL0lOVjNBT1ZIUEI0RUNDcFJoaFFKdzVva3dWM0tzSjZkYUY5aHVEZTh1RExwdkRyMEZnT2tGRFlOWFBFamNyd216Ym8zTloxCmErUTFTL1JWeStITFZVQS9NVGV0TWYzV21JR3E2SkdxbUZGcnpHaGw3RzF6N0hYRHlUN2xIM3VGR2RkWVJmZklsZ2xzeXpTcWR3N3AKdUZPQTdGZC9NbEJ6ZHFyMmM2OU43dUN3bUFnNkdVM0ZFK2s0UEpPYTNPek1HNXFsM2hpaHRWMWxYcjdMdXpLYTF6b0p0M2xvaGdWSwpwWnRVTzFyUXU0QnRuY3Jvbm9WMXoyWDF6ZVYxVCtUZjlLQnZMV1JmY3lmYzhpUU56T0NtWjFUZWFadDMwdUtlTEp1WjBrMU1saTFNCmxQYlB5UkZENG1ORDVTY0c5R2VIREVjbWJOR2oxZUd6bGRIM2pLRWQ4dGgyVnQ0MWFyOWJzcmFzdkxja25YRnJwdVo0czE3aHpJSnEKZmxidkdWVXV6V21tNTlSVGM4WGVhVzN0TmZGWExkU0lMbDVNdXlLNnVTU2tWUkhvbElXMEtFUGIxVUh0R3Q4VjhvRnQ2dUNPVXVqeQpNV2VadjEwVDVwSkZ0S3ZEN09wempWenlWV2ExcDdCMW1OZG9KWlFWd1F4Y3ZFbGFhQklXVmZFZkFzaG5JQitBeXJrUWdBd0NwbDVBCkUvRUpFaWFoQklmbTBISk4xZlNseWNxUnUxcnBMZlhidDNWbnB1ekhsK3puMTYzT09ldnNsTm5yTHVzZnRDNU05MjVQMmthR2FsTHAKWmRuOG11NEIwK3hhcTdMNjhyR2toamNUSEFGWnZaRkpuY24wRnI2eDhrTFIxVTl6cWhxN0cxYVhyU3RUNXBWNTg5Q29wYm10YWRYVAp0TG5VT0RkdVdKMnpMazFVejQvWWxpZHJGMGFyNXNicUYyZWI1NmZxNXNhdDdnbmI5SWpGUFZHek1OM29kcXVueHVYek01cTErWXFGCktlM2NoSFpocmh6OENOd3pKWjRablh1cUF1U1pLUVBOVFZZQU04M1BxSlk4K3ZucE1zOTArZHFpRFh4T1p5ZTJ2NSt4NUJWczdSWnAKYTB0cFlzWDJ0L0lyYmh5bmhqUzlXQXgrT2h2enhwM3QwdDRyNnN1WGRVc2V3L1JVK2RSYUEvanpBZ210ZWxTTGsrVjc3dnFCNFNxVwpwTzNhV1B2T2d2Wi8vNjFDV1ZNYmV0NzJYaW9QU2M1VktIR1Q5K1REMCt5UllmclZWbXF0SHRYWGcxbll3VThzbzI4TU1DZm1TQXQ3CitSUHJ5UEZON01KZkVjTnpGSzBTWVZDZ2JBM1pmVGNZM1gzRVJudHVkVjNHMUp4ODBsMVMwNVFwRXlUZW5jbGUvQjYrdkVtYmRCZk0KN0NDOUR6RGIzeElXbC9LdmY0Yzd5ZUJHd1JYcU51SDhCbWZ6M3dxdWVwTlUzWlNkdjlMWC96VnY3ajcrWC81UGZOOE1NL2lDTkZWUgpwcWdRRE0zU3QzZGhlNnVvLy96UDVNVmRHbzVWUjFEVWRROGJ5RHBvNnZITEdhN25NaXFmVExJOEVWOE8zYXMzRVFMUTg4bmFzR3pPCnBRSWtGcDhFQUlTZ3BoT2g5dlhqNndjQVFaZnJRNk5Ca0lGK0NxQmNEQVNnZzJuOEp5K3BucmlrZnpaZTl6OEQ2TFdreHRlU1d3N0UKMVNCSUdwdWNwS29wUXZTVXgzVklSWmJDOG5KdVV5bS9UU1d5YTRSMXBZQStBcnRLQ0FEMHlFQUFRRmFsMEN6bkdhVWNmVEZITFdiTApCWFFKbC9vSVFNQTlPQWFXeUlUdUJ1UXpFS1dRU0NnazRObDRCSU1VQXl0NklnRzZZdTZaUzJYUFhhcjRSYUxscFdUTGEwbk5iNlE0CmdHOENNNEZhV2dHRFFyTGJ3M0k2STNPNm9uSzdJL042SXVCZFlmRDJzRHhYQkxvbEd0Y2FnYW1Qb2phRUZsa2p4TlhISlk0alpPZXgKN0k3M1liY1BJN3VPSXJ1UC9nQWd2eXpIeThsMXozNWovZ2ZmL0gvMFZKemFCNkRuTDBLM1BQNTVvdUdaQk9VYmFlSlVYQjZXZ1dUUQpjNWpVZERZVHptUWhBWUNnZXl2Lzl3QUNzZWo1ZEJyOEp3Q0Mrd0FFSTJWZndKRE81Q3BEVTIzQm1ZMFJ1YzNSY0ZkTXZqTWFZUWVICmttaGtiVFN5T2dKVkdZNjBoS0gxNFFYNlNKdzJtcWcrUWxFZFp5aE9zdVduaTByZWswcmZseFgvVVNIOVJDMzlYQy85dWx6NmpibjQKb3FVNHJsYWFWc3RKcjJXblZ2T3pLOWdvQ1FJQWlNWXFBR0xMVStBajJxbVJiWnlRTm9sL2UvSFJCbDZxbXNway9UMkFpR1FJUUZnQwpBa1ZBUXVIemN0aDU2V1dZakZwc2xnMlpYay93bFZhSDk1VlNpd09sMVJML3J2UnFVcHFOZUw2RzhIRWorUjBINDJ5MzVNUVZlV0FICi8xQW5MNlJUY0tDajVFQzc5TlYyd2NHYjhzQmhiZUJnYWZSdGZXeGZhVlNYOG5DN0lxWmRGZEdwaW1rclBlN1FIM1laZ3RvTm9hM2EKb0RadFFLY3VxQU9pejRsbTJZZTFvcytyK0prcVRycWFrNmt1ekZZWFpXbUtzbFNzZkFtZFZFUWxRN2VCaHM1LzRRalE4QThBVUQ0MgpId0JvWHo4UWdITHhlVEFjdEVKb0pnNmVnYzFOd2NJVENZaHY4SWl2Q2VpdnFOaFBDdkVmeUtudkdUa25uT0pqTHZHUlZrbHNtelN5CnZUaWtReExZSWZadkZ6MzJ3aVVaNlBtNFltQWdzUEdyT09YTDhiby9KSlMvQWZTVGJENlVCSFVnd2ZoNmZQa3JsL1F2WGRRK0F0Q0wKY1lyZkpKWUNBQjFNdFFhazFRRUFoYVJiZndxZ1Avd0FvS2N1UVFCNktsNzZkSnowQndBVnY1TElpMDVqZnA2TFNVVmtweU5UazVGcAp5ZWpNVkhUMk55UTRRRnc2THVlYndyeDNkZGlvT2xxSW95aXNtUS9wNXdjQStmUUR6UXBxRXIvcDVQcmJoZUhOc29nbWVVaFRTV2hqCk1UQlFiQTN2b2dwL1hvRDV1Z2o3Y1FuMVdCWFQzMTUwd0NVTWRKVUV0WW1EV3hVaERsMW9yU21rekFxdHlVcXBDc1JVaFNEcVlyQ04KUjNGMXh3c3F6eEZ0RnpsTmNVVzFYMUVxeUJYMDdtSCt0Y0hNNWxFMHRwZnhzVXY4VWFmMDBtVVJzMXZBdUVFVkRKRXF4cW5OQStpNgpubXpibGR5NmNVUmRHNXhtelAxektmbU1VUlJWSlF5cllvZFdGZ2FVRndaWW9BNlppMEFITFNBT0VBK1V1WEQvdzZKRGtKQjRBVlhDClFLc0lGT29xRFd2WFIvU1p3NjlXaFYremhsNjFoRjQyaC9aVlJOd3doMSszaEYycmhQWmN0WVJmTlVmZU1NZmN0a1JkMloveGM5Y2EKTlZJZE0xRjdlTkoyZUxMcXlFUlY4RkJiN0EzanA3MXM3RFdVWVFUWk9vZnVtVVcwVCtSMFRLYzJUUmN3cjhzL3ZtNzRZTkI2YnRwTQpxV0xSQzdBc0JzcHM0clMyY0V5V3RBWlg5clVCd3JWUjNQWEpndHNqZU1jWVhEN0t6dTVYZjlqQi82YUxRK2tsbGZWbnVLWVJqdW1rCmxxbnNyaGxDNXlUeThpeXBkNEo4MVpNSERIUmpIRGM4b3BrWnRVNlBHQ1pIVlpNVGhyRUo2K3FZUmU5Ui9HbFVmM3F5TzNhNjhjaFUKK1lsSlMvU0UrZTJiK2pOM3FnKzBDYjY2UW5STjhRYW1aRzMzQk5jbU5GT1RpdkhwSXUreWVHNWM3Qm5YejA3bzNlN3lxUm5keUx4MgplcTU0YVViY2MxT1MzTXg3dFYzKzZ0V3k4Qlo1V0tzeXRGVUZEQlRjcXQ1UEdkUlNFdWlTK3p0TWI3WVYrM1VWQmJSeURyWkpEL1pxCkE5cVZNZldLRkVlUy9DcXoxczYzeUdsR01jc2dZaG00OUdvUjV4R0FmT2ZDSGhtb25NZlNDV2s4UGw3RXdtbXdCVVhFdE5MS0F1OXMKK2J4WFpiK25PdGNsT3J6WWVteXQ1L2hXWS81YytmS0VZMkd5d1R0YjdaMVNMZ3hyWmlmYTYxc043cm1tKytOVms0dFZCZHp5NkxqNgo5OWxESndyYVBvSlZ1OW91Zjd0Uk5UalVaTmFXalE5VnJjN1ZlZ2FjcTlPbXhjblN6Ym5hMWJFNnozRGw3S1RWNDY2Zm5LcWJtVzBHCjM4enAyZXE1OGRxNThlcUY2VnJQbEcxKzJycTYwQVFrNUptc25wOHhlZWRNM3RreXp3UkV4cVVGM2V5TWVzNWQ2bldYQU92TVQrc1cKWmd6ZU9UM1VyTkV6YVo2Zkx2Zk9XT1ltTEFzek5UTmpKcytjMmVNdTgzcWhaMjE2UkFzVHNwb214c1MwNmk5TDFOMTUrT3dLWm5XVwp2akJmQlY3SittekQrbmpOOHJ4azBWdThQRzFjbkZaNFBjM3pzL0xsZWR2TXZIVnh6clk0b0Z2eGF0Ym5UUGZkWnAyaE1vOXJ1bnF2ClptbXU4bm8zYldVdVlYS0R1bnEvWUgwRE16WklIcHRpVDIraEJsWXZqVzNrekt4aHg3ZmlSN2JndzV2WU8rdVg3bnJ5SFM1Y2YzL2gKekRabVlpVi9kaDI5K29CNHVmL0wvdEg0eFIzczZnTjgzMVZLNzFUYTNVM2t5QnBqZW9jMHVBMGYyMERQcitKRzFvbkQyM2o3OWFLNwpzK2p0ZjhsYjNpb2NYb01OZm8rYTMwbmYyY3NaV0UrYi9DdHQ2YStKeXE3Y2o2aWFxbHVpYi8rRzJkMlY3UDRGdGZ0dk9kdC9RMjc5CkcvWDZNSFZpaWY4Zi81blVOYUo0SDEzNit3ekw0M0dhbjhXWmZwblo4R1JpNlROSjVmc0Ewa1RDdUFrQVFJUUVhQVNJbGdFQVJLSmwKK1BSRHB2ODRBa1NtWnYwSUlESzBSaGlLQU4wUEdvNU4vVHNBUFIybi9YbWM3cjhEMEN1cGpYOUliWDN6bTlvY3ZOYWlvaFMxQzk4Zgp0cngrVjBTc1kwdXFPTlVHZ2F0VTZDZ1ZBUUExYWdRT3BRQzZKUDdIczJBL0FxaE1CaTBMN3dNUW4wdmVYL1dDd21CREYzd0JBUG5PCmdqMENFSzRRbjA4alIyVkNBSG9zMGZoRUhMUzhHclN5N01YU0Z5NVUvenF1L3VXa3hsZFQ3SytuT2c2a09RQ0RRbkk2WXJMYm9tSHQKTWZETzZQeldTSVF6RnVjNHlXaC9oOWQxcExueGNGZEQ5UFhhNHdQTloyNTBoT29hRG1LcUk1RWRQd1ZRWkM0RW9OOG0xVDV6d2ZTUAp4UG1mOHdIbzJRUTlkTDRpWHUwRDBHdHA0aFFjNHY4dkFCVlFjdUZrQUNEQ0dWaEphRm9WQUZCVW51TW9wdVk0dnVZa3Vmb012ZnBzCm9mVjlydldjcU9vRGNkVW5LdldmTk9yUGRhby9HMlJmVjRpK3NmRGliTHpFV201R1BUMmpucHJaU0lJMUVYSWRHTGdUbmU5Q0lWcVEKV1MzWWZHY3UwZ2tETy9Pc1dJdzBtOFRLWWJBSlJYUVVUSVdON3FERWR2Q2dhWTRkOHFPTi9FL05qSDhLSUR3QUVEa1BTVUloY1dnVQpEZzFqRnFScHlSblZERmdWSmEwR0RVcXBRYWZXWWtBKy9ZQ1NhdERKMVdCL3dmNStYSHJOdzc2cVk3M3Y0a2JWTVdKcXVVZGFaUWRhCk9LKzFNa1BhMk5ENUNwY295Q21JdUN5UHVLMzJ2NkVLdXFZTjd0TUZkYXJDMnpYZ25lZWhUazFndXliU3BRbHJWUjNvVWtXNnRHRnQKdXNBdWJYQ1grckJML3NjYVlhS2VuYU9ncFd0Wlg1dFlmN1N5UDdTeFA2aG1mMkptcHNxb2RBYlpCeUE4RWVNREVBb0hUUUNDRjhCLwpDcUNjZlFObDdwZUd5VS9Fbzg0VDBWL1E4SC9pVWM2Vk1OOHljMDg1WlVGZGNsQndkMGxRbHpTd3N6aWdRK0xYSmdJOTltS0s2SVZrCjRZdUpvbDhrU0g2ZElIODVTZjI3Wk4ycnFXVUJhVWFRZjdyeFlGckZHNm5RWU4wclNkcVhFMHVmU3hRL2x5RDVSWkwwMTBrcThKbXYKcDFVY3lxZ015S3dPeWFvTXpyU0F4NUJzYXhETWVpRFQvTHVVOGw4bGFKOU5VRDRYcjN3MnJ1VFplTm16OGVMbjQwVXZKQWhCQjVLRQp4N01wWCtmbnBpSFNzdkt6MHBIdzFJTGNOR3hXTmdZNmpSZFBobDJpd3I1aXdENHB3WjZvWlJ4cVpRZlloVUdOSXVDYjhHWjVpRjN1CjF5dzU2QlQ3dFlqOW9Vdmw5MnN1RG1vcURtcVVoRFJBSGEvaW5GTVJQNUppenVpWjRUVVMvL3JpZy9YOGcvYkNrT1pTLzJiRkFidmsKVUtzNHNGME9PYU5PRjJyUlJiTWJvaW5scDdCMWI4T3FZY1Z5MnlpcGVSeFYwa0NVTy9HMVF3em5CS0ZtaElMdG8zL1l6VHZXd25tbgprWEhVS1RyVEx2enNzamo3S285N3ZkQjBoMTdYajdGY1RoZFpjc1RsdVd3REt0dU1QVzNCK3Rzb3dUWDhrQXBPc0xrd3dBUXA1ODBxCi9tdG16dXVRZURpSExPd0R4a0kvQzlmZnlqOWs1UjJzNUIrd0NzQkxEYkVyZ25zTUliM2xZWmVONFZkTVlUOEV1QU04RkhhbEVtQUkKZkJoMXZSSTYyM1hkSEhHMVBQS1dNWHJRRWpObWk1cTBSa3hXUlU1VkFsVkVqUm9QM2FzNzNDdkt1SXJYamhPYlovSE5Fd2o3Qkx4OQpCdEV5Z2UyY3lDMFpwZis1Vlh6bXR1blA0OVZvQzdORWxXdnZnOTBhSjkrZHd0MGVSOXlZUkhTTkkxM2ptS1pSUE9zMkc3RHYzUnY2ClkxZExvN3FsVVYzeW8wN2VPVHVOMWthekRPUGFWK0NxMmF5YzIxamlzTkxsTm5obUpXT3prZ2wzOGRpc2NHeWFQelVsZGMvcEo2Wk4KOThhTXhrbHo5clQ1MkxEcHJkSEdNd00xc1JPVjBUTlZ4MGNzTVRlS0QvWXBUN1d3cTY0elorZTBxQjdPNlQ3UjE2MkZ5VjFLMUkxaQp4YWk0YjFZeFA2TmRHVmU3cDFSajh5V0Qwd3JQZk5YY2NPbTh1K1RXUFVGU0EvNDNiZnpUZGhQNG1ZYTBsNEQyM1FNVjdGSUZPWldICld1VCtMU1grK3p1RFdoVEJMcWpRRnVVZnVxUi9iQlR3ZEZ5cmlHM2hGVlp6T1RXaXdsSWxwVjdDdHduWlZRSzZWVWl2NUZOTlBMSkIKU0NrVDA4bzVnbkkrelc1aXVtemtlaE9tVkphbUVLZmN1cXljZGV1SEJ3M25lZ1VuN3BaL3VOaHdkSzNsaXhWSGk4ZTBNZERrWFNnYgpudEY1NXkydTBUTExVTG5YYlhCN0tvZnUxSlpvNnE1ZVY2MnQ2Tmc2MTU4VkRVVkRhdmxOV1hxL3JtekVzRGh2MnhvMnJFelZ6cmp0Cmt6TzFnQkd6NDkwTDA0MEwweWIzbEhGdXNuRnBxbU4xcW5sNTB1UlpNTTY0cTl3ejljdlRkUnZUbFJ1emh0WFpzdFZaODlTOGZubWgKMU9QVnVpZWg0WmtWcjNwOXZHVFdVK21kMDNqbnRBQkdBRzNlR2ZOK0Z0RENyQnFRYUg2NkVtb1dLRTBIZm1UdVdkT2lSNzA0TDE5dwppK1puWlo1cE5mZ1JnRDNMWGpuWXVlaFJMbm0wNElzdnVZMlBXblpYTDd1dHkrNnFaWTlsMldOYW1UZXZ6RmV1ZUt5cmJzdlNET0NSCllYM0J1TE5pV2ZlV1RRMEwrNitTNTdjWk0rdTR5UTNFOUE1NmNydGdaQTA1c0pZOXRKa3hzb1lHMjBQcitZTnJ1UVByc0h0YnNJSHQKN01HZHJORWQ1TDJscklVOXd2cTNkUGNhcG44cWMyZ0ZPYktGbTkzQWo2OFdEQzhqUjljTEpyWXdrOXZZcVMzc3pEWnVjQ04vYkJzOQpkUjgzL1FBN2VSODF1WU9ZMk02ZjJNNmIza0hPN0tMYzN4Yk1QVUNQcnNQdWVsUEhOMkZMZjhOLzl6Zjh6cmVvOWIzOCsvK2E4K0J2CitPMEh5Ty8vZDhMTzk5bjNIMlM0NzFQT1N5MVBKWFFISVNXSFVlSW52alErbFdsK1BySHNzWFRwNDJtMUVYbnlPRW9DZ3BxR3A2TUwKOE5ESkw5OElFTkFQaGZaanZoRWdNZzFHb3ViZ3lmdjNyUGVkQXNObmZweUhPNUFtZkNhaEZMcXo0djVNWHQrYVpjL0dWZnd5M3ZyYgp1THJmSnpTL21taC9MY254V2xMemdmaUcxeExxWDA2dC9SeFpXcVlWb3E5d3cwYVZJVmZVZnRjRW1IcEJZeG4zcXJ5d1dTMHdsVXVkCjZoS1hHbG9JN0ZFMUdvbE5KYXBTQ016NzA0QjBraUtsa0NrVFBKd0dCSzE3eWlJU2FYZ1NuVUJpNGNsc0FvaklKaERZV0JDTWhRak0Ka2o5OTBmTDh4YkxuNHNwZXVGangzRGU2bjhWVlBKYW0vbG1TNXRrNHcwdVhLbDlKc1AwbXNlcFg2VlV2d2lyOU1sc09wTnY5Y2hvRApNRFgrUmVZb1MvWEpxNDBuQit1UFRkbWkzRWEvZVZYZ2tqNXlwdlo0WDFlSW9DVzhvT2R3ZnUrUi9NNWplZTFINFYwUnNPNkQ2UzIvClRyUUMwRHk1djBERVAvYmNCY016bDZEN2VqK2VVUGF6UlAzakNmcW5FblRBUGY4cnFlTHBSTU9MbDBwZnVLaDlQZzVhRXVjWGNacmYKSjZ1L0pNSXhESGdoSFVhakk2aUZHQllUWGtoTDV6THlmdFRQZncyQWc4MUFNZWxJS2cxSnBpSUlGR2dPRUlZRXg1RXpDQ1RBb0lJTQpQUEhQZVByNzVLSnpoYkpQaE5xdmxMS3ZWWkp2dEtLNGNsNml1VERaQ2syRlNhc2w1alNDQ0xsTlJCQzhtWlJuSjRMeUhhUjhGeEVFCmI0RUNHd2duT2Q4RmhXekdvNXJ3eUVaQ2ZpTXh0eHFYcmNsSENHQkVEcHpFeVVmSWNNY2RyRmR1Q29JNlJaRk9VWVNkOTVHRlJ4UVEKaERRc2o0SUVmeTdvenJSRTZDb3dLaTRmRDl5QXkwTVI0Zm1rL0d3YUtxc1ltMjRteE5laFVxcnhVRFhZUi8wZ0lZTFBQWm0xV0JEWQpTSzdCSnRUZzRtdElYOVdRUDZpaEhhOWpoemR5Z3V5OGdCYUJmeHNmU01LL3ZSaXFUUmJZVVFKWUU5S3RDZTNSUnJhWGdjTGI5WUE3CllXMmxvZTBQQzIvVkJiWnJBenRVUjFxVUg5VEtQak1MUDdOd1A2a1dIR3VRSEdzUW5xbmhmR3BrcEpWUUMzaEVDb3RBWTVKb1ZBS0IKak1HU0N0Q1VBaVFGamFDZ3M4aUlKR3gyT2dXZVFjekxKa0Q2eVNVZ1lFUkVCaEdaaXMrL1FNRit3U1o4SW1XZU5YQlBWb3RpbTJYaApUbG1ZQzNwdFFaMktnQzU1UUE4ME56U2dReHJRSmc1c0ZUMzJtMHpoUytuQ2w5SUV2MDJSdkpJaSszMmE4clYwelJ1WjJ1Q3NDbEJRClZvVmZwdUZBaHY2MU5PMGZValN2Skt0K2xWTDhxeFRaU3lrbHI2U3FYMDNYSDh3dyttZFhCbWJid25Oc1lURHIvaHBqMWNFNU5yRHoKMVRUalMwbjZGL2J2dmYxQ2NqSG9sOGtTNk9tcDRsK25TUTZtY0U3QXlPZVJlUm1vakN3VUxCT2RuMTRBVDhka3dTQUd3UktKMlhHawo3Rzlvc0QrSjBhZk5sTkJtVnJBZHVqMTBjSk00MUM0THNjdjg3Y1YranY4SlFMRTFncE5tMWprZDVZK2x0Rk9Hb2xDck1LQkJIT1FVCitqZncvSnNGaDF5aVF5M0ZCMTFTLzJaNWNJTXF2RjRUNXJLR1ZxcmUwUm91U0kyMEttSERDTHA5T3NkNWoxSjdEKzhZUmRmZnk5YmQKSStUMHNkL3RGSjlvRmI3ajRweG80NTF3TU41eTBzOTFVRC90b1NSZlorSnZGQmIyc2JSWHNkYnIxTW9laXJxYmdXbG5mRkJMRExOUQpRcXE0WVJhT3Y1RUZ1UE9tcGVoMVk5R2Ird0E2WUdMNkdZc09tVGtITFJ5Z240TTJJZEFQdE1acXF4Ym9KN1N2d2dlZzBNdEcwRU1HCjlabkRMMXRBWUR2MFNubjROV1AwTFhQczNhcVlBVXZNcURWMnZCb0MwTGc1WXRRWVBtQUl1Nk1ONml1SjZKRitjRldjZDQram5LQTAKemFKYlp2S2J4bkxzTXptTnMzRDZDT3RjdS9UWW9PWFQ1WHIyUFduWENLTmpqSHhsaHRJN2h1Z2V6VytmSmxoR1dmeWJoYWhPeG1lZApnZzg2UldlNjVVZjdWREVkeGJFdG5DTnRvcGgyUlhBN002MkhxTzRuOCs3U1A3bkdPWFpkQ2gvU1dpWjBDOFBheVhITm1Gcy9zV0R1Cm56TlZqUnNLSmxTZnpTcVNCdFh2alphRkRwUWZHYW1OSGJORnpsYkZUaHVQM3RFZHV5dysxRUdGWDJkUFRzcUdwbFZmdHBLRFhMeTMKN2RJempleGpkdUZ4bC9Uem5tTFNYVkgxdEhoOFZ2bnR1RzdTcTVrYkwxNGVsMDRzS2ZvWE5UVURzc1Myb3NDNndpQ1hOS1JWRGdweQp5WU9ja0hVQ1hVby8rMFA5Z01BZUg0QkNXcFJRdldYSG1xV2ZWYklvcFdTTGhHZ1I0blVTbWszRTh5MU5aUlRTUUJZSnd5U2lsM0ZKCmVqNTUveXdZNmthYmNNTlR0YjFrbXgwcnUzTkRNajJtbi9PVXowNlpZVGRrTWJkMUg2dzRUNnc2UC9JMkdEMlYwKzZhQ1cvNXFsdS8KT21IR0RlbGw5OVR6bnJLSnVZYUpCZDIvVHRWLzY2bHVtUzdOYmRNY2E3VkU5TmZHOUpvaWJtbFRyOG42NWkyckM1YUZhZlBrdE0wegpWN2MwVVQzdHFWcVlybDJiYWw2ZnMzczl0WE16VnM5MDQ2S25FeGhvZlVxL1BhTlo5WlFQejljMGVwdTRudHBjdDZsaVFEdzFwVm4yCmFoZm05TUFvM25ubHlwVEM2NjFjZEpmK2tHN1JYYlk0WjFpY3ExaWNNMEV3Z2tnRUpHUlptQ3RmbUN2enpKVjd3UFkwWktZbHIyaHAKc1FnOEF2VHNQNnRpYVY2MU5LOVo4a0JmZk5sVEFUVmZEZ0xRQWEzTkcvZXJnQjQ5NWpWUDVhYlh0ckZnM1ZpbzNGeTBiQzJCVEJ1TApoclVGclhzTFBiR1dOYkthTXJxWlBiYU5HZDdBRDY0WERHMmdocmZ5UVVPYmVZTWJPVUEvOTdheVFNQkEvY3NadmVNWDdzMW5nQ2N1CjNTZk5BZnJjSjQ1c0ZVeHVGSXl2QThxZ1JqYVJvMXNvZ0o2SkxmVFVOZ3FBYVh3UFBibFhNTEdISE45RmpPM2tnOGVwWGFUbmV4ekkKL1IxbTlnRjZDdHFEbUw2ZlAvc3Rzdk5hd2R3YTg5di9pOWg0a0xQN1BXSHYzd0cyRWxmK0pXdnpmdmJXWHpFR0IwSFZwSnpjMVBVdgp5VC9sOGg1UDByMldySDB4V2ZmYnhMb3pXVVhaK0VzRnhDK1I1Qy93aGRtUHpuOEJBRkhwTUYvN0JvTHRyOW9CQVloQWdlNVovM0FFCkNKLzFkd0I2NmxMcEUvODlnRjVQYUhvOXNlR1ZsUHB6dVJxVm5FdDBNR0t2Qy95dUZFZGNrWHpVeFNzeGM5bzBmRHQwTnlDSlRTOXAKMFVnYU5NSkhBSG8wRGNnaTU1WExPRDRBUFpvSERRREVZSk1BZ0lpTWZ3S2dkRkxlb1RUSkV4ZE5UOFdwbjRpSEZxdDYrcEw2c1NUOQoweGZLbnI2b2Z5WWV3c2N6OGZ1dk9jNzIyOFNtWDUyM3ZnS3pIZUxWUmRRMEg3dHVQelpXSHpOdGpaMnpoYzFZWXVkcW82YXJ3cjBWClVjdW1VNFAyRThYTzArbVhId0hvOEE4QWVpbkpCbzNvL0pjMTNSNHRiYXQ5TGs3M2JEeVFvdWFKQk0zUGswcWZUQ3dGTCt6SmI1US8KandkdnZCVXZ4a3RmaUZjOG5hUjVQRkgxWkxMMEY1bkZYMkJSU0NxY1JjMGlVM0xJTENTTGxWTkV6K0x1VHdQNnB3RUFnZlpYQklOdQpCazJpNUFNREVTajVHQW9LdmI4bVF6b1pGYy9EWDFUVExoblpsOHhGeVZXc0ZDc3J0WnFlWGtmTGJLQmtOUkd6N1hpWUErZHp6ejU5CnlBL3A0eUR0Y3dkeWp5K0VpNGgwUGl5emhaempJT2MzazVHTkpMUU5qMVFoY0VYWkxFWXVwUkNCS3NhLzFjaDgvVEl2dEVNVTFpSUsKYXVXZnFlRWhpZ21GTEJ5TGhpWXhFVXdhZ3VVN0JVYkl4K0xSV0FJQ1I4eEhrdk55bUNpWURKOWhJaVJXSTVPc1dDaGJBU2k1R3JNZgpOUENUVklkTGdlYjlZTkpyb0h5RFE0bTFXR0M0K0ZyeUozVzBVN1hNaURwV1FGT2huNVBqdDc4d2tWOGJOSnF3djBDMVBLaFR0VytnClVuQUllOWdQOUFucGhHWTZSMERudjlRQjNlcklEdFVacCtKY3ZmUnNnK1JVay9CVW8vUjltL0RMc3NJVUpUMVBRaTNna25Fc0FvNksKeFZOd2FEd0tUVVJqeUJqd0NGMENSb0MrN1hsNE9Kd0FoeE1SV1lUOEpHTCtSU3JpQWh2ekRZL3dVV25oK3diZW1TcmgwYWJpeUJaWgphSWNDdXJ5NlN4bmFvd1lGOVNqOHUrVitIVklnTnI4V29iOUw4RmdnVGhTQUZRWVVDUDNSZ2tDME9BUXREY1BJdzdIS21JTFNhTFFtCkNxV09RS3BDRUlxQVBKbGZidkdoSE1scmVaSTM0TkkzYzZVSDh4UUJjRlZJdmk0TVVSNkpySWhCbWFBUXhtaWtPUkpoQ3NrclA1Q3QKZXpWRC9hc01NZWlsZElBZTBVdnB4YjlKZy9wdHVqUTRtM2ttbjNBZUE2RW5DNU9UaGNuTHd1Um1ZcktnUytKeHVTbUU3Q1I4Vmp3Wgo5a1ZSL2xrMTduZzFNOVFoQUFZS3NBdDk2NlNDb0h0RFE2ZkQvaDVBRDdNSlEydUtUcGlvSHl1STcwdklFU3JtUWFNd29Fb1cxc3dQCmR2RDlITUlEVGpFSUdBaTZ5VkJMeWU5NytBZGJpOTdwVkNWMjZ1blhKS1ZEV1BOQUJtQ1FiVGlyYVNqRGVpZExPRWlKNytXODF5cDYKMThsNXJ3a1luSEcwa1E0a2ZxUzlLTHlWR2VsaXZOdktPOTlaREwvRzVkNWhWZHhDMnZ2aHRodHdnaE4rcmdvWGFLU0ZXUW9EalN3LwpVeUhnemh0RzlodmxBRVBzZ3hVTWZ4UG5vS25vZ0psN3dDb0lhSkFHdTFSaFFNMWQwUERQM3dISVo2QndjSXpzTTRMOTBOSVpWOHJECmJocWo3bFVlR2FtSm5iRDZpaG12aWh5cUNPM1hCbDlWQXYxRWRvbERlNVdobDB0UFhpNU92c2tTanBHcnB3dWFKbUFOWXdrVlUzbXcKL3FLekhhcWpJMVdudlJiY01LdDlKdXZHQ09YR0ZLdGxrbEUreXFEZllTWmM0YnpiVXh6VFdSTFRLajl4eFFERWM5VEpPMmFueHpvTAp3YzZnZHVXcjdiTGdWdmJaSHNiblYwVnZ0MHVqWFNVbmIrZy9tcW9ReitsY3M3YkI4VWJIUUNWdVFQZkJwUGJZalBIa3BQWG9qUG5ZClRHM01vTzNvYUYzVVdHWHNsRG4ybmpxbVV4amVKWGl2RzFjL3l0bWRMZTRhNFY1MEZKeHBZQUFBeGJaQzU1SlBPSXRQTmZHQnVrNWYKRTZUZlVSVDNhd2ZIaXlkbU5ZNStPZk82S3ZPV1dETW9jbzdKem5mbWhybUtJMXBMUU1GT09maGI0UnZ2QVFieTZTZWdGZElQNktGKwpRQzZkdjBzZDNDNisyTUhWTmhmVm1HZ21HYjIrVUdRV3M2cExlRlhTb2dvUnMxek0xQXNvQUVDVkFycFJVS2d0UXRZYnNJTlhaWXRUCmxjdHo5UXN6Tll0ek5YT3owR2lIZnFBMDhxYjgvWlhXdDFkYlB2RFcwNzBOSzdNMTB4UG0rL1BhbTBQbVU0T2xGVVB5ZjUwM2JZemIKTnhhVWR6eDYwYkR1MDM1RHhGMWo2TTJ5MEJzVmZ2MTFoNjVxdis2Vk9OM0c1ZVdxeFdtRFo5YTJPdCs4TWxXM05XdWRuck9PemRVQwo5M2huNm1abkt6MXp4cDBaMDVKSHUrQXQ2L2JxNkhPcVAwOGJ6czNWbmZVMG5KaXR6SnRRakxxTjZ4NzFnbHNGVFFOYTBLNTRORjUzCkdYaGM4YWhXNWt0VzVtWDdqOG9WajNiRmJkalhqR0hKYlY2YUEwZ3lMM3FNMEtPN3lqc0xOa3FYdmZLVkplbnFrbUxGQ3o1TkMvYXMKenV0V1BXWDdsZTlEQjlMTTJvSm1mME8vN3RYOVVObjZnbkY5d2JUbU5tM01XN2E4VlpzTDVvMTU0L3E4WVd2UnVMdGlXZGt1ZEsvaApSbGRoUXh0WlF6dDVnN3Q1ZDdlejdteWxEdXpDN3Uxa2cyMlFUeitQdXVGTkhGbkxudHRETDl6SEFPSk03YUlIMXZOR04vSkd0eENBCk8wTTdpSUd0M09FdCtPaDIzdmhXM3RnZWZIUTNkM1EzYjJRN2IzUW5mMndiT2I1VE1MR0xBUXlhdkk4YTM4MGYyY29kMjhtYmVnQzIKNFlQcm1ZNWJ4TUVGMXZyZkNqYitrcmI1ZmNMcVg3S25OdGlldi9MYy93OXk1aS9aODl1d2I3L0hmdmUzNUFmL0Z5WHAwZnl2K0tiSAo0OHNmUzlmOU1sdDlQRHMvQjVYRHBCQ3c1SXNvOHNWSCtxRXdIdXJua1lHbzlCd0tQWWRNeXlWUW9XbEFhQ0kwRFFnQTZJLzUrd0NLCmg1WVlnMGFBNHJRL0JkREw4ZlUvQmREdkVoMXZKdGwvbDloNE1yTlVJdUNLTGFTUDI1Z0hyd3RpcjhnRGJ2SVRISVhsWmxHTHZ0aXUKRmxuMTBPbXd4bExSVHcxVW94SStBcEQraDNuUUVnRmR3SVVXdm1CQ040UEdRM2NEWXVLQWdZZy9BVkFtRmUrZktYOHl5ZlJVc3ZKbgp5U1hRU2NBRTljOVM5TCs0VUE2TkNjVWJuazAyUEpWcWVEcTVEUFJzY3NYTEdtT1Fzem5xdGoxcW9pNW1vU1p5dmlwa3hoZytXeGsyCmJUenNyajR5WTR1NmE0bnNNQiszTkJ5bE41N0tiejJjMzMwa3YvMVlQblJMNkFoWTV6NkFxZ0NBbms0MGdKNUtLUHRwVDhicm40cVgKUHgydmVESkI4VVI4eVZPSjZ1ZVR0YzhuUXRmQVA1R2dmVFpSODN5UzZybWswcWVUeW4rZVdQWlVrdWJGTk9YSGFIdytHY1VBQnFWbQpVNWk1YkRhTXc4am1NTkQvU0orSDBTQUErVzRGOUhCTmVFbytrWnFQb1JVVWtKRndZbllHUFRORmxwdGlRU1hYSWhOcmN0SnI4ak5xCkVabDF5S3g2Rkt5eEFKVFRoQUh0dStjaGZZQjdFRDd1dEpBZUR2ejhKS0FmdElPWTNFYk9iS1hBSFdSa014bGRRMGFVRnFCNGNISWgKQ3NzcHlKTVN6dGF5L0xxNDRhM0M0RmJSZ1E1aGxGMllwaVNSdURnYUEwMWtnVDhkaWs1RjRVSEVmQXdSVFNBaENBVG90bzB3QmpKRAppazJyd0NWYkVZbFZHTkRmQVFneVVGM0JmcGdmcThXbDF1RmhBRU4xeFBNTnRQZnFXZEgxeklBRzlpRjc0YUdXSXNDSVF5N1JRYWNRCnVqS3BWUnJZcGdqdVVBVjNxSU5iU2tOYXRVSHRtcUQ5RTJGQm9FNDFLTGhOSHRpckNyNnVpN3hlZHF5bjlIaTdLZ3E4V1cwdFBsVmYKL0xHUmx5SmpJN2xVTEllQzRaQ3dMQ0tPaXNOUUNXZ0NCb1FoNFJDRUFqZ1dtWXRCNUdPUXlJSnNPQzQza3dSTjgvMlNnLzFFUnZsUQpYM2pPeEQ5dWx4MXh5TURYRE8yUUIzUXBBbnFVZ2QxUXdFRFE0Z0U5SlNDL0xobGtvRlpSUUl2d3NiZWxYTkE3RXM3YjRxSjNSTnl6Cll0NjdFdjQ1aWVDUEl2a0hJaG5vbkZENnJrRHlEazkwbWlzQUhTbmtIV0h6UWNmWm9wUHM0ak5zK1Z1RkplOFVLdDltSzk1aGdWU2cKdDFqS2szUkZMRlVhUVJMN1lVVitXTWtoalBnQVdud1FLVG1RTDMwenIvak5QRmxNQWVVOUF1NDhDWjVDeWtvandOSUo4QXg4YmdZdQpFNXJPVGN4TkpXYWxFREtUS05sZk1XQWZpcEh2bDFPaW16a2hkcTd2N29pK2hlS2hoVEtnZXdKQitvR3VJVytHQWdZS2hDWkVTNElhClpJRk5vdWdhemxrZC9XMGVLWXhPL2gyajZLWEM0Z1BsWWo5TE1hQUd0SWlway8rR2cvdW1uWC9BSVFMQUNuVUpJMXRGc1E3T3ViYkMKNUI0RzlqSlJjbzhtSDBKVURtSEtCNG1FZnRZbnJlelBXN2c1ZmN6OFB2aWZYTFN6VHNheEZ1NnhGdW1KWnRtUmV1N2hKbFpzSy9PMApvK1NUdHNLTVBoVDNkcmF1UDBkOUcwUG9KbjFhQlE4eE13S05qR0J6WVhBbC8xQkY0UUVENjVDUjdmT1FuNFh2QncxUVFmb0o3U3dMCjc0WGM4MGcvMFBaUEFCVFZCd0VvdE04UWVzMFFjZHNjTldTTkhxMk9HYlBGVHRxaUp5elJZK2Jvb1lyd202V0JQYkxBZGtsb3B6UzgKVnhQV1V4TFNJdy9xbFVmM2lMKzRXa1FiSUJySFVZN0pYTVVvNGZOMnh1bG15ZWxCMC9FNWMvNGdyM0VDZG5tS1V6WElabHpueFBjSQpUM2RJd2p0S3dxN293NjRiVHZiSUk2NVV4blNxTDNTUVVycHdaOXFLUWxzbE1TMkZZVDNxd0ZaK1VBc3JvcDBUM2lHTTdDMkp1YTZLCnZhVTZOMVdhTVZOSkdLOU9INmg0YjdqcytJenRuYW5Hais0MlJjMDNuSmh1T25IWGVtckFlbnpJZkhyWWVQU3E0bkNIT0xpZHpickwKbkpvdFhKN2pEcXdvN2FNU3hXVk9UaHZ0aUxNb3pFbUpkbERQMmtYSG0xVUg3U3IvRnZsYjdmSXZyckhqN3luZnZxdzVmYU11cEUrVAowY09iSEM3dnVWa1kxaXdLdFl2RFhMSVFseXdJbXZvakMzREtBOXVVUGdrOUhQNXBWZnFDMXRCd2xCN3ExSUkzQkljN2l1SXZjNHNiCmltcGxyQnBSb1UzQ3JCYXpyTUw5Q1VCaWxrbGFhSkV3b1E5RnpQcFNacjBCMzlYRW1McFhQajlaUFRkdTljN1d6azRaTnhiSzcwd1kKVHQ4VW5aMTN2cmZxK21DMUtYbWxaV1hTdGpGZXNiQ2lGSTFaM2hyVWQwMnJWeGNzdDBmTTBydWxIOTBwQWR3SjY2bVB2ZHgyL0xydApuUnZxVTlma3FKc2EzWkIrekczWm1ER3VUMWxXNWhzWFBZMUxjdzJyYzdYcjdzWVZkNlBiWFQzcE5YbFd5N1lXbFgrZGxkeGJxcVF2CmxaMVlNa1F0MTUxWnRyKzExSFJtc2VrOXIvT2pXZTNJdkhYUHJWendsR3g0VGQ2RnNwVkYzYks3RkRLS1Y3bTJLRjFiRWtFdFN0YTgKSld0ZThLb1VxL05xQUpyOTRSd1RhTWxqQWEzTUc1Zm5kY3NMNm1XdlltVlJ1YnFvV2ZHcXdZZjc2SUdDZkFPVTR5MWRYMVN0THlvMgpsNVQ3bGV5bjNGclNiQzNwdGhiTGdIdTJ2SmJ0eGNxZEphanRSWUFoOCthQ2FXdEx0cmpCbWxoSERtNW0zZHZKN045THY3V2JjSHZuCndwMmRWRkQvZGlyQTBOM3RqUDMyTWJRSGJZL2Z6NTE1Z0JqZmdvK3N3d0IwQUc2QWVJYjNnSi9nOTdaejdtN0JCbmRnSXpzNXc1dloKd3pzWnc5dFp3OXZnUXpnRW9GM1U4QTRhYWpOMzMwQklZQ0RROUxmb3FRZUkwZTJjNFg5Sm0vMjNsSWtsdkhjZHQvNXQzTkozU2JQZgpwdy90Wm8vZHorcS9uelg3WGU3NnY4Sm4veEx2K1N0YzFjcDRLWjd6ZTVqMjV5bmFwK0lxMzBKS2MwZ0lQQ0ViVDBxaTBWRSsvZmdBClJHUGsrUHFSUVJDQVlFUmFqZzlBS0VKbUxnRUFDUDlHbXZpcEJCMDB2VHBPL3doQXo4VWJId0ZvWHorTzE1UHR2MGwySFVoMi9DSFIKR1psYVhzUVhWZXJKdVkyMG9INXU2QTJGM3pWQitMVWlVb1BBcFMxMmFzVjJEYjlaeTRNV2gvK0pnYUNMNFJYOHloSStOQTJvbUtNUgpzcUFGTWZZQlZGVDBYd0JFZUFTZ1FoeWVqVTBoRTk1SWx6MmVXQUVBOUhpaTZwbDR3NHR4MFAwRm9LdTRrdzNQSnBULy9LTHVzYVNTCnAzREtQNmlNb2MxMUIyWU1ZUXUyYUc5TjVLdzFjcllxZk5ZY01sTWU3Q2svT20rSnVtdUtjbFpGcStxanFNMFJTSHRvWG1NTThTR0EKanV3REtEeTc0ODEwQndTZ2VOMC9BZ2pvQndUY0EwMUZUMUpCdzFIN1Y3dy9GNmNEUFo1VTlyTWt6Wk9KNm1lU3lwNVBNcjZZWVA1MQpZdG52VS9Udkk0azU1QUkyRTA1akFBRGxzTmxaSEdZdXRJN0UvbHlmZjR6NzhHSjRsTzlXUUE4QlJNNURVaklMS0ZrSWNrWVdJeTFaCmxKMXNRS1Jha1NsVmVlblY2SXlhZ3N4YVRIWTlQcWVSbU50RWdqZFI4NXBwZVU2U3IvMHpYRVJFQ3dtcWxaRGIraU9BY2x2SUlIZ0wKR1FncHJRMmYzVUtBTy9DNVRrcTZuWGJKU3Y1YVQ3cWtaU1NxaUJmMDFCT05ySUJPYm1nYlA2Z05BbENvVTNSUlR5MFFrR2dzREltSgpZbEpSREFxS0NDSWlVR1FJUUZnc0xBZWJsY3hFeHN1d0NZYUNGTXVQQUFMMCtlRXNXQUVvclFhWldsdVFXbzlOYXNBbjFST1Q2NkY1CjBCbTErS3dxVkZvZC9tSXo4ME43NGRHbW9wQW1BQ0RXSVNmN2tFc0E5SFBBSVFESFVHQ2dnTllTWUtDZ2RsVnd1dzV5VHpzMEFRaXEKUXdVdDE5aXBEdXdzRHJtbUNlc3ZpN2lsajd5c2plb0doeWQxVUc4cE9JWitZQlYrb3k3TUZGSHpPVVEwbTRobGtQQlVJb3FHUjVHdwpCVVFzZ29USnBtS1NHUVdKRFBSRktpS0RtcGRFeTc5UWlQeE1TdmpRd0Q1Ykt6N2hrQjl1VlVhM2xZUzN5OFBhNWNHZGlxQk9CWFFoClVZY2FGTmhSNHQ4SjZjZVhmNmNNR3JzQ0FQcktSUGIxcFpIMHRaRjgzZ1Ixd1V6NXhzVDBkY0hJT0c5a2ZGMUIvNnFjQnZxOG5BSDYKc3dIRStyS005WldoNk91eW92TUczbGQ2cVBNNnFLKzF2QyswM0U4MWhSK3AyV2NWbkhkS2l0NldjOTZTOEU2THVLZUV2Rk04M2trTwovMTB1NVRNZVBvNkxUQ25LVFdIbnBoYkNNMWp3TEVaT09oMmV5WUtuTVdFcDlLd1VKdXdDSyt0UC9MelBWSVRqZGN5b0puYUFpd3U4CkNkd0RBQVR5MGVlUmZuNWFjSE5KY0wwNHBKNGZVeU02cXVaSGtUbXY1NHRlUUNpZm94VC9UcXdJTktuRG0rVkFQSDUyN3NGbS9xRm0KU2FSTkhORlFBcDFjYy9BalhOS1R6cEozbXpoZnR0RXlldW1VSzJ6bVRWN0tWZDc3VHVZM2RncnZKa0UzbU1hNFNjenNKcnh2SngrcApMd0xxUE5VaU8rb3FpbkNSVGpVSVlsejh5QTd1VzMyOGkxZTR1TnRGekg0eXVpTTlxcFlUYUtRRlZEQ0RUUngvWXhFd0VLQ1BmeVgzCllDVS9vRm9NWG0xWWl6YThveXlzQnhyNDhjMTNCdlR4QmVnVEF1MkVBQlJ4MVJoeHRUemlla1hrSFhQc2tDMTJ2RHBtd2hvNVVSVTUKYVk0Y00wVU1sZ1A5QkhWSkR6bDRmblplU0F0ME5WbElSM0Y0WDBuWU5YVndYMGxNSi85UGZheWNmcFo2bUlLL1RUM2hvQjEzU002TwptVTk0NnBJSHlvc0gyY2c3bkV1OTdIYzdoVWU3TmJHWGpiRzlGY2M2Tk1kZDBxTmR4VUNIRnk2elMwYXg1WlBvekN2NG1BWUNBQkI0CkZ4THRFc2E2Uk9CZjQ4RXVqbitmSU9xcS9QUVY5YWtCNDRrUjQ5RXB5N0hacXBQVHR0TVR0dE5qMVdmR2F3RFVEZzlab203b2o5d3gKSGdQZDFJZDNpQ083aFBGOStDdHo3SFV2Y1d5RzVQWklOOXdsSHEvaThuUngvVjErM21WT1ZBdmZyMWtSNDlTY2RNcE9PSGdubXdyOQpXNVRSemZxWXk5YTM3bFRGOXV0UDNTbUQzYTNJR0M0SkF5WnU1UHMzOElJY3hiNkx3dnpzVXNDZy93NUFnZTM2aUk3U2lHYWhYeE1uCnRFdDRvWkV2ME5BcWxlUktFYUdhUzdhTDJFMWlMakNRUVVBM2llaG1MdmxhczJ4OXNtNTEydVFaVTIxNG9Ra3U3bW45b3FkOGZzYTAKTnFkZG5TdFB1U044ZDl3R0FXaXI1WU8xOXN0ZTFYMnY1TllpOTdNaHpaK3VsSlNQcTZrVGhvVGI0dGhyMWFGWE5lRTN5dCs1MmZEdQoxYnJnUHV2WmF5YkpYZDN3ckdKMXFlS0J4N3c5YVZxZHJsdWF0N3RuYTVjOWRldHU2OTVVM2VaMDdkS1M3c0c2K0s4cndudUxTdFZTCjJRZnpwdmZuck8vT05iMjlZRDg3WC9mdXJPMk1wK0hJYXR1N0E4S0I2YklIOHlVcnk0b05iNFZudm5SdFNidXhvRnRmMUFDbXJDOFYKcnk4TDE1ZjUrNEVOOGZxaWFOMkhvZjFSSE9BZVgwQmRhNTdLMVFYVjZpSi9iWmtMUGRHclc1KzNBRlQ5VU1YR29uNXpXYk81b3RoYwprVzJ0Rk84bjNsNlY3Q2ZkWGxHQWRsY3NPOHZtN1NVVGVBVGJleXRXWDJ0clJkNE4wdFJXM3VCbVJ2OVc1dTBkMk4yZEhDQ2hnWjJVCmUwQS8yeWtRZ0hiVDcrNW0rcnE5bTNwN0s2Vi9NK1hlVmdZd0UxQU9rQTBJMEdkd0wrZnVUdmFkN2F5QnZaelI3K0FURCtCanU3RFIKdmF5UjNVeGdvS0hkSENDazRmdUlvVDNrNEE1cWFDZHZaQTh4OWkxeS9Ec1VhSDhEQVFKUEhOdkI5L1N6aG1kSnE5L0RGaDhncDNleQpsdjRqYzIwbmErRjdsSHNQT3dzKzgyK1pucjI4b1JsaTB3eW5aVmhFdFhOaVlNSjNzNWd3NmlVTTdTS2Vsa1NnSmozU3owOEI5Q2l3CjB3Y2dQQ1c3Z0pRTkRKU0xoLzBkZ0tBRGZJTGhId0gwZXJJVEFPamwxTlkzVXBwZmoyOE5TTFlTdWZJV0RZMVhUWW0rWFhqb3RpejgKc3ZpTlc0TFBPZ1dHQ21HclZ1VFM4cHZWbktZZkJvRjhRV2ZCbEFKckNjOGs0d0lBbFlyWUNnRlR5b2VXUkFVQVlySDM3NFZJeCtNWQpXUHkrZ2ZZdkFjUGlXSmlMUk1MdjBxUS9TeWgvUGxuN2JJTGhGNWVzdjc1a2VpYXU0bWZwaXNmUzVEK0RLWDlCcnpoUVVSZDV1ZW53ClJFM01ndkh3UW0zTXJEVjIxbnJFYlkyYU1VZk1HaU1YVEJGZWMrUjFXNURXRm81MXhXUjF4OEM3STlEdEVZajJvL21YWXhIZGh4RVEKZ0dMek9rSmhFSUIrbFZ6MVRFTHBQdzcvUEdSUVl1blR5VHBncitjU3kwQXZKQnVmVDZvQUwrekZsSXBua2t1ZlRsRTlrNnA1SWNudwp5MFQ5YnhJMUx5ZkwzOHJIWkpJUTBGMlZtVEFLSzV2SnpDaGk1TENaMkVKbS9qK055MFJ4R0VnMkE4R2dJYWkwZkJJVnZqOE5DRjVBCmdlR29lUVdVWEJnbE81a0xUMWFoMHlwd0dTWmNaZzB4cTVhVVhVZk9hU0FEK3VRN3FBZ24xTDUrQ0EvUGRyWGdBWDE4d1h3QWNrTDAKU2UrZ0puYlJVam9ZNmUyTW5CWWMzSW5OZFdEUzJ5aGZkN1BlYWl1S2RmQ2luZEszYWhpbkcxamhiVVdIdXJtQkhRQkFBdjlXVVpoVAo5S21Sa1NlaDBwZzRLaDFhQzR4RlJwRW9LQW9CZ2FTZzhTUkVBUjZXVHM2OUlNWjlvU045WFlGTk5pUGpxd3BBQ1ZaMFVqVW11UVlMClZWc0F5ckNoQVhTU0d5Z0p6ZlJMVGZTNFJscGlQVFdsbnBKZWcwdHFvSDF0THpybjRCKzFjd0NBL0pwWndFRCtMc0VodXdBNmh0cEYKZmc1eG9Fc2V0RC9OSUtSVDZ3TlFRTHNTRkFndFQ2UUo2dEdFWGxXRjNkQUVYeThONmxPR2Rxc0FnR0w2eXFLdUdvNjJLNCszeXQ5cApGbjlxS29xVFU3T0t5SEE2TVo5S3lxSVJ3R00rQVo5RndpVVVrYjZTMGYrb29MNVZqUHRFaFA1UWhudGZTMzJuaW5QQ0xvbnRVSVowCnEveDdsQkdkQ2xCNGx3cDg4UkFvRFRRbnFVdmpHd2VDNk5QN2NBUUltZ1FOQUhUUmhMbG9SbDh3bzcrcFJGMnNRbDZ5b3VKc3lQaHEKMUNVckFnUzJmU1g4VUh3dEJwUlFnd01sMXVKQnlUVkVVRUkxSWFtYWtGeE5UdGt2dVpvU1gwMitWRTI2VUlNRG5iZmh2N0VTTGxRUgp6MXRJQUZoZkcwbGZhb0ZuQ1NscWJLb0NsYXhBcGloUkdYSlVsZ1NSSWtHbEZpTlR4UEJVWVM1NHZDVE0vVm9FLzFLS09Hc2hINjJqCmh6ZzU0RHNlMEN3T2dRQWtnOTdmL3dROVBnejVncTZLcnhZRzFBTXRTY09zMG1pQkpBQWovVFZTL1J4QzhVdEM4ZSs0QWordElMeGEKRkFYb1k1ZENDNjg2NU5BQVVxTWdyRmtVNDFSR05Ta2pHa1hRT1pkbTBZZU5oVisyRm4zVXhYK3JsZnRwRTU1NUJXbStsMUl4bUNYcgpoeU82VVI4NWNWRXQ5S0IyVG5nTEo5Yk9QdHpFakdrVEJyakVRUzc1RVdmeEdYdlJ4OTNNODNkWnB6cmxJVmJXUVQzWnI0enBWMUVJClRmMEIrcW5pSEt5VEJBTDl0T2tpdThyRHU4c2hBUFZDRTMxK0NxQkgrZ20vYWc2OVpvaThaWW9acURvOFlvMFp0VWFQVlVhUFYwVlAKV0NKR0t5S0dES0czTklFOVVqOG4vODA2OW9INndzQW1Ya0FqTTdCRkV0Q3REdTVWUm5XTERuZHlZcnNFc1ZjVUYzdHBIL1dTZzl2WgpNVDNLVTJQbXNFbmI2YjZLenp2RlIzdlZzVjJLYVBCWHMwc1ozU0dQYlpNZGJaT2Q3U21OYnBkODA0VlJET2UwZXJJNjNhbTZlNG5uCm5kbEJUdkZoaHppb1JYaWdYUlRRSVFsemlTUGJwSkUzdGVFVGxWR1QxdU1UMWFjbmFrNU1XR01tTFpIVHBwaEowN0VKYzh5d01YekkKRUh5bk5IcWdQS0xmNEg5RmZzQkZPOTViYUwyTG1QVmkxemZRUzZ2MHJSbmU4bFRod3FKa2FiWmtaMUp5WTdpWWZVVjRGdnhqcXk4TQp0a3VpVzJTUmR0SEJGdjR4aHpyRUpRdnM1QjdybEozb3M4WU0xTDA2cmo1enh4alZyZkpyRmh4c0ZBQW9nNThDTUJCMHIyMW5DU2pZCjlkQkEwSmpRZm9jNmxERXUyV0dISkxKVkZkRUJYVWYyWlMxYmJxSlY2TWlWTW1LamtHNFhGdHBFVExPWVlaVXphNHBwMVNyczJGWDEKMm96Wk82bGRtRFFzVEpzV1pzMWVkOFdxMjdReXA5dGVMRk9NaWo4ZTBMK3oxdnJlVHN2cHRaYUdWZkcvTEJmWnhobkJ0eVR2dHZNVAorMVhoL2VaUThQMjhianZaYTMzclJsblVIZVhCNi9velYxVWx3L0x0ZGVOZjE0dS9YWkp2ZVFCV3FyM3VCcStuMmV1cDNWaXMzWFZYCkx5MlViU3hMLzMySi81ZDVmcmRibHJkUWZtU3AvdkJXMDltVmhuZTlEVWU5VGNjWFhPZm1tOS94R2lQV1pOU1pFcmRIdTdkWXNycWkKWEY4dVcxeFNiM2xMTjcyR3pVWDF3eEdhWmVubXNtaHpoYis1d3QxY0xkcFlZVUV0Y3pZQWNRQ1NvRUdkL1hHZGVRdlVRam5ZdWJFcwpCeTlnWTBrSkRMUzFhUHloOHUxbC9mYUtHb0xPcW54M1RieTdKdHBkRit5dWMvYmo3VzN3OXphRTI0dTYzZVd5dlJYRDduTDU3cEp4Clo5RzB0Mnk1djFLNXRhcFkzZVM3OTRnalB2ZnNBcTlrak82bWpHNm1EMjZrM3R0SXViTUpHYWgvTC8wMk5EaVVkdk4rR3JTeGszcHYKTHd0ODh2QmU3cjJ0ck1GTkdORFB2VjBZMEE4dzBQQ0RuUEh2OGlZZndDZDJZR1AzczMwQUd0eUJQbWZ3ZnQ3Zy9Yd1EwTS9nTm54dwpKM2ZrZnY3b0F3U3cwYjZRY2lmMmtGUGZJY2YvbWpYOEFIZDNBK2IrMTh6cDNiU0Y3eTdlL3orWmk5OG1MdXpsejN5UEdMcWY2TmxCCnJ1MlM1djhqYStjLzgzdnZVNy9rc2Q2RjBkSkphUmhHRGdtNjV1dnpSK2UvL2dGQTJUOEJVRFlFSUhJbUFGQU9MdnVEUE56cnFTSncKVUg4RUlPamFwWGpEUHdYUUg5SmJYa3V0ZnpPKzQwQkNmUVpMN2xMUzlHYlM2V3ZNZzdkRVlkZkFtMnhKK0ZVK3FwNWJieERXVm9oYwpTa0d6VmdRTTlBaEE5V3FCYnhBSUFLaGM4aEJBTWdGRHhLTnpPQlEybTB4Z0VmRk1nZzlBZVBaREFHR1pCZWVwbEZjeUZVOG1XWDZSCkJLMTk4ZXdsMDdNcG1zZXlTbjZPVXY1R2JBNTEybU9HWERIdWhpaXZPV0pCSDdHZ1BRSVlOR21KY0J2QzUzV1JjeFduNXh3bisxc0MKNnF0ZXBkaGZ5N09INWx5T3lPeUx6dXMrak9vNGh1dyttZHNiaStnOGdtdy9pbXlOelc4TGhiVy9rV2IvVmJMbDJVVHQwNG42ZjlxVAo0TnVWQUUwR2VqWkIvMXhLMmJPcFpVK202SDZXcEhreHJoeXc2Y2swemRNWjJtZFN0TThuYTM2WnJ2ZzFUSG9XajBxblpsTVpHUXhHCk5wbVJ3MlJtc1prNWhhei9Ga0JGMFBKYlNPaitJSXg4Q2oyZlJNdkQwNkJWdDFFMExKcUN5U2NoTTZsNXlieThsRkowaGhtVFZZbk8KcnNmREd2QTVqYmpjWml6Y2pvSGJDL0tjNkR3bjhzZUpQai9RQjlFS0dJVFBhZC9mYnFGa2R0Qy82V04vZm8zNytWWGVWNWNGYVoyMAp6RFpTcHBPUTNFYjVvcWZ3ZUJjbnVGM28zMWtDampJaHJSeS9MdTdCYnE1ZkZ6K2dYUkRVSWdMditzN1lXQmx5R3BGTm9OSXhBRUMrCkVTQUtFWWtnb1hFVU5JS01TT2JqdnpCeVBxd3AvS1NTbUdqR1hiS2c0aXJSQUVDSnRvS0hCdG9IVUdvTkFVRG5HeWY3aTFiZXA2MzgKUDdrNGYzWVduWGNVeGpzTHYzSnlQblR3VHpUend4czUwQ213SmlZSUhHdDhBRG9JM2tNNjlxZmtPcUZCOTZBV0ZjZzM2d0Q4Tnh2VQpxUWIvNllYMWFzSDc4SkFyNnNCZVJVaVBJcXEzTkxaUEY5MVRHdEdwQ2U5U2hGNVJobDB0T2RvaCtkREsvVnJGaUJmUkV2bjBiOFRVCk5DNzRnUkZTeWRnTEF2TEhPdFp4QXkxTVI0Z3NKY1NZNlVjYUJPQUlGZDR0RCtwUitQVXAvS0N2clBJVjBLdnk2OU1jN0ZYN0N1NkYKZmdtNlpWRzNET1RmTFEvdWxvVjJ5eC83c2hRRCtscVB1V0RBWEt6QVhESmhMbGtLNGlveFB1NGtWcU5Bank2TkF5VldJMzJCblQ4dApvUmFWRE4weHFTQ3RHbnBNcWNFbTF1NVhod1FsMVQ4OHN3aDlsL2NIM09Lc2hOUktZb2FKa0dyRUpab0trc3lZdEFwTWhoNmRiTUFtCjZRdFNkZWhVSFRKRmkwcldvT0tVaVBQRjhBL0xNS2R0bEFoSG9iOEx1aWRRYUdNeEFOQWg1NDhBK3FsK1FLSGdtTmNrOVc4cTltdVcKQk5jSlFzdjQvZ0xCSHlpQzE4blMzeE1FTHhNS1h5dmtoS3BFaHl1TGo5U0pEdGZ6L1Z1bC9nNWVZR05oUkxNdzJpNERqeEVPWVVScgpjWFNySnRMQmpYWFJZMXVMb2p0RXNRNUdXaTlGZkFPcnZaMWlISVJyN3FFbzE1Q1h1bENuWGRpb1prYVVuUi9xNU1TMDhhTWNSWWZ0Cm5OaG1ibkFESjZoREZ0MXZQdEVsRGJJeTM5QVREcFRSQUlBT0dBc1BXWGwrZFNML0ZtVlFtemFzeXdEMHN3OGc0LzRzSHdoQWp3ejAKVXdDRjk1c2lCaXFoK2M1anRwalJ5cWhSRXloNnpCd3lVQnA4U3huUUt3SGZuNE1OUlg3MVJRQkFCK281Zmcycy9RbFB4ZjVPVVVTYgpJS1piRU5vakR1aFRoSGZ3bzlxb2h6cDVvYTJxcUd1YXdEdjZxQjVEZEk4dXNyMHNxa01mMDYwRE1EcDhXWEc0UnhyWnhqdlJKNG0vClZpUWJ5VzkxcDlsbkV1eVQ1KzNqWDlPdlpSMXRwSWQxRkFlMjhnKzE4QVBicGVFOTJzZ2J4b2hoVytSY1hTUjQyemRqT3pwcFBUWlcKZVhyQ2RtcXFPbmJFR0hCTEVYcFhIekppQ0J2UXgvYVhoZHpVSExnbVBOcE9STjdnOXMvU2h6MlkyVVhrK2pKdWZZazh2MHB6TDNJVwpwNlJEYnVIeW92cTJXMG02d3ovZXlndHVVb1kwbHg1b1ZvYTBjeU5kbkRkc2hOZmJ1ZUV1UlpoVkF0NWVCTjFVbkJneUg3a0xFS2w4CjA4NS9vNEVIK0J2U3FnaDI3aytJOXJVUElOOC9Td2hBbmRJUVIzR29ReDdXb2dsMXFRKzB5bUxicEFsT3VlbWFyTEtlWXlrbVZYT3AKOWJJaW9CK1RDRzhURThvRU9aY2J1VXZqbGsxUHpacTdibTIrYVhHdXhqTnRXdk9VcmN3WmwxZEtyMC9MTHQwcGVXdWo0OHlXNDh5bQpYYnlrdmUwcHlSc1ErdlhMdzYvTFQxNHRDKzYzbmJqY0ZINnpOT1o2dzVsYjFvakxpbmV2bEZxbXBKc3IxUFYxM3RheWFuVmU3WFViCjFwYnJsOEZ2c1ZpN3ZtamJYTFl0TFZjc2I2czJkNHRubDJXYStkSS9McHJDbHV2ZVduUzg3Nm1NOFpvT0w5ZS91OXgyZExreHlxdksKbmk5eXpoZmQyNjY0djZMYVdwRXRMeXJYVjNYcmE4cjc4K3IxQmVQV3NnTDhGdnRucGpSYnl5VmJxOEt0dGNLdGRmcjJPbVY3bmJTMQpUdDFhNDREOW04dGEzNkRPeHBKNncxdXg2YTNaV3F6ZFhDcUhobmxXaXpkWHhkdExoa2Z0ck9oM1ZqVTdxOHFkdFpLOWRUSGd6dDRHCmQyK3pjRytMQWJxL3pRVHRybWp1cjJtLzJ5ei9ic1A0WUszaS9xcHhieGt5ME41YTllYVdibjZ2Y0hRbmYyQW5mV2duWlhUcjRzanEKRjhNTEtRUHpTYmM5Q1RlOThUZFdFMjVzSlYvZlRibTJsM0psSi9ubXR4azM5dEx1Zlpkelp3ODJlQjhBQ0RhMkI1NmJlMjg3eHdlZwplenZaQXh2cGc2dXBnOHNwZDFiVFFQM3I2WGUyTXFIOTk3UHYzcysrOXdBMjhnQTV1QXVkTWhzR0FQb1dPZklBc0NZWE5MV0xIUG8rCnVXMFZYbWl6WlhHMDluSGk0ci9uem05bTNYdndtZnYrTnd0L3lSNzVTOWJFZHhremUva2ptK2l4UGZqNExrN1dSNHBNSmIrYndjeWoKWkJEb3lRUktHcFVNLytrcE1Db2RNcER2NU5jK2dLQ2Q0SmNJMUN3Y09Rc0NFQ2tEaHZjQlNBeU82SS9IRzUrTWcwN3hQQUxRcnhKcwpBRUIvMko4QTVBTVFrTUh2VTZ4K0NWMnZYYkovVHBYV3ljbTJDc29uZld6LzI0S2dXNUtJeTFLLzYveXp2VVdjV3I2MVF1elNTSDBBCmF0UUlIaG1vVHNXdlZrSVhnbFVVYzdVaXRsTEkycjhRak1FcmdnQkVaSk44QU1JeXNRQkFJQndMVThCRWYwYW0vQ1pkOGZNRTAzTUoKMnNmalZFL2s2bDhzVWoralZjUjJ1NDcwTzQ5TU40UXZtSUs4dXVCNWJmaGNlZFIwWlpTbkN1d0pudGNIekdxanAyekgrbHY5eW11ZQp4TWgrbTliOG0vUzZRR3huV0VGbkZMd3JLcVB0U0g3N1VYU0xEMEJIVUsweGVhMGgyVzNRU3FqSmxxY1R0YzhrbDRMMjc1Z005VnlxCnp0Y3pLZnFua3FEVkpKNUpWajJkcXZoWm11em5zSkluRVpybmNhWFAwVXQvSmRTL0lqSzh5dFQ0VVVzaTJiSWpRc21YRWxJT0YwWmwKcE5CcCt5dnBzb0IrY2xsc1ZCRUw4VTlqRlNLWUxDU0RqYVN4RVdSMlBwR0Z3TEh5UWRsc1pDNExDV2NqWUVKa3ByWWd3NGFGTmVGeQpIWmdjSno3WGhZTzM0T0d0dUx3MmZGNGIxbGQrRy9ISDJnbVB5dTNFSWFHZDFOUnUxcDl1OE4rNVUvejJIZmw3dDFSL3VpNiswTWRMCmJHZWt0ZEVUV3BtZk50UGZybVdlcWVGRXVnUmhMVHp3ZnR1L2czT3dpM09vQXdKUXNGTWEwVnowallhQjRvS2ZHbzVHdzVCcEJSZ0cKb0E4U1NjUmdTWmdjR3ZxQ2t2YWhVMzZxUlh5Mm1uTFJRdHdmL3NFQSt2aW0rRURWWTBGeGR2clhycUpQT29SbnU0dFBkTXRPZGhlLwoweVYrdjF2OFNYdngreTNDNDgzQ3NFWitRRDBQSEYrZ0kwc0Q0MUF6OTFBVC8yQWpEN3poOUdzV2dhTXQ2RkNqeEw5WkR0NTJCanJrCjBIVzRyY3JRZGxWb2x5YXN1OVEzSlJrVTFxc0p2NndPNjFNRmQ1Y0Vkc29DTHlzRHJ5bERicXFqcml1UGRzbmVhaFMrWDhuL29KejcKdm9uN2xZS2R3aUtuVWdrWCtkUnpTbnFzamhwaG9QcmJPTUZOUW1pR1JwOHFxRThKam1oQlZ4UkFWOEJBZm4yQVBxcER3RDA5S2w4SApldFQ3d3o5Sy8xNW9CQWo4WGdCaGtWZlY0TUQzMk9mRnBDL2twQzhWbEsvVjVBdGE4b1V5OHNWeThxVUs4aVV6MWxlY0JSZHZ3U1ZVCjRrR0pWWVNINXc3MzU1QW4yM0NQU3FpQnZwdkoxWmhVR3dqYWsxUU5EUkVsV1luSk5wSnZXQ2pOQnBWcUpZRUFtTktxc2VrMmZJb1YKRzE5ZEFEM2RWcEJxUkNmWlNBbVYySlJLVEtvRkF6NU1OV0tBaDg1TGN6NVZvOSt0SWtVNTJBRk9mbUNUNEg4QWtOOStnUTNDZ3c3cApvZWJpb0ZwdVdDTTcxTUVMdFFyQ0Zmd29zU0JHSW9zUmE2TEUrcWhpOVdHZDlGUzE0S3lERzlVZ2pYVHdRMTNRS3ZSK3pZSkFaMUU0CitLdldKQTFvRnZ1M3M4TzY2YUVkclArWHNmZUFhaXZQNzc3bmZaSThtMDJ5Mlpaa204YzJSYUJDTCs3MjlKbWQ1dWt1WUhveHZRZzEKQkVJZ2hIcnZFazBTdllraUFaSkFuVjdjeHdiVGU4ZllNOWxKOGo0NWVmOVg4bmhuWjJmM2ZjNzVubnN1Vi9MVjlXMy96LzlYQVdhKwpiR0JmNktYRXRXTVl6aHpKZUs1Mk1ydGhORjF1emN6VDU3elpXUWh1elVnOVpBY0s3Q1NqOU9WK0JockN5QTIzVllVYVZmQTI4c3MxCjJHTXFyRThOR1lvQjBwVDd0WEVDK3FUd3dTcVBrQU5BTlFFRHRVRVdUYkJWNndtQzlzZ0RRSUIrQXAzYTREdU5RYmZyZ0lMdmFzUHUKMVlmZEExc2cyNC8vaUFCbTQzcjFWcHhvTC9OcWgydy8zaDIwNHkyVTMrZ1lKOW9wdmkwbC9yb0tSTDhRWmhiNW1SbUJGc29KUU56NgpJa1EvRTlVdUM5UUxBaDNDVUtQY3o2b0lOUXVDTFZLa1ZRVWJVQVRiS3M5WVJKZjZhQjg3MkpKNytSM3pHWjF6OFExekNmV1BZbHNmCnhvZ21VcTYzSjhOMHBZZytTc0JBQmNyR0R4aXREcjdWSEhLL09maStKbkpHRS81QUhYbS83dlNEcHBBNzlmQ3hLdVJvVmRpRUptQ3EKSnZTKzlzeGs3VG1yMHQvTU8ya2pmMmpFYUVkb2NtTjY1M1RCM0FwcGZTUHY0VjdhL0Q1NmFZNjRzTVJabldQTnoxUTIzOU5lR1pHZwpqSUFweTRPN0szN2JUL1hUYVUvcW1XZkFpb0hpcGFjRzlGVWM2eW9KYitmK3JwOEIyQ0prdE1xM24zdXNnd2J1QjRSZTZOZkY4KzkrCnprQWVYNWluUERTc1gzeXluK1ZsRXFQNnE5d2xLM2dlNVAzZFlHVytJWi9YVlZLdEtHcGdGN2NKcVdvMnNaNkhkelVKNzlwRjg5T3kKbmNXYTlUblY4b3hxYmFGdWViNTZmYVZtNDdGaWRhNStka084TmlkSW5oSmUyaDg0dTluMSttN25tNDgwdVhjcWZVWWw4REhGeVdsRgpvRkdKR3BVSE9odGc0NDBSRGhtNDBPZUhXb1dQcFp0YlpVK1hhV3ZMMWN1emRWdkw3ZXNMTGJ0TExkdXo2djNsK3EwbDljcHk3Yk50CjV0b3F2Mk5abXJCV0hiYmVHTDdTZm5GRmQzNnQ4ZXh5K3p1cnhqZVdleU5ucXo2WllkWXNNallXdWY4enh6bGFGajFiWUcxdDhUZlgKNVd2cnNzMTEvdE01MGM1YUF3UkEzOGJsUUN0cjdKMk5zcDB0NHQ0MmRtOEhEWmE3VzZWdXY1VjBaMTI4czhIYldWSHZMRGZzTERlQgpsZTFWQ2FDZjNRM2gzb1o4YjYwUzBtcTFld1VDb1AwTnlmNm02TWttODhrbS9ja1c5V2lIZkxSYmZMUkw5T2h3VTNxd0RpUS9XRmMrCjJhaCtzcUUrMnRROFdkZnVybFd1YlhObWR2QlRtemNCcGt5dUowNHYzcGg0OU5uNDNXdkRkNjQ0N241dWYvU0ZmZW1LWXpQS3ZoOXQKMjQ5MjdNZTVEaE1zV3pIRGg4bWpCNm5UaDVsald5bTNkeUg2bWRpNUNXazNaWFFqd2JrUTVaajUzUEh3czhGSFYyeVByenFYYjR4cwpKb3p2SlkwZlFobzdUSnJZUzU4NnlMejFKTXVqMjBmWnQ0OHlnUjRjcHVydlVRcVU5WmNKemt0SkEyVzFUZU1iT2V0ZjNaaCtFdk53Ci92UDdtOWRIRDI0OE9JaVpQYnIyNWRQNGhYM3M2bmJ5NEd5dXlscW1IMmRxNjI1U0tUZHdSZEZZSXVZdkJVSC9WUURDSFV2NEl3RDkKS0xyeXJ3RlF2TzdmNGpXd0dQTnZyL2E4Z2VmV0N3Z2ROYVFybGdyWVdJWHZHQWZtNU1KdERKL3hzaWhqZWF1S3Jhc1NlUURvdXd3RQpBS2hGVE5NS2FDOEF5SjBJQmdFUWhVTDhjd0FxS0lNQTZIMDg4WmNKb3IrTDFmNDBvZkxINlpYL3ltNUNXanBDVm50Q2x1cURselJCCjg5VkJjMVZoYytxSWhjYlF1ZGFnbVJia1RGM2c0NGFRUnkzaFg3WWpSNXYvclVQMWkzclZ5YzZPWXh6dEx6TXJZY25kUWFtbU1QUWcKTXI4N0tMOC9QR3NBQUZCNDd2Y0I2TWN4U2lqR0tFNzJqL0Z5b0g5S1VBRDlKRkVKS1ZuMXM1VEtmODJzK1ZWMjFTOXk1RDh2a0IxagpOQVJVOWlHY2RZRlQ5V2NmTmIxK3UvN05QdEVIamVYUkxlVGtibEtpaHBJdnpDS1Z4WmVRMGtpbHVaU3lMQ29sSFZET242T1BSMlJLCmRrbFpGb21TVTFTZVUwakp4cGZuNHR4S0U2YmtTdEt4cXZ3Q0xTNnpoWkRjaVVzMDRGSjZjZWw2WElZQm45bExBRXdEcVpma1ZrbDIKUCtHNWpQanZDSnR1UXVmMDRUTDdpcUl0bExkR21aSFRndkJiMHRPVHlyUFR5cmVHUlZmTXRCUjlXWWFPRksvQlhaZWpyMHR3WjlxWgpvVjMwd0c0SzNGQiswbFIrMGdpbTdoeWZYcDYzb2VLeXFpU2RVWmhId2VESjZBSnlmbFpaWGk0SkFCQW1ENGRPS01yNVVGNXkwU1FOCk5ndk90SkN1MUJQQjZCemJESEZQWWpzK3FZT1FyQ3RNN3NRRGZkNUwrZERFZU1YQ0M3T0xFQTRSMGk0S2N3cFBEd2t1OVFsTzlYQUQKZEN6ZmRzaTREZ1lYN3pheWQydXhsNDRLNk9ka2V3WFlDRzNYc2IwNldDZmJXTDQ2TUNoRGZoVW8zN1pYaE9nVGV3UTNTaEFtS1dwUQppaGlRZ1BmdHNYNjJsNFVISDVMQ2h4V0JMbG00VXdZQUNPa1VJaTJDb0Y1dVpBY3JySTN4dXJ6MFNoa2hvWWdRVFMxK2gwTThJeWs2Clgxc2VhSkFFR0tWZ3lvMjB5UUhOd0cwaWxGVUVKcE13dTh6ZkpvTmJvR3g4OEVOQVNMTWNDSEtCV1NUK2RnbkNLVU82NUNpbkhPcXkKWUplODlDNkgrQzZYOEI0UC83NEE4NkVJKzVHMDRGTUY1bk1WN290SzNKVnE3TFZhN0hXMWgzN3lielRrUWFySEFNVTBZUDhJUUc3dQplVjVYNE04VUR3RHpXLzFwMVlFZjNwN1lnRTVvZ0dBb3FqNFgvRkNTaHBBZ3gwYXhzMk9wdWUvTHNCSHRKV0M0UmZSUWtUcW9OT0lKClBkOVREL3BQQTREY2hwOE90bHNjV0R2VUtBUFZ4Z2hxclFodG8zNmdacnl2b2IxWFYzNjV2dXdUVFRFVS9LUWhmdHhRZktvSEErK3UKZ01LUU83aElIZE8zbTMreWk0dnNaWHNLSHNDTWJJU1JoZEpYQk92S3c3cXBFWDJNdC90b0djNEt5WGhoNjFoYSsyaThZaXdGYmMvNAp5SkFhMUZzRTdrNXdveUM3dUFGbVVhU3JNbmhBY2FLZUNkT1FmVFhrbDZ1TGY2VWkvcllXc0RNUFNoSHNVeUlIVkVDb3dVcWdBRXNWClVLQzFHaWpJdlVUWkFBWlZJUnlWU0dkVndJZzZjRndiT3QwQWVBTFFqOXZ3b3c2NVd4czBVWWwwU1ZFT0lYeVE0OTFIOCttaGVlbksKVDdTV2VyV1UrUUpPYjZPZmJLVkJCS0FYUUo1QkF3OWhGdm9idVhBejA4L0k5REVBY2QxeCs1QUNMTElnYzIxNGYyMmt1UnBwcnp6cAprSWZiT1JuRDJOcmJjYzJMV2EyUGs0RmFacEo3SHNkMTN2dTA4dGExQWxzME9HbW9QazZRVFJZeVhCMEtEbStxUHV4MmZlUzlwc0I3ClRhRVBtcURFdER1MUFSTkt4S2dzY0xJeTVJN2E5MDV6OE8yNndGRnBtSmx6ZWtCeTBzbyswMXRRMHBabUdrMmJtUkVjek5idlA1Q3QKTDFIbmRvaUxhOFVIYy9TdWVRMWhXbmJlSllUWkpXRFNFRzZTb1ByNEwvZHcvTG9aZnhSVTR2SzV2THE1c0g0QjNDTDJOckovMDE3NgpjbHM1MUUrM25RM3JFb0laQ2F4SEFNVkU2NFcrVUZrZ0FRenFsUUhKcjA4RTVTLzBDWUNRZlVJZ2VKZjJIUjJacThWM2l4bTFiR296CkQvdDRnTCs0MFBUZjk1V3JhN1ViczlXN3N3MkxDdzBMQzAxemkwMmJNMDM3WDdZdEx0ZXVyY2hYbHJUME1jR2JYMWE5OGFUL3pGd2oKY2xJWjRGS0ZEelZCTVZoanBhRlQ0b2lodXRPdUt2OHBnZitZNUQxSHBmcStjR3VOOVd5RmZyQlZzYnJCMjU5WGI2NjBySzdxVnBlYQp0NWRyOTllcnZscXAvY044WGU5NlZlSkIxWVZsemR2em5hZldPNE0zV2w5ZjZ6NDczeEd5MC9qR1F2L1pMeHVqSDlJbVZ6ai9zeUo3CnRpWlkzdVB1YndyMk50bTdxOEtqdGVvbmE4cGRBRHByL04yVm1zVmQyZUV5bEpiMWJGbTd1aVg5dzVKd2J3MkFrWEpyajd1NXhkcmEKWk8xc3NIYldtUUJsRGpaVW0wdnk1VlhsOW5yVDNtclR6cEoyZlltOWZjQjh2STBmbjh0Y3V5czhPR2hhM3VRZGJzbWVMTXFPZGlyWApsK1ZIVzFXN0czWDd1K0s5RGU3VEEvTCtEdUZ3QndBVDgyQ3o1bWhGOEhSVEJzaHBjN05xYzZ0dVo2TnhiNlh4MlVyTDRoWm5jWk44CmJ6UFR1WDlqNkRCcWVPbWE4OEVOeTkxNDQ5MlA5Qk5mMVBZbXRkLytxSC9oVTlmZVZkZjJEY0E2bzF0cHpvTTQ2OU5rNjBHMmN5dHAKNmttQ2ZTdHFZRGNlOEkxdFA4Yjg3UHJnMDJ2RCt6RWo2N0Y5RHovcG1mbEU3VXFwdEh3d3VIaGxlRDBSNk03VDVPbUQxRnQ3bVpONwpPYmNQczBlZkpsajJpU05mSmQvYnk1bzV6SnVDTERwWmMwL1I4LytkcXAybXZZVzFuQzNvdVZhaGt3N1NieDE5QmlDczBoSGI4T2p6CndhZnZEeDkrT3Z0TjBzTXQ3TDNEZ3NkZjVjOS9IYi93SHpHejMyQzEvV2xadUU5SUpWbDRZalNwTklsRWhxQUhqTFZGeEJRaU1iRzAKTkpWTVNvUCtkS2VEdVFFb0tiOHdNYmNRYXRoOEthdjRWL0hTZjNCWHN2bGZOMVQvSzdvYWl2eU5ydjJuS08wdm9wdC9GZDMrT3cvOQp4SGNEK1Yxdjk0c2UrRTFTNjgvanVsSDVXbzZxVENmSEZuV1dCSTdSVG82eGtBNWVtSlhyTTBhTGNKVVZ0VElzQ3BGUnhqTEtPTDFTClZwZUUyU0hoNnFTQ05nbXZRY1NwbE5MVlBHb3RneUtsbHdob0pDR0Z4S1lVbFZFTG9RSXN4WVFzV21FYUhlOXVBWmFmVXBhSkxjMTkKRXkzNVZZendwUnZWTDZVcmZxMlFoMy9aR0xiWmhGcHBESjZyQzVtdkQxMW9BTXVnMmZwQXdEMXVCYzlwUXVlYlFoNDJ3cWUxL2xPYQpvSWNONFV0TmtXdU54L1R0TCtkVitkOW9SV1VOaG1kYXd6UHRBSUJPNDlxRDBLWklyUDRDcHVOU1h0dXByRlpFWnNPeGZOVXY4Y0lUCmFOWExPTVV4b3V3WVdYS1NLdkdqU1ZCMFNRaERkbzdGUHNzWFJFakVnVlV5VkV0bGdLMHU5SDVyMkhLbjMxWmp3SnJtOUZ6VjIvZkUKbjAyd1loMmxOd2VMTWt4NHZLWWdWNVNXVFl2RFVCS0k1YW5GbExTaThrd1NQWWRhbGxOT3lTa3JkNHVhVzFxUlM2Ym5sVER5aU96MApRbTRHbnArSkZXZGo1TG5veXZ5OGFuUmViVUZtSndZb3F3dWIxWVBMTVJCeWV3dHorNGg1L1VVNUpzSmYxNThDRUQ2N253aW9LTjFNCmlCOHMvTVJaK3VvWUkrU1dHSDVYRVRrdURaK1NuSmtTL1g1SUVHTmdwcXRMMC9pWXBQTE1IR3IyRlZWQlpBL3hoTFhrK0dDWnI1SGgKWitCNEc3aUFnUkRkN0loV3hodGE2aWZTNGxnbU5vT0NCc3lhU2sxTDRHWWxjTkVmTk5IT21FU2hQZXl6ZXNwbmJVVng3WVFrUTNHUwpvVENoRzMxVGowM3BKVVQzRTc0d0ZVWTRSYWVHSktlYzRraXJLSHhRRkdZUmg5bWtvVllKU3M5SDl2Q2dmZ3dka0lmaFpCc0ZEREdRCjJzdU90NVg5cnBYOGNnc0ZJcUZXbWxjVDFhZUY0ZHZDZ3Z3YmJXd3cva0t4SmQxUVZnclNJRUFaZWZBQm9lK0FDRXFZTndoUHRqSk8KdHRNUmd5S1VTNElha2lKSFpBSERNckFPQmEzMmNRTDByRlBOOU5jcUtaOHdpNk5JK0NneTRUS3Y1RUlkTGJTSEF4dmtBK2hCT2lSdwpoeFFJWUEzY0xnZjBnN1NJd2N2ZmYxRGtaeEhCckI2L21CZ29jRWdaTUt4RURNdmdJNUJRUTdJQXB5VFlJWG5wUFRiZUEwRHZjakh2Cjh0RHY4ZEVmQ05FZmlnbytrV01CQ1gybXhIeFJoYmxhZzdsV1czQmRVeENsUmJ2dFFIOWtvQmUxQkw2VFRlZm1vUjhDbmIrazd3RlEKWW1NQjJBTVVuOVZRa0tERnh3SHk1V1RHVWJJK0ZoWmNhaUNHZFpVRzlVQzFvZUU2dGp2ODJWMGgrb1VkU01jQjlQTmRBQUlDNHgreQpuUkhZQmdIUXA4MzRLeTNZYTAwNVVZMXBjYTNwbWZwOHpBQ2VZQ0YrYkNWSEdPblFRTmpOUW5ReC9IcjRKOEJ1dTJoZ2ZQWHBaZmlZCjJINkFnWHBvcVBieTRDNTZXRDhyVUYvMmVuOXAvQUNoMkpJdEdzcXV2b1dXVGVZeVhEY1RiWVIzOWRoVDNaUVFpd2hnQVZTUXBwVUYKMDlDOWEwbmV0ZVNUYXZMSnVuSndaOEM3eFlGR0tPN0hnejR2Nk9kN0FBVG9CMlZ6MDg5UVRlQ29KbkJjRXp4WkJ3QWkrTFltNkU1TgowTzNxb0NuSWtlUm5FOElHdVA0V1BxQmc1SUFBWm1DNjcxR3FienZOdXgwS21RTDNIeFFLQTZUbnd2dDRxRUdodjRrQjYyZDQ5ZEM5CjlSei9mckZIQU14RDdOd3dCeWZVeUkzczVudzBRTVpPcHl0bTBycm1pWFdQbzlvV29uU3J5WldQYnlvZTU4aG5zK2xmb3BPRzBlRlcKU1lSTEhqRmFIVDZoQ1FISE5sa1hlcXN1N0xZMjZFRmppRHNoSHpXdUFMYzFvTFRncVZxZ2dEdHQ1NmNiL1NmRW9SWk9nSkVKR3lqSgpkWlIzamRObkZoVXJDK3JITTlVUFp5V0xTK0xaT1lIdVByZjBQanZkd243WHhBNDJDNUZXVlloRkZURW9DN1pJL2F4Uy94NG1FS3lICkFTVUdkdE45OVF3b09NekE5RGJ3SWZ1cVhRWWVEMTh6MTYrZkIrL2hnWWZRdDVNSEFaRGJLZ3ZPZzU5ZTRKRUhnRHpKQzM4Q1FBWjUKYUxmZ0k2TUExMHB0cjZQY05uSVdaNVZMQytMYmE2emhKZHIrb25SL1VUNi9LTjJjcjFsYjBpN1BhYmFXZENzTDFRdkw0dldOdXBZSAp0ZTh0MW51dE5JZTZha0ljOVdHM2F2M0hLRUZqbklqUlZwU3pEalZhR3pTbUN4N3RpYklyZXg1WHJhM1ZIZTVSai9ZcWRtWWJucTV5CkQ2Q1ltOGF0dWFaL1g2cDd1cWFhMmxJb05tcHhhNjNKajlTdnJOWkZMRGVmbTI4N3ZkbDVacVg1MWNmMXIrOTBuMTd2Zk9PZWhQS0EKTWI0cDJ0aVZiYTdKdGxjRWdEbjJWK2o3TzR5OWJmYlRWZUhUTmZiMlp0bjJCdTNaZXVYaUJ1UFpxblIzcmZMSmltcDlXL0wxa21CMwpSYks3V2IyNXl0N2ZraDF1MXV5dmFmZFg2bmFXYTdlWFZMdXJ5cDNsbHYzbHh0MDUxZE1GOVg5c05qN1pVRC84a3VJY3oxcGR4U3h1CmkxWjNOVSsybWc4WDFZZGJ5aWU3aW9PMXFpZmJpcDFGOWNFYUM5cTQwUFRObm1aM29YbHZRM2k0cjRTTVNRc3RoNnU2ZzNYTnpycDQKZDBOOHVGY0Z0TDh0bk5zdWNlM2R0QnhFdS9hdXVIWS9NMjU5MkR2L1VjZmR6MlQ5c2JwSG53MXNSdzBlWERIdlhuRWRKVHFPRXUwSApzYzdENjBOUHJ6bjJrZ3d6R1JybjlmNkhjYU1ITjBhT011ejcrYmFkVE1kT0lxQWx4M3FpY3lOWE5wQ2ptYnB1M1BqY2NSanYyczl5CjdhYzU5bEpHRG04NnZvcUhQR2hQYm93L1M3MzFoNFI3MjRWM2Q3SW5qbUx1cktYV21Fc3pGTHdiMHFvMzg0ZmV5QnE2bU9rNm5lRXEKVlBOVW8ybTZSMWNkYTlmdVBQdGlhajltY2pmdDlsSE85R0hTdmIyQ2gzdm9ld2VKMDd0WkE3ZEkwc3JNSXVJSFpFb1NtWkpTUkVvaApFSk5KeFRmSkpla2xKYWtrVXRKZkI2Qi9UUUFBVlBVQ2dINGNWZWtCb0o5SE5RRUErdTJOcmhjQTlPdkVqaE0zVEQ2eDdjZWlPazhRCjZyT2JHUTFxb2tSYmN0NVY0VFBPOUIzbUJ6a0ZYaE5NMzdIeUR3WVk2QjRCcVpNcHIyZDF5dG1kRW1hTEhGS3psTjRnb3FvbGpFcCsKdVl4VklxR1hTR2xrVVFXSlZrNHNwT0xTUlpUUHV2bFJPbTV1QmFFSWwxZFloa0dYNTJkVGNzL25jSCtXVlA1UEpVcWZwdmFJeWZhSQo1VWJFWEhYUWJBTUFvQmNLZXF3TmVLUUY5T09wOGhYNnVBNHdVUGhpNjZtRmxndXo5YS9jcTN4dFNoeHNyd3VXcWw2aDE3N0xxL2xRCldQV1JwTzZ5VFB1cFFuV2xXaE5kcFkxVmFhOVZWWCtzbGw2dUUzeXM0VjFSOHo5dnJmaWlqWHE5cmZ4R0J6VzJreHJYUTRzMTBHTjcKR1IvYkJlOE55MTZiVkYyNG83N3dVSHR1VVJPK3BrSnRTRjY5TFh4N2l2L2hHUE82cXlMSlFzb3dFWEw3MEFXR3ZId2ROcWMrTDB1VgpYcURJSWloeUNZcDhuS0lBcDhJUUt2UHhWZm1FYWpTaHRnQ3Z4dUMxV0Z3OURnamZoTWMxNDdFdGhJTDJRclNPbU45VmxOdFRuS2NuCjVmY1hQcGVKNkJIYVhKUUhORUQ4UWVXYUMvOWNnSWV5ak1Rc0l3R1FXWW9aSDIwbGZlU2l2ajdDT1Q4dVBEMHBqNXlTUms1THprMksKWG5keFArNm14VlFYSmZNeG1jejhxMHJzaFk1Q3VKSGtaUzZEbVpoZ051dlhEeWEzVEQ4ZEk2Q0RIdDVHUDlkSWVhV08vSmFhOUw2MgpOS2FtT0thSmt0RE0rTkFrUFcyVEIvZXd6aG5Lby9YbE4zVzRORDBoMVVCSTBlTlQ5VVh4aHRKUCswcmZOVlBEbk1KUUd6OWtrQjlxCjVvV2FCU0VEb2tDekFHSGtBdnBCZEhPL0MwQW4yOG84T3RGYTluSXorVGdBb1BhS2s4M1VFdzBVNzRZSzd4WW1rQzlrQ25KbmJmZEEKNWRtZzkyby9CNnJGYklIQ2s4R2MzTHNGQWlDb1JyTmQ2TytXbjAwQUJqSzRHYkkrSVBWTWVDODdySTF4VVUxOVcwRjVXMVYrc1pFUgozTWZ6dDR2OHJVSzRRNHh3UWdEa2I0ZVdmZzZwcncycTlPTTM0TTd6c2dnQkFJR04va055eElnU0NlaG5TT0doSCtTSVBNQWxDN1NMCmd5ekNsMzdQd1FNQkJnTExkN2hZb04vemNFQWZDTEVmaXJDWHhiaVBKRmdBUTU4cHNSNmIwSFUxeGsxQ21PaTZBamNKUVI2eDU4WWgKZ0N6UFNlaDV3SkM3b3ZiM2NlY0g5VWNBYW9TcVQ4YTN1QjFxalppRU9teWNNdjhhTHlPV21ubVZsL3R1SmZaOFMzRm9kMWxnRHgxSwplRzd6bUg4Z0FIS2pqMGNRQUlFVmJ4M2IydzFBWVB4RHRMTUMyMmhCclJXdk4rQSthU0lBdElwdnlFcnN5TW94WVlxdGVPb0FJY2FJCnZXaWtCTHBrSWVEVUdIbitlaWpIM2w5UGcyb245cko4VEJ6ZmZvaUg0TzNVZ0M1R3NKR0g3T2NFOWJJaTllWHZHSXBTQnZFVkk1aXEKOFl5R3NVVEZHRHJMa3ZmbUlEbHNDTExDbld5aWVWZVh3bXZMWDY0dVBxNHU4WUU4bDl3QXZSalpLME1aRlVFRHorbm5ld3dFWVpCNwpDVVo5QUVBb1YzWFFpRHBvSE9wdkNoUXlyUVZnRVRCZENWbFdocVdBZm56TS9KUDlISVJWRWpKY0dlU1FnMUVjaXNudlpQbDNjNkdNCk9RTWZxb2pUdzBjWjNXVVlESnpBUVREZVYvanFLN3k2S255NjNiMUIzUGJKQUxNazJGNFJaT0svMmlmT2QvQ2E3bEJ0RDdDbSt6bTYKUi9udGkwbmRDd2xOQzVubzRjd2JqcUs0U2U2MVNjbWJEdW5wOGFwVDQ5VVJrK3JRS2EyYnpPcEM3bWhENzlZRjNhc0ZmQVlmQWZUTgpoVHRFSWVPVjRBdUJZK3JnOGFZekx0WExkbnJnSUExcEpyM2hJSFpPQ2g0OWxpL2ViNWg1VkRPN3BGeFpyWHE0ckttL1h4VTdKQXExCmNVOWJwVUZteUl3Wk1GZ0pWZ0pOSXNENGZnNWxnSW1QN09mNmdVc0RHSzZiQmtqT3g4Q0U5YkhoRmluU29VRFlvUnBJU0xzNHdDWkcKR2tYdXEva25BbWZESTQ4ZHlDTVBBQUVoK29YSUFZbXZTWWtZclg5MWdDT3gwWmZucGJzN3lyc0xiUHlYZE81NDJlSmQxZHA5K2VLaQo0c2xzOWQ2OFpuVzVZWFd0YVhGRnRiTWtYMTF2RU15cEx6eXFPVEZSQTk3eXAyMUs1TFRpNUdSRndEQS96TklJZDZvREpyV0I5bzZNCkFkSFlsdncvdDFYN3M2ek5OY3JCcG5wL3FYZDd0Zmxnb1hWcnUvNW91L1pvb2RJNFZ4bTNVUlcrVlhONlNSdTJhZ0R6Mmd2clhhZFcKV3lQVzJsL1o3TG13MUJ5K29qMDlMWkRlNDYrdlN2OEFZR0pKdGJOUmM3QmY5YzJxOE90TjNzNW1CZEN6ZGZiWFc4ejlQZkxlTnYzWgpxdnhnUi9Cc1JiaS9KdGxkazI1c0s1OHRxUTdYYS9lMkcvYlhaSHVyOHQzbFNvQXZ1NHNRQTRIdGgrdFZUNWJhbnE3Vjc2K3FuaHhLCmx2YVkzYmZpdGJkaWRHdlpDMXRROXZqRDNhSzFWY2F6RGZuT2ttSi9VN1cvd3Q5ZHJUdFlnL2IyOVdiVDBYTDc0VXJyMGJwaGI2MSsKYlZXenM5cjJaS1huNlVMcjA2WHFvMDNoMWpacmRxVmtZajNsMW5ycTVIYWE3ZURtd0Y3UzZIYlN4RWE4Y3ozS3RoK3JYNGlyZHFRUApydDkwN3FjTzdrU1pkcU9NK3pkNmo2NVlkcUJFc01rbjBjNkRlUE5xYnN0UVNvODlzMjhwZW5BbGZuQSt6cm9TWjltS3NlekVEdTJuCm1lY1RxcHlaeHAxTTg5TnJ4cVBybG1lcGxxTVV5OU5ZeTlONDE5T004ZTI4OGQyMDRhUHNvY1BVcWUzOHU0ZnhkLzhqWWZhLzhheCsKVlVSV2YzRE93UGtjeTJ0NTFyUDVJeEhGSStsYS9rMWxpZFJKdG14Z2gvZWliajJOdS8wMGZlem8wenRIMk9uZGpGdGJ1ZFBiK09uOQo3Sm12czI3UEZiYlc0ZkhFYUNJcG5rUjJSLzhRVXdBREFRQXFMazc4aXdDRVQ3NllWUUlBeUozdnJmcWJtTXEvaVlJQTZFZFJOZDhECm9HTlFyNG5PWDZUcWZoWGI1eDNUNFhWZDkwdUM5b3MyWGwxRGFhdVMvSzZEQ3B0a0hwL2dCUTRKNFNNY3IxRTZmSVFaUE1JUHY4UDkKek1rdDdPYUp0ZXhHSmFOYlF0TkI5Rk5TSjZ5b1pWTlVqQklaczVUSEtxbWdFOGtWZUZJRjRXTWRLL0J4NWU5SDVCZ2FrWWpQSTVSago4YVQ4ckpLY2NCejlKSXVGTU5aSFB0S0ZyelFHcnFnRFpqV25IN1VBeWdtWjFRYlBhTUFTS09pUkdxeUh6ZFdmblc4NHZReVpmTUtYCk5lZG1sZS9jRW4va29IM1dSN3JrRkY4eUs2NzBxZEo3S203MkUxTUhLSmttZXA2UlVXQWxZY3hVakltVE8wakxkQkN6WE9oOEp3NXYKSXhVNEN6QjJMTjZPeDlxTDhvZEswc2NwY2RQVTZMdjB0eGRrYnk1VVhWclVnbCtKV0cwNHRWSjc2ckg0ekFOV3ZJMmNiQzFKc3hUbgptQXZSSml6V1dJQXo1Z0ZsRGhabTl1T3k5Wmo4Yml5bW00RHVKdVIxRitiMEZPYjFZdkw3c0huOTJId2pMdCtFenhzZ0FPVVBGaFlNCkZBSGxEN3BsS2M2MXVtVW5GUXlBandyQkZ6ektzendYMmtMNFFUM2Z3M2ZrQWFOTWMyRTJaQm5DUWU0d015RnhzT1M2bGZLNW5SWTYKSlE2ZkVJZE5pb052U1lET0RBdmU3K05jYTJHazFKUkVOWmErb3lPSEdrcGhSb3FQaVFremduR0s1eTRVVEFmVGRUQmcrWUdwWUE4ZApDcGJ0WTExcW83N1NRMyt2aDN2Sm9Rd0UwOEpPMnFtdXNxZ2VTbG9QRnFLZlhtS3lnWnpZVi9GNUwrUDFmdGFaQVg2b1F4QTR3RVgxCnM0TDZ1UUNBZ2t3Q1JDOFBwbWNqdXZoUVAzSWR5dzFBRlM4WXlNdnRhampSV0hLaW9kU3JpWEt5cnV5NEJwcmtlelhUQWR4NHQ3c0IKcUljTHhpRFBleFVjRWhoTS9XMHlwRTBKWHI5Z2ZJU3lWWXc4MzBFdWtNOEF4OXZNOWpheVlQMHNlQzhMWVdENU9rVndxekM0bngrbQo1NFlaZUFFREFyRGx4S2pFUXo5QU1JY0lacGNBMEFGTFg5dnpTajkrRmhFVVZPU0FQR3ZJVVZYQWVCVjhUT1Uzb3ZENzF2eURja2hRCkZrR0FpZmZTR3h6Q205ekN0M25FNStJV3Zjc3Joc1Fsdk12RlFhNHhQdTVERWNBZy9NZFN3cWR5NHVlVkJlNXdhUXdnSVE4R3VaWC8KcDRXVlBFSFRubFlqMzJlZGJ3VlZtZnh6SlRWaGtscXdVQUZLS0o2NklLRUJFMXVOanBabXgvRnlvb1c1bnlvSzNtd2doSGVYSVhwcAppRzRtc3AwRnhlam9vTFA4WFFBQzBBTTJlcUt4dkwvMWdybU5RTFNRRnRxYkxmU3JUZFRveHFKcmJkam96b0wwemdKc0t6cW5OLzhkClkybjRoUHowM2Vyd1lSbVVTdGN2Z0VMdWV4amdZdmlhdVZEWmdFNkdieXZVblI3Y0V5RmQzS0Fld01XY0lEM3RvcUU0ZWdCVDVNb1YKakdkcUpuS0k0OFQzaDFtb1FiRjNCODlIUzRmVmtIMXFTYityS1FZM2gxODdHOVVqUlBWS29INVZmVEpJWmlXUXh4SDJKKzR3c0xRbwpFUlpsZ0wwcWNMZzJaRXdEVlF5YmNCZlBtS29ObnE3MjBBOWdZVTloYjhEVWdVNVY4RkFWeXFJQWc3cFBGeGZXQS9sZndaM25aK0Q1CmR2TUEzNFJZVklFRFV2OWVMc0J3WDBPNVR3LzF1d0FFbGdDQUVJT0NDd1lleGk3c2ZTQjROTU9hK1pJMk1WZGtYc3Zzbmsvcm1VdXAKVzhURURSRXVPZ1N2VERlZG0yZ0tIVzZJbUtnS242Z09tYXdOdXFYMVJDYUYzRkVEb2FZVWlGRUp6TWIyTWpGZ0E5eEFweUowMU4yegpiRmdiTWFKRU9kbkJsb3JBM29Kc0YvSDJYUkhVaHZOaCs4S01adUd4ZlBLaFJISkwrT2t3TDlRaUNEZEprRU0xOEVFRndpUU5NSXRRCmcwS2tSWWl3eWdLc3lpQ0xDR0htQStMeDFqT0F3RnNBSERuQW5jQ2h5cUJoRldUK0dlUWlIQ0p3b3lNRzNjVkFEWHp3bWdDUElsUS8KRXhMWEhSZ0VBZEFMQm5wQlAwRGdiUGdNOGtJSGxLZ2UwUWNqelBhN1pWL2VaOVRPQ0YrZDFsN1IwYW9VUmEzSzdJa0oxdDRqeGVGOApEWUNHcFJVRmdJK1ZoWnJXUmZXSDk2SEhMTmhXQTg3UHVSSDU4UkUyRlAwekpBOGJrWVJNYXM0NWxBbkQ5SHV6ekkwdHl2b2E4K0JRCnVMOGhmektuZnJhbFdGdXQzZHlzMlZ5ckdWK3VZaTdWL0g1RkU3RGFGTDdhOU1wcVhkQ080Y3hLNjZYVnhzaTE1c2kxbmpPYnZXRHkKSFRrdlp6OHMzMXlwL2EvVnh0Mk5qdjlZYS8rdmRlWDJpdURycFpwbnUvSzlaZHJSRm1kL203Kzd4VGpjTEh1MnhkMWZyVHhjbGo2WgpGenpiVlc3dHlMYTJxNDRXcTU2c2F6YzMxZisrcmp0YzFoeHVxSjVzS25kWGxmc3Jta093enpudDNyWm1kN05xYmJIcVlLZDJmYVZtCmVESi83RkhPNHRlNHBTM0t2Y05VL1VUaTlDM0t2Ky9WSGF4MEhHdzBmYjByM05tczI5MlM3VzFVSHUxS2R0ZDUyeXVWZTl1VmUxdXQKejVhN0RwY2E5MWRxbjYzVy81OGQzZE0xN2VhR2VHV1BzZkVIek1wQjlwMnRKRUE4cHNQWW9hTVU2MjZjNlVtU2JTZXA2M0ZzclN2TAp1WmsxdEo1dVg0bDE3Q1gxYmtTYjlwSXRXd2xEbXpjY3l3azk5NUltOW5DM2R3czdiVGNaelNuMHlsaTIvSXRXVzZKbEk4TzBuMkRiCnoyeTlIYXNadm00N1RBUjdOaC9GT3A2bE9JNlNMVWRYQnc2VEJnOWlSNS9HakQ2TkcvczZidnpnaTd0SHFTMFAwck9hcVFsSzNtV3EKK25TRzZWVE83VE5GdG9nQ2UwaTY2M3ExNEdZOTRYeE9FeXF1T1RLbk1xT2UzWHVVZU9lL3I5M2VUUjk5OXVyZGYvL2l6aE1vR21uOApNSDVzTzg0MGxpbmdKaGFWeEJHS1lvdExVc2xsbWNWRnFZQ0Ivcm9GS0FXWGZENkw5TXQ0bVFlQS92WUcxTnZoNzYrcm5nTlFkQ01FClFERzZsMk83UEFEMHU2VE9YOFVaZnBmWTlkdVk5cC9tYWo1UkNGcHFxUjNLMG8rZFZQOWJqT05UL0JDbk9Nek9RenBZY0FjYjVoSUUKVG9rQzcwb2piNHZmRythbjl2TW9MYXhLVlVVYnY3eUpVOTVJcDZpWlpVSnVHWnRlekNUalNwaEZPVldVMHlNQ3hGM3h1ejNNM0FwQwpYbWxCTGhtZGk4OUtLMGVmcVpaR0R0YWNXV29MWHFyMW5aSDdMYXFERmhwUHpUUUJBQUxRQXdUb3h3MUQ2dERIbXNqRmhyREYrak9yCjlXY1dhMDdkNWI0MlZuNTFoSkp1SzgzdEk3NWpwRjRZazM4eHJzTFlxSG11L0l5UkFveWprT2dxd1RyU01ZNThqSjJBc3hHd05reSsKUFR2SGxaYytqTVlPNHRBV1lwYWpOSEdFOGNXMDRKMzdrb3V6aWxQenF1RDVxdE9QTlJkbW1rOURZVVoxWis4b1B4emp4enZZdVk3QwpQSHNoMmxhSXR1SXdGaHphaXNtM1lYTHRtRXdiSnNlT3k3VVI4aXg0U1BhaUhCc3gwMHJBV3ZFZUZkZ2dvYitWNTJ2ZlJSbU1XOCt4Cnhnb0ovQXI0TGFCOEI3SEFXdmlEQWdmLzV3TGtsR1VoNUE0UzBBTTR0S2tnMzR6Tk5CTnVEaFlsV1VpbnB2aW5KZ1FSNDhMUUNVblEKdERSa1duRjZYSEZ4V1ByNWdPQlRFKytkZnVhcHZnby9VN25YQU4ybmp3WHZnbXI2Z2FtZ2J6ZmRyNGNONjJhNXgwU1dYeGNIMFFrMQo2b3JvWW9mWUpIQzdITm5Oak9ncy9ieXJMTGFmZEsyMytJcUJmTlZZOFlXUjgzWS9KOUxNQisvUFlLc0FaV0lqZTltQlJsNndXUmhvCkZNSU5YQ2lwdVpzUEZSOEdvMm9IMDZldHdydVY4bHd0cFY3TnBjZTFSUy9YRnAzUWtFNW95QUNBM0JZZ2hsY2JFM3dadkd4aGVpNnMKRHpMR1ErT1VrZTBOQU1ndUFhOXhNRUNmYUNyMzFrRUpOTDVtRHBDUENXcFE2dFBIaEFDb240MHdjcEIyS0E0SkNHRVR3dTFDTUplRwp1U0Q1RDBzZ3VTUitUaWg2MmtNL1BsYVJKOFlaY29vTktaRERTa0EvaUJFbGtOKzR5bTlNQ1FBSS9CTXdOL1kzY2hGOWJGUWY1NlZMCm9xSlhSY1d2QzR2ZkVCUy95Uzk2bTB0NmgxZnlMcmNFaWcxeWh3ZDVIR1FmQ0FvL0ZCS0FQcElXZkNLSDRvUThyakVQQmdGOTZ4ZUQKUEdMZmxwWE1kVFBRRHpqQ0Vsb2h4UGxCQWZyeGZPcEpLRXRvUU1kck1URTFCVEZWK1RHcXZDK3E4dDV1eEVYb1MrREdDcjllSnJpNgovemNBOU1JSUJCZ0kwVVcvMEZyK1NWTnBWRXZoMVk2ODY3ck1MSDF1YVQrTzVpSjlQbGdXNXVTSFR5c0JCa1VPS1UvWnhKR0dzZ0E5CkE5SFBCTmNHYXAvV3lmQnVwWUdMNnFjWEFKWUs2R0lpREd4RUx5T3d1L1JjZCtGSC9VUXc3Y0RiYzVOSHFhODdSVDQ2L2drMXk3K1cKNXFzcE82WXVPcVl0ODJsbElyc0ZjRGVYSVBva1VCVStRQjRtMlE4S05hQkFnb0hmb2d5RTh0NXJROGUxa0lOcFNnTlFJM2lpSm1CQwpoUVRYMGk2RURmRGdKZ0hTS0FweVZRYzdxcENEY2pDUVE3SGg3bUFYMzI2aGo0SHIyOE5COWt1Z2NndURTZ2h4K3ZuUW8vSWRBSG9lCm51WUdJSCtqL0pxbHZQa2U3YzRNZDNBWTB6NlcwRFdiMEQ0VDF6NmYyandUSzEzSXZUSkpqSndXUlh4WkczSzNNdmhlZGNSMFRlaDAKVGRBdE5VUS9kK3FEN21nOHBpbi9JVDZnSDU4QmhxK1I1Z3R1YUNNdndBb0lRQnN5b3ZFZDVvZjFBWTRrbmRaanF1NHdwbWZFZCs3Swo3YmQxdHg1Mm1CNnFpVk5RNDQ0SWl6aGlVQlp1bFlCL0NDWU5pSDQ2eXNKQnVTQ25MeFNvWkpUQkI0VHV6bllDUDdCaUVRYzQ1Q0hECmxhRmoxUUhEeXFCUkpVQWZQeXNYYVJlQUp3YzJ5SWV5THMxOGZ5TWZ3Sjl2RDh2RFFMQnVDSUE4ampCMzdRcWhYNy9BM3lqMEtCaWMKUUJmemJCOG5RQ2M2NGVESG1jbGlKeWQrcmdvMXFuNnpoOHRSa3JvMGhFZVBsRnVMMVp0ejFZdmpnb1ZiekwyTmxwckhWWmNmeUVOYwpzb0JCNk1JRjI2VUErMDVPY0dEVEFyaFRBQ1lyL2xacGpJMDJ2TVA4ejYzYTNlM0tsWU95clEzZTBYclZzNTJhMVpuS1ArelcvT2UyCnpMQlFHZk9vRWJuVWl0aHV1TGhaOS9aSzgyc0xPakRCdmJqYWVHcFJjM2ExN2V4YUR4aGdMdHhqWGJsTm5wbXZXTitWYkszWEhpNDEKYnowVVBGbWxBdERaWGE1Y1hXVjh0VXI3OTAzMjNjZWtCNHVrZzZXU3IxWlptK3VxcjFlcS9yQWxPOXpqakg1WnNMREVQbGlYZjdXcApXTjVnN3k2MDdLK3A5N2RrMjV2aXJUWGwza3JkMFVyejBWTFQya3piMFhiTDRXYnowVzdWN256YmsrWGFiOWFhdjFtUmJtNEs3bTRSCmEwM1hwdVp6TjU2VUxHeFRWZzVJSzZ2VXc3MzY5Y1g2Sit1Nmc0V1dwMnVOMyt4b0Q1YTBUMWRiL211bDl1djE1c1ZaN2ZSWXpmS2oKcm8yWjl2VkY5ZnFHY25veFoya0g5M0F2dzdvVnBkLzQxTFlkM2J0MDNiQ2RhTjFONkZxS1ZvMmxET3pHTzdlUzdLdFIxcDBiZ0ZwRwpWZ3VHTjVOZHU1OE56aVJJYWhMcU83TW5Wd205RHhNa2hreU9DbGRVbktHc3kzRnVaUGNmZk5TekZWMTNLNlh6UWJ6OTZYWHpZWXo5CjZJWnQrNFp0UGNHeTk3bjk2Nnord3h2MmIySU0yMW5PcjFMdmYzTjk3bitLU0JibVMxR3FYMXp0UWQzc1BKdlpjeTU3UEFJOUdwWTcKOVc1eE43RTdHeXdSQ2ZZVFdZYWZKdlQvNkpQVzMzUEk2cG4wOFcrdVdQWXp4cjVLSFQyNE1ib2Y3OXlMSGRxTG5kek9HUG95VXlURgprU2twK01LRTRwSTBja2s2SlBMTmtwTGt2d1JBeWJqVXMxbmtuOGNyZm5Tait1OWpxdjh1cHVwdkFRbGRWL3dvcXVxZm90VVFBTjFvCjlRQVFvQjhnci9pdWwyTU14NUo2L3kyKzVSOVRxeStUaERvUnJhMnk3THFySXVnMjg4UTBMOEFGWlIwaVhOeEFHeTk0VUJnK3JJRGYKcnZTN3B3cStKUXU1SlQ0OUpZb2FFSlRYY2NRcVJpMlBWc1V1NTNQTGhCU1NwSmlJa1plL1plR2liZ3ZlNnFMR0N2QXBwYms1cFpoOApVa0U4SGZOSmM4VXJrNDJBTTBLV3RjRnptcUNIZFFIemJjaUZ4b0FaZGNoTXZRZUFBUDJFeldtQkloYTBwNWJxQTFmcVErZXF6dDhWCnZqOVJjV080Tk10VmdyRVY0d2NMUHpjU3o0enkzM0JLMHdib2VYWjhoaE9UWThVRDZNbXg1UlhZMFRnYkxzZEdTcmFVeDFtcGlZNnkKZEJjcHgwVk9IYVZldmNYNS9aZmk4M09WWWN1YTRMWDZ3UFg2NEtXYXNLWGFzd3ZxVjJhcjM3c2p2anBHUzNlV2dQM2t1Z2g1VGtLKwpnK0JCRThCRE9ZN0NMR2RodnFVQVk4ZEJsaVFyRm9BT29DNjBFM3lLeDF1Skh1RnNrTERXUW8veUhGaTBIVktCRFF1T0N1OFdBVUNWCm8vQ0Z3QjRLWEVTUE1MYnZNNUFIbFFxc1JUOElRTGsySWtSUmcvaDhDeFlveTRwTHR4RlM3Y1RQUnJqdmpIUFBUZkJESjBRaEU3S1EKQ1VYUXRCeDVXMzVtVW5waFdIak93ZzQyUXNud0p3YnBnQmdRM2N3VFBiUVQ3cHAyTUc0Rjl2NEFBSUFBU1VSQlZEQXFkWEtncHVEdAp2S0FPUHJ4SENON3dnVG9HMGlqd0g1UUVkbk5DdWtvdmQ1ZC9NRUI3czQveVNtLzVHMGIyNjJidU9STXZ5TUwzY3dtUUppNUVIbjBBCmdQaUFmc0JVMzc4WHZEYWYyOHRobmR4dkFZanEzVklHME1lcm1lemRTRDVXUS9pTkVuZXNxaEFBRU9RQ2cydy9EQS85UU8vYlhxaGYKbURkQUh5UGIzOHoxSHVBQ1VvRU5pazkwMEFFQVFTbEhZRUxlendLQ2JBMTlUSjllQmpSazlMUDhUQnlVbVljQUwzQ2J3TmNwOUJzUwp3NGNrS0pjazBDV0ZqVWc4OGgrVytnMUJkaUFvM0Fmc0ZyeGpYUkxJenpXbVFJMHJ3Ukl4S2dkL0F2cUJEY3NoV3JJSXZIdVpZT0NECmRkRUE1NzEwdHBKeVhrVzVKQzk3VlZyNm1xRG9UUzd4SFE3eDkydzMvZndSZ0FxQjN1Y1RnTnl1TVk5QkNQZkNMd1pJS0VxREJmSkUKQ0gyTFFaQWQ2Qy9IQS8wSjl5UzBGbndyQUVCUVk3WTRkN3ZheEdaMFFoTTJ2Z0VIUlZ2WG82L1ZZejlvSlp6dElRWDJsL3YzUWRHdgpmOWtGQnZtQW9KNnB1dWNNNU9kbUlFUmJ4YW5HMGc4YlNOSE54TmkyZ3NUMmJMUytvR0tBUkJyRWZtRWtueHJnUkl6SklxYVVrWlBWCmI0d3AzN094d3Zyb0FVYTZPMktHNWRORkF3QUVtZlc2ZVZEY1NUZk5UODlBNnVrQjNkUmdYVVZFTysyY2p2bFdML0dWQVdaSW45aW4KaWU5VHcvU3RMVCtwTGYxTkhmbEVDOE8vVzREc2xiZ1RrUVFvb3hScGxya2pieVFlUWVYRHZ5TUlnd2JrU0p0N0hCMVZ1d0ZJQXdBbwpkRW9OUlQyREsrb1V3U3c4MzM0MnZFK0E2cGNFRENyZ1JvbVBudSt4L1hqYVhjRzYrSjRLNVVGV1ZhaWpHbENPbjRFSDcrTkJFVE05CkZOOGVxbmRuQmF5Ymcrd1RBeUVBQUJuRllPeS8zRW1UdTBTOWR5VVNGN3JFRWMrZVRwZE1aUEVuc3Vpak4vT25jVytNVUlPbjVPQTEKR2pRdERycXJDcnRWRzNxN051U09OdVFlWlA0Sm5LNUdqU3Znd3lKZks4ZmJ6QVQwNDJla3d3dzByeTRxZUF3Q3JYS0FMOGNjRlJFRwphbUFmNDBOTHVYYVN6dTVPdzNOajA3akZhSlB5NnUzYVlIQUhtNlFSbHJyUXdVcHZJd3ZWQTFXVkRCeWtvZXhNcEZNSXQwa0N6S0pnCk14VG1ockJLQVBjRURpbURSeXBEUnF1Q1JpdmRVZ1lOS3hBMnZ2OEFHNUtGQzNnZk1wYmFoTkNEWk9KQ1NST0c1MDFVb0tmNld3QUMKL09jQklMaTdmbWhFUDl0dmpPL3ZZSU1uRUdhUmhSb2s3dzZyVDgvVndnYUZyK25vYkhsWnZiaXdYazJza2VTcEpCaCtlYnF0bzBpMwoyZkxSWTZYUHFDVFlyb213YUlLZENzU0lFRFltOWhuaEk4ZTQ0Tmg4blBWbko4VHNoOEtsbWRZSHc5U3ZkbGpmck5QK2U2dHFmcm1CCjFWSVhUVkJJdE5vN3MrcnN4UnJZU21QUXN1N3Q1ZFlMcStxdzFmcUx5NzBYbDlzaTF0b2oxM1FYTjNyQVlYdzRLOExjTDh2dHVxSXgKcDY1dml2WTJSUUNrdnRwa2ZiUEQyRmdqYjJ5d1Y3ZEsvK3VRdGJ0QzZYT2wzNW9qUDl0aEhhMnlGaGNsczBObGgxdmM5ZDBTcmZYRAo2WHU0N1JYaDF4dWlqVDM2MGlwOTY0QzVzbHUyc0VIWjNsYzgyZFBzcjBtZXJMUC96M3JqMGJMMnpuanQwRlNoYlF5N2NZZy8yaE1jCnJYQ2U3Z3Z1YjdMVXc2bldyZHltY1hUZFpPYllINzZZMnI5NTd4RjlhNnYyWUx2KzJWYkRmKzQyZkxXaS9NT2E1bWkrZW1kTlByL1kKMzliYmwwOHNKNVhreVhnMzFhbzBwVFNWWG5OWjc4Z1luc2sxenljTkxONllmWkkvdlpMbVhMdzVzQjdmdm5wZFBCV3QyL25JK1NUVwpzUm5kdjN6RmRwUzAvWlQ0Y0xQOHdXN1J3Z0dydGJtTXljaFFkQ1JLQjY3WmxtT2REN0VLVFR4TCtsblBaRzdibHplcmJxZlJCcEtxCnBwUDcvajIyOTJuTTRGY2ZPWFkvbUR4S3NYNTlyVzBuYS9LYjVMYVY5QytFekE5a3pPZ2FMS2FkK1lGUTlyY0pWYjlLMUFlZ3pTRTUKL2VjSzdKR3BybGR5Qm0rcVM5T3FDSWkwZmxTdS9iZlozVC9QYVA5WlNzTS9SN0VqQ1dYb1BsSzBpS3k0aFJ2L2Y5TW12b2tmWEkreApycWIyM1U5WHRGM25DZEVBZ0FqRVJCSTV2WlNjUVNxK1NTS2xrTWtwZndtQUVuQTNUMmVXL2l4TzdnR2cveDFiRFFBSTZna2ZYUTBBCjZCYzNtZ0FBL1M2Mjgxc0EwaDFQNlBLSzdZYkY5aCtMYmY3N3hKcExPYUpHTmtXbklxZllLMDVQTWJ4dThmeEdoVjdqdk9PVEhEOFgKRDJVVklrY2xzRnR5MUMzbG1URTVtT0Q1MzFjRzNKVmZHcEZGV2ZpbGFxYWNSZVd6cU9WQ0trNUJ2OUxGQ1pvU2hZMnhVMlhGK2FUYwptSkxNYkhJQm1rWDZRTWNJZjFSNStuRmR3S0lXdFZnZk9kdDA5bUZiMkh3SEFDRDRZM1h3UTIzSW83clFHVzNZckNaaXJpNXlRUnU1Cm9JNllydzFZYWtCT0NjN2FTNkpjcFhralpNQWNlWU1ZdEswd3hVNDhaNjhJN21kZU5WYmsyMHR5N0xnc0d6N2Zpc3QybHVVNVNqSWMKeGRlY2xMZUdPVzhQQzJJZExLeU5jdVVXL2ZKZDltc1BSYWZtbENHTHRTR0xHckJ6OENDY1gyd0lYcXdPZWl4NjlSNHpacVFNN0JuagpLTWdkelFmMGczWVdZUnhGZUhzUjNrYkMya2s0UnluV1VVcXdFb2gySWhEZ0dKd1Y4cWtSSEFRZ2pJUDBRbGhueVF2bERlRTlRZzhSCkNvWUlXTmR6NFp4RXJKdCtDdXdFSU1Cd0huMlBlNzcxZitGL2tINGczNW05MEdOR0FzcXhGbWJaQ3RQdGhUY2RoYmxtQ3RTR2FKd2QKTXNVUG5CQUhqMHNCQmdWT1NmenZ5RkVUb2dBN3g5OU1oYkxBekRUSVh0SURSWE9lNktJREFBTEFBZE56L1hvZytlc0ZDQjNmVzhjRQowM1dvTkZvUFZCazRzTFA4WFFQampRSDI2ZDZLa0Y1YW1Ka1Rib1lpZmxBV25yK05BK0FEc2l6MGNWQjlmR1F2RkFvQ2hnd29STEliCktxZ0dKVmxEQUVUM2JpNkhIRjVONUpNdFpLK0drbVBWK044cGNNZHJpbndheXQwMkFqYmdNRWpkTFBDeTllbGpBZlR4QWpKei9BWTUKWGhidVNVQWhKc0ZKSGVOa005VkhSNGYxc2IzME5HOERIV3F3cW9lY2QyQWQvTDk4d2ZjQit0Z0YzaTZoMTdESWUwVHM2NFlleExBVQpyUGdNUC84VDVoTDcyb1ZBa0RzTThCQVlIRWRrZ0h1QVBBQUU1T2VTd2F4UVZLaVBnWG15by94NFM2bFhPd1d1Wjc1MHVvRnpwbzU1ClFjMjRwQ3AvVlVKNmswLzhQWmZ3UGdmM3d2YnpQYjNQSy81QVVBUVpoRVM0eTJMY3h6S01PMVlhNjhZZzNMZFpZd1V2eW16LzViRG8KL0JkS2FFVy9VQnhrSHdJWWhFNXFSU2RDbjZJaGkxRUxIa0tpRmt4MEcrNFRYZUdiWFNXUit2SUFBODNmOEVjQStsNFFORGo3QUlDOAozUURrcGVOOW13N0dodnFrdGpCZmJ5Ny90TGtNTUZCY0V6YTVCWjNXZ1VudVNQNVVYL0tLa1g5dVJCbDV1ekwwVnVVN2s4b29KL2VzCmlSRmlwQ0dOTkRDSysraW9FUG0yTXdBQWVYVXl3Zlh6N3FENWQ5S1IzY3lnTGs1Z0p6dEl4MFYyMDFEZEhIaUhBTmJFQm5mRFNXM0oKQ1MzRnE1SHRvK01DOUVIMFNkdzFpS0dHS1FnVEFKM245UE9EUWd6SVVIWVZaTm9aVlllTTFicWRYNXJneVNyVXFNTGZKWVpaK1Q0bQp0cWN1dHJzN0xCdmM2RjRkRE1pNTB3TjFnVURvUlVEK0poRlVjY0dxQkw4RkRodk1CbUI2dHJ1akNNV251L3k3QUFRM0NGSDlvcUErClFiQ2E4MTRqLzZhWmxtREl1ZGFhbHF6THo5UG5KSFVYeEJ1TFBoc1duaGxYUjk1dGpaeXNBUXFhYWdtZXJnNjVWUU1CMEIxdDBDMTEKd0lRU09TVHlkM0RkVGtPQTgzUjRIODNQUVBYdW9wenNvSnlFK3Brd2ZDMVV2NzV5bno3T3E2MkZCZTAzYnlnL1QyYW1mVkRQZVhzTQpDaDd5czBvRHpRclVnTUpMRDhpVml1cmpCbG80S0JzYmJ1VUJmZ29hVUFSYXBVSERJcWlNc2tzUk5Ld0tIcXNDQW5pQkdsRWhod0VNCktaRjJFVUFmV0QvTnQ2OENyRURKbkM2cG54MDgzZ0tBakxBQnlCSUw2K05Ebld2MFVNOVV1TnY4QXk2S2gzNmdBdXBROHp5K2o1TnoKYkloK1lwQVowaTlER1dSd3U4cC9WQmxnRTMzU3lwSUxhRnBXaVp4RHJLSVNHTFRDQWhhaHVKY1RQYWNObkpJaGJmSUFKOEM0NmxDYgpIREdwaE45bWdoRUkvS3VBb1Jya1dOTjVteUphemNVVnFoN2NsczdOcTh6R0ZtMVhYUktMSDVEVTY1VnVDYVByRWgvVXZUdGJjM2FwCjl1SnE4NlZGM2VuSGJlRXI3V2YzZTg2djZsRExiV2ZXRGFlWG0wSy81R1RlWThwc1JXalo1ZmptSzByeFZYdGYvdktoYk81T3llWjkKNnU0aGYzdWplR2VWdnJCWU9qeUdyOVVrOXZiam5FT0Z4dDY4VG0yT1FaMzk1WDNhMmdGSGFidldheXd3NjBtVGZXUzdDemN4ZzV1WQp6M0UrU2pSTkpUZ21NYk96L01NTnhkY2JnaWViWmFOanhTeFJCVm1Kb2F2TEp4YVpDNC9GMzJ6TEZ4OVc5RTRWbzJzcUVtV1NOekhhCmQ4amFZanRlUEpuSDZYbC9ZSkU0dFkyZmVFeDVNS2VZblZjZTdMY2ZQcFdSTll3c2dUcVczSE0xVzVLSFF4TXdsOHRJVndFVFVJdlQKRmF6Y3Vxb2NUV2R5aXlOdTlvQjRkemRqY09YS3dFUzI3blp5N1ZSdTczYmNyY1A4bGEvSzc2MFFKcFlJQU8vc3ZmVE9Kc0pBWDBtZAptc3lWNWxSVXg1WFY1RlIzeGpnZjRrZG5jWnFPQkxyb1pnYnBacDZDbE5kU0VsTmZYRFpOS1hhVXFCZVRyRTgvdHo1TjQ5K08rVUJjCklKdElZNCtuSGsrUS9rMmM0YVg0cHAvY3FQblg2NnJmeEZYL09sYnZrellNenphZXd3MmV6ekIvWE5xYzNWNzJGdFlXbHYwbEtyLzkKNVp1Nm44ZDJRZVdHYjJoK0V0WDYwNmlPZi9oQ0ZwREpLV2dnZDh5a0dCZS9hQm1PVTdTblNPcGlpYVRZb3BLRTRwSlVBRURra25SaQpZZkpmendLTHc2V2V5aWo5NXpqNTM5Mm8vWEZzelkvaWF2NHVwdG9EUUQrNW9mbkZqWVpmeDdUOUxyYmplRnduUUovakNXRFo4OXVFCnpoTngvVDR4VFQ5SnJBdElsMHBZWlIzS2tqd1Q5ZElrMC9zMkgrQzd6eGpueERqTGU0anA3V0JmSEtTZmM3SERKd1dvMitLQTI3TFEKVzByd2lndThwUXE2Si83TXpFZHJPUVZxZHBTTys4YWc4TlNRS0hSTS9MYWhQSitCd1JYbVJOUHpvcVhGVjN2NForNVdJbGMwd1k5VQp5T1U2MUVwenhFekQ2UWUxb2JNMVFYTlF0bGZRbDVyUW1mcXcyVG9BUU9GemFrQS9ZWStyZ3g0cTRGTktsSlYrMFZoNEEzQ0Fxd2h0CncrZmFDRGxEcEhRcjZiVmVLdHhBdjJ5akEwekp0MkhTWFVYWjl1SmtCK3VxaS9uT0VPdkNDUHZTTVBmOVlVNnNpNTdtcEx6NlFIYmgKb2VyVURCUlNIZnk0QWZLdnpWYWZtVkc5OHFqeDRqM1ZHNVBzcTBPbDJYWWl3VmFJQTc4eVVlSmhsRUpuRWRFQnFjaFpRblNWRUZ3bApoVTRTMGIzRU9Zb0J3WGkrQS9SSEU4NVFFUkRZaVVmNTN3cmdsSWVvUFBKWWlWNkF6bk9IbWdVQUVNa2p0S1VZNkVYRXp3K0NFVkN1CkRmTEg1VnVKZVlORk9aYmk3TUdpTEV0UnBxVUkwNGRMTlJkLzdLUmVHR09IVEFvQmtvWk1pc0lueElocEJXcENnbkR4WVlOMEwyTzUKbDdIaVpCL2pwSjRHM3VyZVhZeVQzZTQrMzczc0V3YVdSL0JPdms4M00xQkhCNjk2TUdhaDJsZ0JuUlZ2OWJIZjdXZWQ3YWtJN0tXRApDVjdBZ0NEUUxBQXJrSDlLRHdDSUJRQUlZZURDZTl3QXBCZUFlVFZVYzlqVGc3eUREUURJcDRVS0FNaW5pWEljQUZCejZYRTE4VVFWCjBiZSt6TDhWTXZ5QVlkZXZHd3hNQU1YWXZyMXUrakZ6VGc1QzhoMWtBd0E2QVJqSUJMa21mTnRwVU5VNlFHL2RWSjhlbW04M0RkWUYKTFNFQU1yRjlMVHlmRWFIdnFNam5PL0llRVFLNVZ5QUE4aDBXQXp6eXRrUDJkU2dmYUV6dVAvb244Z1ErZ3dremRGcDA3dENsNXRJVApBTjNheXNCdnZYU3FYWFNtVlhDdWdYMnhsdmE2Z3Z5T3FPaDlJZjR5SC85N0R0WVRBL1JkZ1MwZjhFcmY1NUVBQmtIV0lBRWV5cHlYCllBRUdmYWI4WThyWWRRMFVIKzNKay85dWd0ai9KUURGdHhVa3RoVWt0K1VEUVZ0YTBWQzVBaytERWgzdWlxN293ODZTUzUxbElUMDAKUUhCL0tRMytPd0RFQTNKSEFrRU1CQmtKZGRUUTlwTFgyb2lmdHhmR2RSRmk5TGpyK29Ka1ErYTFQdXJyQnNFRmh3d0FVTWh0NWV1agpvaXNteXNWQlpvUzVBdGxmRHRPWCszYVVnd3Z2QVNDVWpnL3Y0UG0xUWJzRjFBVjFhWVg4cnhXd0hqNnlXNGhvNThMQU4xdEtUamFWCitEYlFBNXNsZm5xb0FvMm4vWUovdjlnVGRPSm5GSC9YNnZPbkFDVDJBRkR3VUUzUVNMVUhnSUltMVNIam5yUXZnYzhnMTZ1ZkJhZ2YKeXZOcVo0TWxkR0J1djYvYlVBbWRFNFJlR09oVWhicXEvRTJTNHpyV1NmQ1JuZ3RGTWtIdFlNczhBQVRJeVdQK2daaXBWK0RYeEhpNQpqZVJqSUoweVZYeWdMNzdlbHBuUWtaVnFJRnczbG56aFpMNCtxZ2dZZ3p4eGtjT2lzNU5Wb2JkMWdINUNiMm1nckxSYjZzQ0phaWdvCjI4cUZTcFJDa1VrY1FQUitCaHJjVU9IWFUzNnN0ZmhmTkRoNFkxbXdrZm9iTTlYWHJuaTlnM3l0SWVaVDFiWE15b3JUTTQydmpkV2UKN3VhZzlCVkJ3d0traGVuZlRnN3ZaUG1heEg0MkFQZ0M1S0EwYktBNjFGemxEMllQUTB5a1N3NlZjeGhTQkF3ckFmb0VqRllHQWd3YQpyMGJZUkRBajI4L0lSSmdZY0NNZFBzanhoODRWejhmT0JZSlNES3hDOERBQXlvRVl5QURSRHlSM0ZOUno4NCs3VHBlWG85cmZSa002CjZTZjZ1S0ZHK1ZrVE03U1hGcXl2OURXVnhiU1VOd3VvOVV5Y2tvZHVaeFl3T0pub0x2S2xaZDNwSVJYQXh6QzdLc0FpOFhmS1lDT3EKWUVmVjhTRmEwQWd6M0NYeXMvTERKdXFRNm5hZnRMcGsybkJqdnp5VzNINDh2dlhsWENNeTNYUTIxWVVrOXA0WmFncGJyb3hZMFo1NQozSHpteStiSXVaYlRtNTJuMTNWbkh6ZWZYV2tFNitjWDJsQVBKY0VQcWZINjNFSmFkRG92TWFINmFoNDdsbFJ5bzFhWnptZDlMT1ovCjdEQ2wvZWQyNlhoL2JtM3JqYXJXYkNVdlR5c3ZWRFpnYXh2d09nbXBSVkxZMm9hMmpCRkxXNktySzdFcVBxbExYRmFsUU1zYnMyc04KS2YyM2MzdEdNMlNhRzFwMW5ybWRycThtTktvb0RmcFNRaDM5RXdYaFdEejNGRTU1OXFZeVUxQTNhaFpVbVRIdkZvbCtmVTMydTRTbQpmNGwyd1hQMDU3RU5VWFh2WW5RMDZiM01aQm85bTl3aGJ0WndGRjJOanJ5M3FQMGhlVjBYMFgyZm9oWDVSV2c4NXBNeVNoS2hGRnRHClM2c29UUkt3TThXcUhKRXFkbXlrK05FajBvTWx2RUdMYm01TmJ4b282YjkzYy94T3dkT055cVhiUWxOcnZybWp2SVZMYWVQZzYva1kKTnIySVg0ZW0xY2NXaS9HVU1uSVpKNkhKbE5RL25GM1RsSU9ocGhmVWxDZlhrLy8xcHN5dnNQS1gxL2hKbXVLbWxUVHRYRjU4RSttZgpQemVBamVrbUlpeTUvT2VKcWg5bFZ2MG9YZlgzTVRVL1QyZytudGJpblRJWWhPNk95Sm8razJYL1RDU1BhU0FGSnc5Rlp2UUZwSGI1CkpBMy9TMExUUHlhSWZwS28vWWQ0NVk5akd2K2Y5SnAvanFrTlRSQkdGV1l3NjY3WDljZnpGRWxFVWtaaGNReXBOS21JbEZKWWxGTGkKaHA3aTR1Uy80Z0tMdzZhRlo1Qy9DMEQvTzdibUg2TlZQNzVSQXdEb2x6R05BSUNPeGVsZUFCQXNwdWRucVowL1N6SENZcHArbmRqaQpsNlppc0VzYnFraUZCdXJyWTB6WUhWN0FLQy9ZeVE1MDBaQzJDaTlieGR0OVJUZDZ5cTZabVJIVFhKK0hrc0I3Q2dCQThEdFYwT0I2ClMzUjZBa3BvdU9RVUI0MUo0Sk9Ta0JIWjFRWlNGamtybDVnVkpjSy8xY2NLZVZ6bHQxeDc2azVWNUV3dGZFNERtNFA0NXV4aldjZ2oKWWNBREplVDcvbExqNlhjQkFDanNjVzNFZkczSWpBcHhWK3h2NFo5eGNEOXdWc1RaaXpMczJEd25JY2RSbEdZclN1Z3FlNk9OaGVyagp2ei9Pd1RnSzg4MzVxVTV5aG8xNnpjdys1eFQ1akNzRHhoU1hYZnliVG1iU09QMnorOHpJMmFxSTJkcUltYnF3eDAwaGM0M0JDK3JnClpWWGdLcFFuZFhtWW0yT2prdXhGeENGczNqQ21ZSWhRN0NMamhnaEFlQmNrbkJPUGRlRUxodkRvWVR4MnVCUXpYRm93UkM0WUpxR0gKaWd0Y3hWaG5NUUFkenpjOVg4WTdjRUE0T3hhSVlDTjVoTGNXUXhvczhzampJUFA0eXpEZkNtc3YrdjhGb085aFVMWU5tMlBGQS9ySgpIU2pLTTVOeVRjVWVaVnJ5MHdjSmNSYnloeTdtMlhGZXdKUUFOY2tQbXVDR2pDbER4dVFCUTBKL0s5UFBUSU9aNk41R3hna2owN3VMCkJSbFVkRFNBUVpDQjMrMmdnUFhRZmJxNEwrdHBxSzZLazUzbFlPd0RBQVJyS1R2VFJ2bXNoL1pxRnlYVXdFQ1orU2lUT01BSTVzQkMKQ0ZuNjJQQitEcUtYQnpkd0FmMUE0NEpCNk4zRDgrbHlxNU1EUmhiZmRnWVlCMzJieXowQUJQbkM2a2plV2pLaWhZYUVTdkd4ajNleApud09RZ2VreC8zZ1BRSVlmTHh2UDI4dzhhZVVlQnpCazRrSVpPVG9HMUxTZ2srcmRYZUdoSHc4QVFTNHdDdy91RUhrTkN3QUQrUStMCkVDTmlJRGlBSGpjR2VZMTVZRWpzUFNRNjZlQjcyZmgrVG5IQW1CSUNvSEVGZkVLSkdGZkN4NkNvWngrWEdJcWtoZ3hPdEdQMXhjY2IKU0Q1TlVOd1NGTUd0SzM4cHZKTjdxcDF6dnBIeHFwcjZkbVhKdTlMQzk4UlFDdGhmRWlDZUY3b3Nob3hBSG4wc0pYd2l3MzhxSjN5bQp4RitwSWx5cktZelNGRVpyaVI0TWdnb0NOZU04MFQ4ZWZac2o5djBZb08vNHdnQUdZYjZqZ3JpT2d0aE9USFFuQmpEUTIxM2s4RDZxCnY0bmgzOGZ5T01JQWhmaERkUXVodHZEZkRRbUNVS0NkRGVYanVRVnJZOERibUlHdGpQTk41WiswbE1WMmtHSjdNTmYwMlRGNjlQVSsKMHJ2R2luTTJBV1RldUtVK04xNzVxa3Qrd2NZTUc2aEFtc3I5ZThzQk9mbTJWa0J1TlQzZjNZZVY0L2F5UWVGbTRBRGNiZW81M2pvSQp2TUNmQUlTOTJpQ0JYNGRhdEhwS1FobkVTSGNFTkJDcVR4clFMM3ZSbE9xRlBGdjgrc0F3TEVOWUZRaUhDdTVTZWtiNm9HR1Z2MHNNClpReWFlYkFlaGs5Yk9iajVBR241dDlHT3Q5S2hXZ3RkZkQ5UC9GTTMyN2VQajdETEkwZXFrVWFCdDQ3dW82UDd0bE1CYmtOVEFSMzEKZUZlWmo0NEs3bUMvZGliRVBmMENRT3ZnVTM4MUNkbEk4VzhraGJhWHZtVmlYTzRwK2J3Rm5kcGQrTXFvOHR5STh0Um9WZVNFT215NgpMbVJhSFRoZEMyVzVUMm5ENzlSRjNOT2dwbVErSTN4dk94Y3lzZlJ4SWZveFFxbHpQZ1ozaFI0ZHphZUIvSElONFZnckVVdzdrSVp5Cm1MSHNySlg1WmhmNVRSM3BnM0ZoNUtnYU9TQUNUMTJ3V1JnR0ZXbGsrblpCbFNSOXJTeVlqUTIzOHhFMlQxYVhOTUFxRDdUS3dUa0IKQUJROHFnZ2NsaUFjdk9CeGFlaWtFbnBtK2psK2d6eXZBYnEzaVFvb0NtbGkrNWc0VURxQVZRQUVYc2V3QWE3ZklCOVFGSkN2R1hySQo0UVkrMGlBQ2NwdUNvRTUrL2lhcG41MkZkUEtoM0FRekZ6NGdSSmlGNEUyQk1IS0RCMWlwalZTRm9MQ1ZnMUdJQzdoY2JJbUcvZnFHCkxuSlVCU1pTS0pNUW5HM3dINEU0ek1vSFQyeVFrd3JlVmo1T2xyK2RjZEhXNU05cWZUbEQ1NWRsOEU3Uis2YVlmRzhhQS9KTWlMU08Kd01MV00rWXUrRnJONmRtZVUvTzY4TVdXc09VR29NakZobk5MVFJlV21pOHV1eUsyTmJBSC9ITWp6TXQxeEF6WjFRenlOU3cxTjZYbQpReXdqcXJBMEFWOFVWWWFOSWVTbG9ERnhjc1pOTmoycmpKM0dxYjFaTDB5dlZSUlZ0dVBhNVduZFlvYW1Oa2VxVHVXM1pLUTNKemJLCmNmMmM0aVlsdVY1SzZPYVcxY29MUkpvTWdTWmJMc1lwYUFRSkpVZE12WmxYa1J5RVZxWTFrc01xU0QrTmx2L3YrTnBmSk5lOGRGVVcKaEpmbjltUWZTNWYvWTBMVlQxUFV2MHFwUThib0VHVDFaWFZpY0k3K05NNFNsRFo0T3FmN1RMcnVDa1dmWGwxNFBuZmdEZlRRZS9tRwpLQnd2RTUrTnh5V1dsS1FTeTVOcGxCUVNQVVhJU1JXcWJ3cHEwdXRFbUNZTmVhQ2pWS2V1YUtqTFUzZG55enNMTkdxMHZaNDAzRUt0ClUrTGF4YVJHT2FWV1RKS0lNZFhTZklreWoxU0ZWakp3REc0S3M3eUFYSkZlSXNxV1ZCYlR5Vm5NeHF6UE5keC9TelA4SkYzMXo3bXEKbjZWci9qL2EzdnM3OGZQZTk4M1paOGNsdG1QSHlVNjI3VkZCOUs2dWFmYU1lMDA4OGRqVDFYc3ZpTjU3QjRHRWFCSklxS01DUWdJMQpKQ1FRcUUvMWpIdVN2YzQ5OTY3NysvMEQ3dk9BUnBabnhrN091ZXV1OVY2c0x3alJ2dVY1ZlRxeTNVMWdHVkJNeTI4cmg3QjFycnBBCkxhcXQ1Nm1xd2Q5V08xKzQ0WHEyd3ZHYjh1SFhxbWJSdFN2NWpZbkMydGlaeG9XbU9lNDd3c21DaHQyODVnMThReml0S3ZCUzJjUXoKeFFOUDMraC90cmovdWRMK1g1Y012RmhteTYxWGxuYTJNbGdWYkc0Tmo5OHM1ZFd6UkhWc1FTMFVENG9Mb0lmWElPQTN5bmkxVW02ZAppRnZMWTljd1dUV2R6S29PQmh5R1dzYXN6S25udkZCcWZhYlU4M3paQUdBZ0FFQ3dEUDVHMzIrSzNTK1dEcjljNXYxajZjd3JwZk1uClNrUHBwVXV2VmsybTF3UVFGZk9aRmFIL3JKM0FkM1kzcXpVelZtWDNtT1Q4VFFYaGpwcTByU1hFZFppNFBtMUxqUThyMG1MU3RnRkYKZjVmcXhyeUdldEJWdEdjbDNVeTZUdmRzT1R1T25DMTd6cWFWRWplVHR3MkVQUlZtVi9yWElYNmRxSzFlVFB2SXI2TGNzZVhjY3hUYwo3U2QrUFVEK3BwLzBkUjhROVdzMzVYNC82WjZUY3JjLyswdDM0WDFuOXQrR3lOOTZjdS8zRlg1bkozOXZSUjkwa2RhN0NzTGlrblVsCkt5SnRYZU5YckxEcjFvUWRNWEZEdU9POVdlWHBLUllscW5wbno5UWVFVGV2aUQrTWFjNUZaTVJ0c000NUN6YjYvaG94MThaa3BYdWkKOC9kTm1PK0dUMy9weWZuN0FBNUF6N2VPd2gvRzh2N2h6ZjNLZWVhV3FXR2QyUnpqZE1UNUFHZ2UwZ3lmRlJNY3VYQlNva2M1S1RGKwpLdm9HKzFEcjNPTTZZcHJIbFNLWXpnZ3ZKZG9hOTdnZUQzVWRCcnpXbnF6amtIUzhZQjR3WXRNcXQyR0ZYYkltK0hCVGVuSlhtNzFuCnB1NVl3WjRDdC9pRUVSTlJZcGNWd013RDlsNEdORFVWS0o4SzdkV0NCUTVjMkZFQkNiREdzZE1xVkFDdVVOQTJobXVmQmpPbHhFekwKZ1NXUG05UGc1N1dFb0k2d29FL2wvV1ROUXpjTWpBL01hVEh6T214UUQxTi81ZzNBWm9ZSkE4bElDMWhad0VzaEpwVkFoMWsrVXpJZwp3REdwRlJDc1FjQ1FUcVo1cUdGVGtqa1ZBQ0J3Q1VVc2FqT2hSOGVJV0lZZW9NeXdMbTFKbmJHZ1FzeURoVW1HOElwZ3k3b1pXYVpQCi9GcEFtTDRveXdpckFTMWhObnVPSEQrbzdlN2pRbThuU1NoaHlrb1NFcmlMM2JYZzlub3h1eGIwZmk5NjM0YlpCU1JreFcvMVl0Zk4KWUFuSW1sYWNHR0NuRDNBUUkveTBVVjdHS0pjd0lhS004SDkxZWtwejFxdDhjMVQyM3FEb0l4Zi9MM2JPQlN2elFtOG5vSmtuNm9JRgpzQTdqOGNjL3N6R0FMdHJwbnp2b0Qxc0h3WERZVWMvb24rWUEvWXZRQTFVNVJVK3BiS2F6MU5kNXcwKy83T2Q4RkJBV2hhU0VSUVV1CnFNSE9heUJ2Sm4wLy94U0FzRjRWckFqektndkhaUjk2eGRkbStHV3pqT0pBYStrYy9YcUkvL0dDL015cU1XL0hDUUNvYU1meGV0d0sKRm1ucWtoeTNDQUJJRHZZMGNsS0o4dXVQQUFnbWVTWHo3Vk1NaFBYQk9GVHFMdlFFVG9IREJXejhmd1VnUXZRWUFBSDZpUUJlMFVHTwpTYWFoQVJMSGVPWGdVOEhrSlBBRmswY3FPSEFKRVd2dWpvc1M3a0g1MVhBbUJteUtLQVdJQTN0M3prZ0JBS0Y4Y3ZDUDROZUFoM2dJCkpnZ0RHTThZNEtER2hNaFJBYzRyS0FwSXp3ZUVIL2k1bDVZa3A3ZHRSUWxid1haZjdwNGJWcndubS9wazMzUlJiZzNsNzdqekUxYkMKcGdHeHBrUUdaZGo1Vkd1S1F3QkNKWGNRMXFlRXVYTDlUQUJBK0ZreG9NbXNKVWxlVlBmMm12R3REY01iK3oyRTFXNEFHU1E0aHN4TQpDR3F6cHFYSVdTbHhXWWRlMVdBakJ2d0dUR2VHSldCaFdBWVBBSWdZdFFJZUlrZHRwSzErMGphY3JZaWY2anRoMHFKR1pjQ3NKSzZaCjhPdDY4cm9PTUJCcVJZV082TEdyK2hRREFUd0NBdlFETUNnRlFORFFnZFBqVFhqb29qc0VJSFJFRGJnS3VhSURKdy80WUJCckZydncKSVYzV2txSmhRREZzRUxtTmpINTlwN2xQZGlQcWVPUHJVZXFhR2JBWExnUlRySUMxQWVrcXJNVnVtbkF4SVM2aHk5aFF3Wkk5bHllcgphUTVUR1VZMVR1TnE1ekV0aStqNk1McHlHY2YwNTNvblg3OC9jK2FIcVlMdkpncCttQ2o4KzNqK1A4WUwvbXNDNk9SL2VZRW8zM3J5CnZySG54M1Z2KzlvdmR0VzJtNisyaXErM2lWdEtQWjkxZHNHQ0l4Yjdxb2hYeWFmWE1XaGxIT2JuSEVheFVGdloxZGN3Wm14Mjk3SDcKSjFtemxyWXBpN3h2cU0wNTBLQ2RxSzhkTGgyMmRIcE4zQ0VyZjliQUdiRUlldm83VEs2NmdlNzZZVldIVmNIUXFGbzFtcG9PZm10MgprNm5VUmNPd3hjOWY4enhWMmZkTWhmV3BjbHNlUjFRNlZQZkhpcjVueXR4UGw3dGZMaHRIWFptaWlycXZEMTNEbDQ3aGFsYXdMVE9VCnp1WGNqdVdMUGJZckZubGV4OUw1NXJXUG02ZXVzYlgxZ21ZNnU0ekxMV2NLU2p1bFZUcGhVNisybVQ5U2IzYTJoTFRjU1l0Z3hONisKWkZHYnZTelJZbnZYSkd2WXpoMjNzMGI3ZVVNMnlaQ0RQMndUVFJwNDAycWExZFltOHJRS0hhMVNNdzE4V1pteVU2WnNrcWpycElhVwpEa2t0ZjZMaGNwZnl0V3JQSzAyOWYyaXpQbGZqL0YzdHdBdFZ4cGRxZTE2cUhrSFY5dFg2NjdFZHBsOVh1QUVBUFYvY0J3RG9oWXFSCjE2cjk2THBRZnRQR3lmcjRPMHgvN1pUd0hIc3N2ekdlMHhqQjFhK2NxSng5cVd6czJaSkJDRUFsTGdCQVQ1ZTZYaXJ2elcwUWw5QWIKYWV6aVRuNEZYVmpMNWxkd1JGVnNZVFVRUndERjVWY2Zqa0VWUWpCaThXdnAvSm9PYmswcnQ3cUZVOVBNcnI1Q2J5UFZ5bjlUNHZwMQo4ZkN6SmU2bnlseFBsdy84cHFUdmhldERMNVlNL2I1cytEOHJoMC9VRENIclI3RE40OFMyQ1NyWFhTQnl2eTV4djZsMm56WFozcmVvCk9BN3BsSlhuR0pIK1pVZUJ2NjhtN1dtSkNUMDJZVURHTmRnMUpTSWkrV3hjM0tVVE0vcWs1OVkxdVh2ZHhKdDIwcGFUdEd1bDdEcWcKSVJHendMenBMUVA0UjhLZUVsejNQaGtXZkRvaU9aVXc0NzUzRXI3dHkvN0tUZmorRUlBb1h3RzVBQUJSQUFEZGN3SUF5bjNneVA1bQpBQjZsWDd0eXY3Ymg3c0QzeGF3WmN4WWtIMGFrMVJzU0FFQzFTOXl5WlY1MVJGaTN6TW1mRXI0NUt6eXozWFArbHIwNG9yZ1NrcHdPCjYvSlcxWlNOSHNLRzRYek1XSm93bGNUMTd4NW84eDUwNTMvZFYvalZVTUUzL1huZk9ITy83Yy81WVNqL0cvZjUyNVlMMjlybUdLdGwKazkyUjRIWW1lRWVoSzlZbWovbFFqNUFRODZFZUlTSEdCaStsUjBqbzU1SG9FSUFld2FESDBlZFFFZTZUOVZOSDBWSGZvS1kxWHRNcQpwekhNcVZ6bGZ4NlZ2cFhRRk80a3M2RzNyV1N3MG04Wk1SdXFud0JRUUFXV0hyQUVBTVFoK2FSRXZ4anJsNEZsTVZuekFaY2sySkFRCjhvb0NJc3UwTk5WSERXQVFMcWdGOUlNSnFoRnpDZ0JBeVJRaUNFQkpKUk9BZmdwQXlYVU5vZzljNzJiMXlSZlJRYzBuYTkyVERuWHMKdkFuNmZ2eUtqQ2xKeG93MDFVY21ZMFdYdVdaSXVZSmdPR3hKQXdGb1RvR1lncVZrc0tCc0dxNUthZlBpekdWRjVwb1dBQkE2MXAySwpkajBDUU9EdUVRQ2xZbVRIQVFnTGI2M29uVjdzZGk5dXN3Y2RObVlFVlJsajRsZGRUR0NCSTZBVGlKYzF4aU5OaUhOR0JMOTZaMEw4Ci9wajQ0eEhoQlE5c2kveTVtL1ZGUDB6b3VkVEhmS0srY0NhYlJELzJPUHdYS0JwQW45Uk1zVlM3b0VNQVNzYS9qdFBQenhIUEVlNmsKVkRYTk9GSzVqMTdtcDVmNkdUZG1PUmNDd2pmbUpkbUFnVUpxR0FpREFQUklKdEFoL1R3T1FJQ1IwWk1LNm9Uc2pYSFJoU2wrc1o5VApFV0JXQk9qRjgvd0xJY1ViWVgxK3dwNjM3OHJmN1R1WnNPV3Rhb2hMU3ZRQzdBZWROUTFvVjRXZU5TRG51bElBZEhSWXdDTU1IQlBUCnNQQVBjbkdxWERENTdxbFBna21PWW5nRWdJQitEb0NnRm50d3ExYkNoZzBBRUNGbUpjVnNwRmd2dUthQTlSc2NYckFYNTZnQVVBVUEKSUtETUtYWEdCS1J5WE1BQVUza2lOa3JNRHY0RkhQMXBFNUtNTWVHUGhZdlRnSUdrZ0xVaEFFMHB3V2ZPQkwvZUFsemcwOGFGcnd6UQpNMGI1U1BEOE1SN1dLOGdPU0U2dXlOK01hdkoyN01CU3pONDU3R2RJMlhObDcvZm5ITGlLQUF6RnJlaE5RMlpVaVZvUTQ3dzh6TFFFCmNBTUFvR1J1dnhZZDBtS0JBbXJrbU9nRU9QNm1lZmc1Q1JveXZwd1k2enE3N3p5WkxCbERoblNBR3lpcnNPOFcwaTlQbnhRaEF6SVMKL0xJNmZNUkkzREFCcHNFdUc3Q0xSc0tLbWJ4bUlVVXNsQTByTlE2NEVQNUUxSGw3Z2R0eVVtZWc5a3NLWm8wNWE5M0VpSjYwb1NFQgpqbGxUQW1zSnZFNktnYkNyOEFkTUNnSVFPTU9oRXlpUWJOVUZHQWdDVURkbXNmc1FnR0JacGhhOEtYN0JTQWdad1htZUVaRGZHSlQzCm1oVURla0YvbDVDMTNIdjJ1MEZZWWdOUWIwNkZuWU1NQk12TmxnMEFnSEJSQTM1SGk0eHEwaUlLWE5qMmlzU05yTmdnbG0xam00T1kKeGhsTVl3aFZzNHBvWGlRT0JBcnZUNTM4WWVqY0hXL3UzOTJ3Zk9hSHNhSy9lWUVBQU9YOVl6ejc3Nk80cjVYZ1c1OGIxMXkwWFMyVgpYR01acjdlSnJyWUtHcS8wZmRwc0tXUHppZ1hzRzJ4ZU9hdWpndDFSMnREK2FVdlRGMkp6TlVDRU1TM05PY0IwRFRNQ1hjemhYbDd2CmNQdG9YNlBZVzNOOXJIakExamxrNFE3MThLZE52Q2t6MTlUZnFuUlg5M2JYT1RSdE9rMjdXdDFzbGxjM3NCbnZ5SVdmMjJndmxhcWUKdmpUNGZLMEw5cWU1YnYxQVI3dmg1cjEwWXd3czFmOWU2WHkrd3BkVk1uOVNKcnZpcVNSVVRCT3F0b210TTZURzdaUE10ZEl4NFovbApYaUp0aFVvTG4yMGR2VXdUTnpNcUdld2JBbkVOWDF6RDR0Y1l1TTBhZlF2VDAyRHJiUXZxd1NxdVdEQXlabnZsQXhNODAzU0h3OE9lCmNFbThkdjZFaFJlMHFDWjd1UU5PZ2RYQkh6VFRkZjF0dk1IR3JxNG1TWGU3UXQ4bzBkQmxtaGFKdkVHb3FtOHpOUEJuMnorVnlCRzEKUStrTnpsZWFiQy9VV1Y5b0huaSt5ZjFpdytBTDVmMXBWWTdLNlE0SzIvRHJVaWYwQUpVNm55bDNBZ0E2VWVYSE5Nem1OeThEQUxxZwpIQ2wyYVlwb1kzbU5hK1NHVlV6dHdxdFZQZ0JBenhRUC9Mb1lwaW9EUUhtMjFQRzdjbk4rczdpVVdkL0J1OVl1TEdrWFZUSkVKV0JmCnBNVGhWM0FGbFR4aEZSQmZWTTBXTndBeGhYV2RBZ2hBTFp5cUpsWkZJN1A4QW9PSmI5QThYOUgvYklYcithcmU1MnA3Zjl0by9VTmQKVDBhVEE5bm1JREtkK1NMSDYycjcrMmJicDNiYlJaZjl5ckMxZU5KVU9TTnZXSkJXcjRvYmx2bmFhYTdYd1JnZWxGUnNLSWxmYVFtMwo5S1F0UFhwTFI0eHFzVkUxYWxWMnhpZmk2RGxhSmE5cVJINW1zd3Q3MjByZXNlTjNleW43Y0R3TGJ0MklXOWVUNG5yeWpvYXdvMFRjCjFCRmpxdXk0bnZCbEwvSjdPLzRiSi9rQlFCOFhvQi95QXljQUlDcGdvUHY5NUxzT3loMUg5ajE0TitmTC9yeXZQRG5mdXNsM3pJUk4KRlV4U1dkWlNGNVI1RWNuNzYveWFpTEIrU1hCOWlYODFMTDBlRkJObWVIOWRVcjJmc09kdTI4NHZ5ZDRNS0lsTDNiZzFFM25aK1BxcQo3SEpDVXJxdmZYKzNKL2VXSS91K3MrQkJkKzQzZzBWM25LZnY5ZWQ5NjZGODZ6cDl1L3ZpbHFZdUtnSG9BMFRiNGdFQW9zY1BvWWNWCjV4OEIwQ01rZEFSQWo1TFFRd0Q2QlJMNkJRQTZZcUJIdWVkZkE2RGpESFNJUVRBbGlBc1lxRzZWVjdFcXVyaXVlRE9oTDlnMVU3WjcKaUx0bTdFNFhabE9EV1ZaZ3djSzBvTWtNd2JCRHBsK1hNYTNFejBoUCtpVkZQakZwUnBKSzk0UlY4VWxEUGVtd1NRTFFsQXdMNjhWZwozeUR3QkF6c0lxdk1tcFduKzRIWnFVNHhVQktERGdFSTZ0aEtsN0wyNFVJVE5CRVh1b2pKdFNNcG1FWUpnd2toSTFpaEFQMjg2dUdjCkdPSWlaK1RnS2dvQUtDMWlRSWIxZ0lHZ2xyV0llV1dtTHptMFlGd0krd25OU0RObVJla2hhZWFxQ3JHdXlWbzNvbU13NCtlSkFJUTYKSmtBL21KMGVBRUJBbUtRQS9XQUEvU1FzMkhWVDFxSTJiVWFhTmlKOHhVbFA3Mk1pUE56TVlSNXlsRWNlRStVQ0FMb3d4cms0eXJrMAp3cm95eExycW9RTmt1UW8wMUpHcTZ2cW51dTVocEpRY0U1WlNxaVQreDNsaFIraVRxdkE2NHA1SFdPZHg0cW1lWVI2cHhzZXE4RFBLClo2RktBNXhMYzRKMzU4VW41MFdVa0lJNEQ3cy93ZDBERzBORCtrbUdnUTdwQnlMSVEvcEpBUkNBR0NEc2hEUi9Rdml1VjNCMW1sYzEKeTYrY1paYk44VDhQeWQ5YzB1WkhlM0oybmJsQWNSdDFWWTlkMG1RdHdtWXppQ2s1Z0NlTTN3Q0x6R2Rod0N1VmdaU2lIeGdabllROApjY1JBUDNJWVRBcURBSlJ5QXFXVVlxQ2ZCeUNZS0EwQUNMOXVUWTB2SVVEYnFBZEdjSlowcUZrbFlKcFVPRE1WaXoweENwT1Q0RnY3Ck5KUndiK0dXQy9CQitwdzZ3d3YyUFQ4ZG9GS3FhdEVyQWdDVTVZUE9SdWdwbllKOXFESm1OYmhWQ3lYY2MyS1k5OW9RSFRIS1JZMEoKRVVNUWcvQkJGWFdqaTVvd1VmWnN3RktrN1BlUkQ5eEEwUDJ6MzU4SHRPUEVKN3FCT1VKZWtWSURBc3dVTzJ1R2p3MHFId0VnWUdxZwpKcVhwSG03V0xBOGJFaU1YcEpuTEtrS3NwMkRmVGQ2MHZ4YlN3VjViQzBiaW9nRXpwMDZtUzR1elFnck1xb1lRMWdNTUlxMlpDR0VqCmJza0EremNzbTBpclBlUmxXN0lFekppOUxqKzFKSGh2bG52Ukp5b05xRDcyNmQ5ZE5PV0hEZmhWTlg1ZFMxcUhDZFI0R0pqVEFnYkMKclJrQUFLVVlDUHlTMEFNVTFFTmJKd0N0R2VnSENuYkJXcm1RR2IydXhFZDF5Q1VZd3dZZkREeE9CSCtkMVdKOTZqTmo4Z2FuM0tWWApLRWFOYjMvVm4zMi9IOGJkZ21xQXlNQ2NndUZ6Y0hkSmgxN1Y0V05HUXR5WkRsbktqT2l6L3E3WjlVcE42TldLaGN5cWhSTk5FN2lhCkpXUmpNTU02bm4xN3F1anZrL24zQjA5L05aejNEMWYrRDhNRjMwMmMvTjViOU4xb3dkK0djdjd1d1gzYlI3Mm53Ymo2ejJtTXBkMWYKTktpTFdWMWx6ZndyTkU1ZGFmZkZNa3R4aDZSWVJpL2owRXM3MjBzNEhhWHRuWmRiMjY4cTdmVjlwdllSRGQzbWFYTTc2UUU5MzlYSAowQTIxVHRpYVdON0t5K1BYaHkyZDAyYitqRjR3YXhhTld0ZzJlN3ZaMXRCbmJIS3AybnVWSFFabHMwRmVVeWxnWG5CVm5KTHhuNzNzCi9tM0Z3QXVWZmYrOTFQUGlOZGNsYTlPSFhacC8vK3Zncjhzcy8xYlg5YXNTengrS3ZlOXFwVy9hNk9pNkJXeEZBbGMxUmE1WWY1czcKVlRIS1BGdS9WdEM2UVdiRVR0SW5TenVrakxZS0J2MHF3QUl4dDFJZ2FsQUttOFRtRnRsQTgxQjNoMDhySE9tVlR0ZzRZemEydzllcAo5VGRZQjlybm5NS1FVekJwWTQxWStUTzlISEE3M01QM21ObXl3WGErdThtaGJiSnEyN1hhVnJHOFU2SnZsV25hcElwNm9hRlpIR1NlCmsrdi8wREQwKzByWEg2djcvN01SL1A0OXp6VlpYMmgwUFYvai9JK0szcElSZHBGRTllc1NCL1FBbFR1ZUx1dDdzV0wwUkdXUTBCVEsKYnc0WDFtMThZZXE3WU9qUGI1bkphVndsMVlmUllOOVYrVjRzSFgybTJQWHI0cjZuaXgzUEZqdWZ1bUYvc2RTYzJ5QXVwZGZUT05jNwp1Q1UwZmhXYlZ5cmsxd241TlVBQ1FZMVFXQXZFRjlZQzVoUHdhdms4bUFERTVGVjM4cW82ZUpVdHZJb1dYdVZuZ3RZQ3BoVEo3TVp5CnV5a1NmWTYydThoc2VkMWsrc1NodStEV1hSNHpsTXhvcStmVURZdXk1bFZKMjVxb2ZVM1JHUk4zYnRCWW0wMjBuUlpHdk1Nd3p4enUKcDAwNWhheVFOUCtCbG5oWFQ0WWVJRjEyUklPS3FiUFdGUVd6d2xJclJ5Tm02VFNDUzM0TjRhQW5aODlPQnVmMXZoMmN3cWcxRFhaRApDd0NJR0Zkak4rU29YUjFpVDRlNGFjRGU2U2JjdFZEdjJuUHVPZklBN256dElIOWxwd0FHZXVDa2ZnbnBKd1ZBeEsrY09iY2QrWGZkCmxBZDIwcDQyYjFXU3V5aEhMc2pCK1l0WmsrZXVjaTVFK0JXcmt1SVZCZUNldDJkRXhDQzdmRlZ6QVRhbk1WSVdwQVZ6ZWxTd0I3VUUKdDY5RmxMWGI4dmR2S1NtM2UvSnZEUlhlRzhBLzZNbjV4bFY0dTYvb1N6ZWdIOHJkN2crM1ZMVXhFUzNHb1c5eGdUb1RISHFDdzlqaQpzaEtIWXNZNWo0aXh5UWI2V1FCNlRJK0h4aDV6QXYwa0tQWlFQNG1JL2VnWmVoeDlEZ0hvUjBnNmFxc0kxTEVNR2FoNWpkMjZ3bWxaCkVwU0h4WCtPS1YvZjBWRzN1MGk3WGJoZEk5aXpBREVCQU1GWjFFRnc1ZGNpNWd3bmZISmd0Wjd6Q2QrZmxSYjU1ZUJhaXB1RmxBTmQKUWNrcUdSZ0xTeklRWmtZQmhQSkJBWU1UMEEvQ0x3UEs4cXVBSG1KUUVuMmVCRUJnNFNQTWQ1RkM1aFQ2QU5zVnVyMFhqYkNsNFFLYwp5NEVFQU9TRlRwZlgraGlvY1RFd0R0T1h0U2ZXSHdMUU11ejNnNWhUcEhtRjZXUDh6REVCVEtiMmlUUG14Qm1Ma3F5SUNoSFZJYUlHCjVLWTVhOHNJaE56dUFrTHRtSUJTMjhjZlFlK2FnVEI3M1VCSjk0OEYwQTlteXdKTGhWWU5pSUR5eEtRb2ZSU2EzeG45TE9RZ054TXcKMlRDWE1pTE05L0IvZFhXTWVXMlVlV01VbHErWEpKc1pYaDlwQTRLUFBFbkpDUmlIS2hsbC9LaHgra1BSNEx6M2ljNGZ4OHdDN3BsawpsRTkxVmt6VFV5cWZvbFZPZFZaTjB4OVI5Y3lqMEhPa1dqKzcyZy85TkVDVkFmYjFBUGZUT2VGYmM4TGNrSndjbEJQbVlNVmRxc0ZkCkNvQ082T2M0QUNHOWFwUlhpVXlGTUwweXdyams5SVR3d3FTb2RFWmM0UU12THJ3eUwzODNwQ3BZTldZbmJObmJkc3FtRmF5K1lLVkUKTEduZzFBaXZET2RWNEgySDZKTVNIRFdWSEJHWHpJMVh3QmpabEFyeUVNVGs1SERXNUlEYzFCQ0dSd0FJNkpjQkNML1NBd0NJc05FTAowQWUvM28yUG1MSExlckRXWmszTE1rWUZtY00vQWxEV3VCdzdyVWtmbGJ3NktpUXVtZktqRG5BNG5waVdwTnAwSWtZRWdHWXlSdmtaCjR3SUlRSDRKRk5qd3loQStOWEt4aXhMdnk0bFlYeGxrWjNvWXFDRU9abGlBR1JKakp4V3c1andCczhuSWU1QitTUHV1RkFEQnlxLzkKdnR4OUI2QnZmRXovZWxENWhVZnd5U0NMTXMzSm11VVNwZ1JIQUlRS3dzUTY3RHhnUkRtc0Y1aG1JVU9pckhrcEtxVE1pVm9MdGdhSQpLMVlVREJIQ21EUUFXY1NVSkgxS2dBeklNTXNxQUVEa01DeFBJQ3pwWVZPc0pRTngyVWhhNlFLaXJOanhZU014TEQ2L3dpbGRZVFV2CnNXckRyT0lZKzRzVjdRZXI2b0kxRldWRFM0bDJrU013Y0VaYzc4V3VxSEVBZ01JNi9Lb2VDTGRpQUw4a0VQaHNtQ0RNMXdNZklPbkkKaFIxTFlYYmVocElRMHdNQUFwOGYwQTgwZDJZTmhHa1k1UVRmNGgyM2lPa3hGaWRjdUs4ZDJBMGpUSElLS21Ic2J4N0crNUtwZjJyWQppR2l6aXh6clRZdklzSE8yMzlPY0wxV1AvMGt5aGVzT25tZ2VTV3Z4NThrM3lOWnA0dnBBL245NWNyNGV5THMvZlBMN2lieS9EK1Y5Ck4xN3dyZS9rZDFORjMzdUsvdUhPL2I0ZmY5ZWF0K3hBU0tiUDhQcEtiTmNickdVdHhySkd6blVXcDdwTmMrMmE5VWF0cVpMSEtBUG8KdytGVWNEcEw2SzFYYWVJeXRiM0JyVzRmTkRKdG83UmhLMzNHSkhZTTBuWHVkcmV6aVROV1ZlTzVNV0NqbVFkRjVsNytVSS9ZNG1UMwpPRHAxL1RTUm15NXlNTFZHbGtiVkxsYlZsNHM3cjN0cWNLMzJaNjhNQWRaNXFzcjZuTXp5VkxXbFlyQ0R4REg4K3ZMZzgvV1czN0wxCi81MW0rOVhWcm8vMXd2TW1RVWIxeXA4cUY3SllZL242NmJlYzlndkRrdXcyLzlubThKbTZsZmM3ZmFWZDFtb250OExjMEtSdW9FdnEKZU1JcUtiK1dhNjZqVFRRS3ZIUnJ2M1RVS2h2b1kvZU9DbFdCRHVOa3k3aU5PZUdRbXJ6UzdqR0p6Nkx3MjBUeUVVR1BUV3pyRllvOQpUSk9sbzlmWXdYTFJPZDEwb2JSRHJtcVc2RHFGOG5xeHFrWXcwM2xLNDh6bzl2eVI3M3FwenZISEd1Y3I5WTZYYWl6UFZuVy8wQVJZCnAvZHl2L2k4VnZac3NmMjNsWTRYS3V4UGw3cGVyaHhKcTF3aHRZVHptellLNnhlL01GdmVGY3psTmExUUd0Wko5Y3VvV2doQUw1U04KUGdVRFZYMkFuSjRwc1lQdGw4cHRCYzJxQ25vcmcxWEdaRmV5T1hVaVRoV2ZBMENuRGdqbU93dHFPY0k2bHJnR2lDdXBaRXNxV1lwcQp1cnFHcHE5ck56VzA5alMyV3BvYVhDMlgrNFNmRGhpdmpPcUtweFdsSVczMWlxRnhTZGtTNGJSRk9iUTRON25BczVnSk9tQWRScUlkCjV1b21tSXoxZHVaNkt5M2VUdCtrYXhkNDdrR08zOHJXVFV2ZXZxa2gzZEdSZDNTNEpBQWhveXJrcXBJeUwzNS9pTU5STW13Y1ZxZEYKOU02Q0xuY0hXbnJVSFN0MlF3K2VnTi9VVXJhTXVIVWxZa21VRTlYaXR3Mm9mU04rcnl2M29DZnZyaTMzUzhoQWdHL0k5MjFBZ0g0QQpGWkZ2V3ltMzdObDNuRVR3MTl1TzNGc082a0ZYd2Fic3c0ajAvYkE4WjFHQVdnTW5uWW9RRnB4Y0YzMjhKcjI4cFBwd1hrV1lFT1RPCmR6YXZxOERaQ3Z0N0JTWFpjMXBZT2hRUXY3WE1MMDhZcnU0WThnODB4SHVXb2p2dTNGdDkyRy9jT1EvNmN1LzFVNzkyRTc2eW50cFgKRlFQNFMvQm8yMHptTmc4SW9NK1JqaGpvaVJqRTJvUml4dGlQNmNrdzlHT1MwQWE3YzUzMW8zNFdnSjZzeDdOL0h1WUEvVVJIQU5TNQp6RzFiWmJlc3dYN1R0Q1ZPNDRyZ3lycjB3N2lpYUZ0UDJkWVI5NHo0aEJFZGhwY2RJRVJRRHEzZk9TTUFJTlFvNTV5WDk5ZDUrZHZ6CkNvcGZSdlRMOFg0bHpxOUMrVkl4TWhqOXdBRkxmdnBReUJrNXNJZUJJUDNNd3RIdU1HSFVwMExCSW5ZWTVVaFYxQitaK2luei9zZ0QKQkwzZGk4WVVBR0dXSGdKUVNKUDBGMGpUM093MEp5TnJpQThXck15UU9tUDFSL29CNWlMTXhCampwdzF6VXdDVW1RS2dKU2t5cXNtSwo2VE5qQmtUTWxMbGxCRUpzZHoyaVJ3QW9SVDlBdUwxZTZBZDY2UDVCTDJvemZiSzBjV0hHbUJpWTN3ZzNKMnVBaytIaGdEV09QQ3dvCkdPVC9xbmdNam0wdkdlMHNnNEsxV3NWakhkZkhPNDRCelUvMFdEWDdvVXFUNVZxSGVvZytnSHNxcHBodzN1d000NWpvUUQrRm5oOTEKSEhxTzBBZW8zc2V0OXJNQS9WUUZPcXNDalBJQTU0c0EvNU01UWY2Q1BDY29nMVBjNTlTd3JNNnZCL1NEUFFaQXFjeVlGUDFBd1NaTwpDdVNFS210Q0JkQ0JPaTU4ZTBKOGNWSmNPc01zbnhWY201T0Q4N05vU1pzZDdhYkViYW1HMlljQU5LZEFlaVhFQ1JsNVJrWDBxWTdvCkp6a2VKZW4rQWZTVEZHQ3NGQUNsZkQ5WlNSMEJVRXBIRFBSekFBUkwweGZORUlEV0FQcFlBUDNnMWt5WXNBRVB3NzNLWTFnREFRaW0KQVkzS3M0WWxydzV3MDhiRjBDY1pNbVpPU3dHRFE4ZlBpQ0JyaEErVU1jUUZCeHhpV2dUb0J6a3JoYWd4SWNtYTB4RTJiSENTMTFydgpxNE5zeEFBOWE1Q0Y4dkN3WXpKU3dKZ1RzV2R2OVJHM25kUnRCMlhYU2RsekFRYWkzQndBQUVUZGc1ZE82RitKcXQrWWw1VFpXWTFHCittY3VGbVdHKzBxQWpRVmdrV1FnbUFRWDFBRElnTzdXYVhtbWo1TVZrcURtcFlCWjh5Tzl1WnY5cEZBUFpVSVBmbHZNdEJ3N0tRVW4KUStZRUh6VW54NFUxMkRVdE1hUUhZSVNiZzJCQldJQjlzVkk4UkZrMVU1YlZaNWVFVnhhNTdRdGN4Z0svYXBuL2x4WFcrYm1Pd25rNgpPU3lnUnVGT0pJZE4rT1Z1UXNRS1gyMUZqVjNScGhnSVZvZWxBR2hSQno4ZWpLS3FzQUZ0S3BnTkV3Q2pLa0pNQ3oxQTgyb1lJUE1CCit0SGpKalFaVStvVHc2SUNqL1JjMUhieXZvY1VOYWN0eUdFN2hqazU5Q1JEYzBxQjhNc3pBM0pBYi9pb2poU1ZvamNsR0ovN3hmcVIKRjBySFg5VjdQajdZSUE5N1RyVE41RStIOG5kSGdJRmI4R0NBZU4rYS9iMG4vLzVFd2ZmRGVkOU01SC9uSy9waHN1Z0g5NmtmWEFWZgp1dkNiRHFKNUJFbGJQTVVidStvdXEraS9YcTByYnVMQ3ltcUdxUGhHWDFuWlpGdWR0cUdOVnNKbGw3RTZyN2MxWCt2c3FkUjNOdytwCk8vcWRkUHNJYmJ5Yk1XTGhtZ2VhWFE1Nmo2ZFZPRnJkT1ZnbUhlbjRTMHg0UHN5LzZ1ZFh6N0RycHpsWGdyelgxd1ZudzhMUEp3WGwKYnRaVlY4ZDFEV3lIOGZLTnNSZkw3ZjlXYm4rSlBraUlPdlA5NHhXajlKZWJETTlWRHIxWWEzMVYzWk05Ty8yQzJQQmhWOGNuR2k2eQpiT2tQclVIYzROVHBoRFUzckFiR2ZlNXdIOUV3L1hySCtJZjhrZmVXUndxK3RoUWtwQi9NaXo2YkVWN3BiMmt4dGZITVRXeFgzWTJGCnpzdGJlbVhRTkQ0bysvT2U5bktZMFR6TGFKOVhmN0p1b3U1cC9yeHRGcTk0VE5QS2N3blp1OHZTeitkbGwwTUNsWjJwc3JNL25lZVYKQmhTMEhyWlVXaTlRdExOMVRjS2VScmEzbzBnMFVMaGtMd3FOcEJ2NlhxeDN2bEkxbGxFLy9sS04vZmxteC9PVnRqLzNLRDdxRnY2MgpyQThBMFBOVnZjK1dELzVIMVZoNjFUS3BlVFcvTWY1NnAvZGl0K1ZzZXlTdk9VSnVqSklhVjFDMXdmK3NubjZoYkJnQ1VHbi8wMlY5CnZ5bHpnbzJYeW52eld4Umx6R1lhdTdTVFhVSG53NUVYTkZGTnA3aVdJYStqcXhxWXVrYW1xWW5WMDhMcWFXSzcyOWlEcmF6aGRzWTQKalRaTmE1K2x0ODB6VzROTXdYSmJSMWpZRmxFeE5rUUFibWhiMExmQmpyWkQxa20wTXhNMHlEMHhHaU5HVHhVcjBhTnRyQVNISGVWegpveUpHRE9iL3loZUZ2V044djRWcEd4WmNqNmx5N21nSnV6cENISnpkR3BndnNxUkNMSXJ6SnJsMVdwcU0weVlVMHVwN2hXZVdOQVdiCnRtellIVTZGV3BXVEUzb0FRT2l3SEJFVTU2eHBTSEU5ZXRlQTN0RVQ5azNrdTcyNCs3MllCNzJrTDYzRWU3MlVlMWJxUFN2bGpvMTAKMDBLKzFadDl5MHE1MjB1OVk4dlo3eTVNcUQ2S2ljcmk0dEpOeWNkaEhuSlpTbDVSRTFhVjJBMTU3cXJrclpEOERMRDd4d1ZuNWhqTgpHNHBQRnhURUpUVnVpby8zUW9kMFFaQjNPU0w1eTA3WDZiMmV2UDJlZ25zMnlsMEw3cFkxKzhGd3pwZE82Z01Yd0svQ1c0WlB0MFN0ClczejJMcCsyejJGdmNUbmJ2SlJZT3dDR3VDbXh0M2dwSGVjaElIYjhVQ2tTT2laZVNyL2dIem9PUS8vVUxmU0lIblg4UE5UanZxS0gKb1RRZXhLTmtKMnRZTExiR3JZd0lyc1hFNTdkMEJWdHE2cmFSbE9pQzE3U1FDZ2dSbE1Jd1UwQUhPN01NOFlyRzJCZm1aQmNXbGVmOQpvaHkvbk9KVDRIeGdTVXFtTFU4cU1WNDVIaXhTazFMVWxPd1FnSkpKRVJDRFp1V0lhY1V4QmtvMWpFMWkwRThCQ0d3Y3Vzd1hvQUQ5CjRKZE51Q1VEWmlsNVJWM1FaczBxSVBRTTgySGFqWWNIbHFFc254eXNCWmt3bkpMc2RnZ3VraFBDRTBPY1F3Q2FFaVFUZ0lScHkxSkUKVElQWTFFSUEyb1QwODBRQU91NFdTbm1BVWhnRTA0QjJlakJiRnN3bWRQOWt6U3RUZGUrdmpZblNobmtaZ0g0RzJBQ0Fzb1k0cENFKwo5QUFWZXhtbEV3eFlvcFVVMkM3MmR0NlkvTkY1ODRoK0xtRzVmT3FuT2tLZmFWYUtlNnA4ektUQUJtU2d4OUVuU1QrUGVuMk9CQUNvClpwWmRPY2NBQUZRNzIxbnBaMTBQY0wrWUV4U0ZwTGxCS1hFZTV1aWttdnhpa2owUEh3R2dRL3J4SnRPQkp4VG9jUlZRMXJnY055b3EKR2hPKzY1VmNtMmFXelBLdnpVay9tbGVjRENseklpWnFGSTZXSmNCTUVSM1laOGlBQXVzVlpYdWwrVFBLYko4Q0hCQzRoKzRmbVAwegplUWhBeVZtNGlpTUF5cHJSSW1hZ2NZUHlHWTZpWUVjTTlJc0FsQnpJc055ZEJLQnVYTVNjcW1EQ2gyQ0NjSHFLZmthRVFGbWpZdVNZCkJPVVdwVGxZbWNOQ1FnQ21wQUg2em9BdUg1Z2tsRGtFblg1QWFZUHNqRkV1QUNDRVQ0enlTN01nSVVreGk2YWNuWUc4UFE5NXBmczEKRHlkOW9ETjlrQWtPWEhEQ2tCWmgxUlV4YWlWdDI3TVRrSVFvTy8zazNjUDBaL0t1RlJmdm9vWlZwSFVGSlN3Nk44Tys3R1plZFhPSwpKamt2aDVod05HbElpMTFNbG9PbDBvQmdycm9LUFNzQ0FJUU95dkIrT1hIUlFOeTBFVlo2Q0NQZ3ZPV2pSMFdvRVFGaW1JY1k1MlBtClpYQmUvWEp5d0UzU1d3c0JaVjROKzVjdndySUY0b3JteklMODBvSzRmb0hiT05kWkcyU1dMdk0vWCtMbmhkb0l3UTdVRWhzYmxwRlgKZFpTVkxvQ3dzSUpzVFFkZURiMmtCQXhFV0RNQUJvSnRFaUVBYVdITDBTU2ZwWHpGR0lCQjgzcE1WSTZQYW1BYjY3a2s3RTVwQWYyZwpoeFdJSVRGeVJFcGRNR0h2dW5EYk50S2NKaU1veHdhVnFJQU1NQkIwcW9IVGZscVNNU3RKQVJBcXdzZkhWUVU3RXhuVzhaZWI3Um5jCnJuZTNmRVYvRzg4MHVVbkxBOWwzN2ZsMyt2SnV3VDV5K1Q4TTV6MFlMUG9XbGhQbmZqK1ovNC94dk8rZFJmZWR1VkUzMHR1SFl3YncKTFV0bmVKNXJuckthZ1VzVmlpdk43RVltcjZTTmU3M1VYbnBocWZQQ0RLZEtYc2Z1dU1KaVhtL2kxclM3UzQzYUZxK3VzM2U0dGRmZApNZFhGY3ZaMWF2cHJwaTFjN1dpN1lyaUdQVmpCSDJtN3VDNmt4QVc0Qkkrd3hjbmZGT1p1U2xGYnNxeTRqQnFSNVlURnVEWGh4MU5TCnRJcjJxeHY5djIzcytmZUszdCtVOS81eDFIamxkdmUxa2VaZk4zYzlWZTU0NW5yLzd3WG10MjZPNWE0NVAzVTNuQk1La0dXejZTMEwKcEY1LzBacUNGT0dpVnlXa3VCR3gycHM3NkhqVDZUeS9iQ0hjVm1YZFZwRnVBNnd4NEc4cDN3MHJxcjE4VFc5SHE0ZVp2NnYvNkk2ZAp0OUZUdnFTOE1rOS9mNG1XbjFDaHQ0M29tRG92WVR4L2QvRHFMZk1iY1UxT1JFbmMwaEIyRk84dkM2LzdCQmY5NGpkMkRDVkJEYzFLCll5azdoRjF0c29HMlRtOWJJY05EY25lOXZlMDhHWE84Wm5JK1YrVjZ0WExzajdWOXp6WFpuNjIydmE5VC85WEJlN21pLzRVSysvTlYKUGM5V0RQK3BhanlyZHA3UXRKelhHUDFRMmZlRnhaTGZzSjdidGtwc1dpTTJMQU1BK2xQVkZBQ2dwMHZkVDVYMVBWdlI5MEtsNjVseQorKytxVFhrZDRtSkJmWXYwUnBPaXRGbGIzYW12cGp0YUdQMXR6TUYyMWhpTk8wWG56akw1OHh4ZWlIMVlSNTNzT0F6YjZNVTRIWnNzCklOWjZDMnd6RTVkd05wbjBXRE50bTA3ZlpuQmpyYXc0a3dVRE44bGE3ZzFtNXpvajFiMEdBQkE5QVc0Rm5LaW9jNVBiR21NSWxqbjYKU2ZaMGIrZkFBSzlqVVZGMFU0dS9xUU5NZzBwb2NSRUlRSmxMVWxTQWM3R25neVpvRmpDYkJTTDZwWDUrM3JJcFo5bUFYWkNCODRXNgpaYURFRFFDR29QTjFXUUVNQU55V1BtdFhqN3JaaGI5cHh0N3BSbjNaVGI1bklkMkJBc1JEdVcwaEh2U1E5M3VvTjN0emJsbkk0TUY5CjQxdWJzdktFaUxZbmJOdm1OV3h3c3BlRjJhdHFjTVloMTdXWWlKSzBxcUFzS2hIand0ZDl2T0psK1NtZkVGNG9QQnowcUJBVGtMOFgKRm4wUjE1N2EwcFAyTFBrSHJvSmJkdnc5Qy82dXRlaU9Hd0JROWozSHlZUHVDMXZLcG0waGE0L0wzdWR4OWtXQWU3ZzdmUDZlRUlpMwpLd0JVQk1UWkU0QUhqM1JFU1BESlcvd2pjUks4SitvSWtwS2NkQWhHajdQUmt6MUdqMlVPSFhMU3NVYUxQMm02K05nelUycVBDdUZmCndSR3l3UUE3dHpIR2JvenlHOWVGSDIzcHo4WlVlVnQ2YXNLVUFpQU0rRDJEVXZTc0JPV0RwVjZvWVRGbGlQMnVUM0I1VVhwNVRuUnkKVnBIcmt4Tm5GT2hKR0oxQWp5dUFaVXNZaFgyY2djMkpUR0lRc0lUQkpTdkZRRWNBbEdTZ3c2YjVFSU9PSlVHbkFBaXVnTWtScC9pZwpBYVpJTG5ZUmxtQW5vVlEzWjhTTURJWXB4b1JwZzV4TUR3ODFLc0o0cGZocFJWcElpVmlBMlFMSUtRbEFIN2drRFVFQXlwd1JaY3lLClhwc1huRmdXWlVhVkFJQXlObldaQUlDMjlTa2hkZ3pIZGZ5UnJGMGpjcThMQ0xWdlN0SlBOK3lPdUdFQ3F6WXMvcDhRbzhiRnI0NkwKMHFBTGdKY08xamdQSjNPUWhYV3pxZjJzWDkzd01nNFp5TXRNcVdTS0JaVENseWZvWnhLV3EvMnNGT0pBM0FIUWM2VEg2Q2NGUUQ5RApQejhDMEhINkFhcWI0UndCVUkyZlZ1MW5sZ1k0MStZRkp4Y2tlU0VaTVNpRFNjcHpzUHo3bHdFb1kxSUdvMFdqS3N5WU9tdGNDWFlNClpVeHdla0o0YVpweHc4OERBUFJ4UUg1cVhwR3oya1ZkdDBDcVhZWnVnS3hGRlhKV2lwc1E1VTVLaXZ6S0FzRFVEOTAvRUlBbVZTaXYKRWdiWEFBQU53MmdVQUNEd09KekdtZ1NnVFAvL1BnRGhWcnRUQUlRSnc0RXB1S0FtYzFJTVlCWUFFUGp3V2NNQ0FEMFFnSnpjRXpZRwp6cXVnQnJ0Uy9pRnd3R1VNY2dIdHBnMndJUFlPc05NR0dDa0FBa2NiMGllQlpZZFRja0xZa25kekdBQVFPSUxUUGR6WGh1Z25SdGl2CmpRc1FBVFdjckx0cVJxMGFTZkhldkUxN2R0eEpUVGpKMjY0VUFKRjJldEZSUFNLbXpGMlZaVWZFbWR0OFJKeFh1TWc3T2NQQitKakEKQWtBRk5TbWJBT1lSSndFSWxnd0V4QmtCQVhKT2dwbVdBSU1ESGJjUVlsYlVxQXc5SkVCNStBZzMrSnhNdEZlSUQ4TDh2b3c1MkdRQwpHQ3ZBVWtINVlJc0l6SndLTXRDeUFiK2tlaXNncXBrVHRvZVlWWXVOeGVzdDVURlc2VEw5alp1cW5JUUVGUlptTFlpQWNabTdacVNzCkd6RVJkUXFBQU5CZ1YrRGwrQkNBVnJUSnBrSGF3MllLL21SaVlFQ0xuZE9sQUFpNUlFY0dsT0RNeDB5b01XTXFwRWRHdFFyd2syck0KN2NIOFcwUDRlVzM2ckF3ZlZDSG1vRWNOWE1GaFJjTTBMTExMREVoeEVSMGhwc2ZFOVlnVjVlbHZodkwzQms3MnVkNldlWEpHK2tqLwp6MlRoelpHY2pYN0twaFYvczRkMDI1Vi8wNXQvWjVqeVRmZXBiNXg1WHcvay9qQ2U4MTlEbEcrc09YdFdRc0QxYW5jZnBXMk4zQkk0CnpiV1dqcFMyRG45ZUpiN1l4R3lsOFlwYnBGWEZYVmRPQnFxTEVySnlCMVBRZG9uTEthbFZ0dFlQWGRWS203eTZEc040dmRuZTZqT3gKN1NNMDdVRGRUQzlQTmRxaEhhZ1d1U3VkM1MwZW03QjFUSFE2TENCRnVaU1ltTENwUU1hVTRBS0UyMUJSMTVXUU02SkM5RHp2TjdxcApaMXRzejFVWTAwdEdubVgwWDEwb3JRd3lYNVlPUFYxaC9YMzUvSDlyVUdYT3M4NS9ZN3M2VzBzUzlHVFZUR01xRmdsMXN5Zk5xck1oCkxqRktTOS9RcE1mcG1IWE5HNU82eTczc3ozcWJ6NFJFT2JkN2Nic204cDZCdXFsRDMxSmRYaEoxdVBodis5VkZONTJmL24zUTQ1SnkKWnBrZlJ0cnpZK0tDcUI2d1ZPNnFwR0RUY09XQm5UZHErT3VVTm45Ti8wWkVUZHlXaytLeUQrYWxtWEhwQjdkNnFoWmxOQk5ib21xUwpPWnRieGx2eW1LTkk3aURGcHpyenJTb3ZQdmd5MS9tbkd2ZXJUYTduR216UDFOamZWbW91OXJQK284b05BT2k1eXU3ZlZJNEFBRUkxCitIQ05nYnpHOVlzVzB4V2JOYWMya3R1K1NHcFpKdFF2SVd2bUR3R28zUDFNaFF2ZzFFczFnMzlzSDBBd0hXL0tOSFU5Tkxhemp1RnAKWm5ucC9DazZLMEJuenpIWUN3eldDaHllUU45Z2RFWVpIYkhPOWlnRHFEUEtCSGZwMFU1R2pNNkswb0NZQ1daN1FrTGJsZ1Bjb1VWYgpXN2ZZOUIwQU40eGtDK1BVQXN3QmY0SThGS2REYlhVeWQySGFMeWZCWmV4MnR1KzJpZU1zMDZKdzB0bzU1T2FKL2JLekJ6cjhMVDFnCm1zeGRIWEZkalZ6WGswTHl0Q0RuVFZkSGk3Q0p6V3pnczl0b2NtWk9RSnNOenRONUtUNHNCMDhtYitxeGEycGlSSisrSWlOdjZLbmIKWGRqOUx1d3RNM25mVEQwd1UrLzFRZ0M2MndOWUIrb1dwSjhVQUJYc1d3aDNMZVFEL1o4VDB2WnRNZmVBeTlsaDhMYzQ1MWVsT2VzYQpjQTNCcnBuUW13WkVRZ05PUnV5NHNHaVU5L0dzR0QzQkFkZEd3cEFFT3lFSDU5R2YxMFR2YnB2em9qcnFqb1Y2eDQwL2NKRHZPZ3J2Ck8vUDJ1M08rN00rOVkzOTdVMWV6TGhYc2lyaTN1YXdEbm5SWHh0M21DUGI0d3B0Q0lNR0JnTFBINCs3emVRZUNJeVI2UlB3ZElSQnYKVy9CRUhjZWpoNUFrQUdMSCtZL29PQmdkWjZQSGs2a1BGUk0rV2NtL01xUDhSOVFXRjRPL3NqWTR0RTFtd3hhamZvdmRzc2xuUmtTZgpKblRuTjFTRmNYMU8zRVFJYTNFTDZpUUFpZEh6UWtBenVFa2RXTnF3ZzZ5ems2enJpOUxhQmNuckFWV2hUMEdhVm1DaDVTOURqY214Cnd4THdneVBHUmRBcmsyUWdPTkY5U256SVFBL3BKeW1ZVVpyQ29CUUFIYVVCb1pNbFlLbE9pYmg1STJTZ2tPNG9GUklaQUVZZ0xEZE8KR3hlK05zUUZTeFZtVEl3YkZSTkdKU2ZtWWVkR2RFQ1pPUUhZaUEyVU9jeURBT1FUcHdEb3RTVmhlbFNSR2RlbXg3UVpNVVBHbHU1eApBRHFpb3FQSFV3d0VBUWpTRHh3V2hvd1l3UnVsVFlreVlhRzArSlhreUhvNHRIV0lDOTFPQXd5a2s0NjMwMzVWN3FWWFRESWU2aWNlCm5hT1VuU05CbW5rc2JmbFFQMUxPVC9Sek9UMC9wMW8vNnlFSi9VU1ZzMUNBZThBMnVBWGI1Yk9Nc2xuRzUzN2gyd0VoTlNoQ0x5amcKUEhCZnN1WUxqZ003clA5S2xZQWxzMy9VTVBMbFZRQkFRUUlFSHBFQ1dFYVBTSEFqVWtERTU3Mjh6NmVGWlQ3aDV3SFI2VVVWSVd3awpMWm9LRnJwUnk0Q3lOWVNBQmpNdFI0OExjcno4dDJkRW4wN3h6MDFJS1FDZllVZEJMWFpjVFJoUmd5TXZiVXdPWGh3eEprTk1RQWFDCjFlL0pkR3kwNzNEMFpxcEhNMjRlVmh1bG11OFJGM3FBWUN2Q0VDejdnajBTRjh4QW1CRE1xRWN2bTdGcmdIN2cvRGIwQ25SWFlHWlYKcjQzeUFjeUN3emZUSTBBTUNsQ0R3c3crenUvdExNU1lndXczNEtaZ3dUa2lGZlB5c0FBQUFmVEpjckV6KzVqcC9aMklZUTV5Q2dKUQoyaXpzZzRueXlnbUw1dHpkUWVydUFBUWdOK3lVQURBWkdBZTRPUTBnZWxoNHRkb0Y4QXNmN1NiRnJaUzRBeWhuRzVCUU55R3F4cTFMClQ2NEtzbGM0aERBWEUrR2gxd1hZZFJGMlJZaWFaMmZPY3BCekluQitnck1DanA0SXdqa3ZBQlN5L0NLVVg0enhTVkdURXZTVWpCdzAKa3NHUERJd01Edzg3eU1seTB6T0dPak9tdWNpUUJETXZRMDd5TThiRXFBa0JkcEtIbmhJRHFNcUU3U1ZVZ0hlcGM4elBRK3ptSUswKwoxRks1VEt0ZHBEZlB0N1VHbTY2c1NpL2NzWi9jMXVNbTZvb21XODZHMVlUVkx1UkdGMzVGQjFnV3U2UUJ0N2dWUXlvSENMT2t3NmIwCkVJQXdNd0J0TmNSWkhTVUtUR0VObkFFM3F3RjdsanlzSW5vVUtMZms1VEZoN21aLzBlNEFaTHRGZUFGS3RwUVVnKzhGZmxqVXVBZzkKTGdJL1BzSW5ocG5YVVMxaEE0SVhXTlR6LysvaFQrUGFxbWxoMWFUNFhFS2JuZWlsSkN6a2VBOTV5NUs5YThzK2NHVGZkRUxkY2ViZQpkK1YvUDBqOXhnbldIdUsyQ2JEYW4wWTVXTUVFdm1INUZHdjQ2bmhyK2NpRk1rRkZJNitqU3ZaWm0rUkdrLzdLeDRPWENnQXJyRWxyClZYUnB6ZWVsamt1MDdnYURyTkhSVzY4ZmEvRDBNTDFtbHRiVDFPZWdBUUNpZWV1ZFRxYW92OUxnckFGZzFHZHRiaDdycEVRNHlEZ3YKS3lFbXIwbHpsbVhFc0J5MUxrVnZ5TUJ5UlZ4WGtTUG1kSi9xdHhiRnJ4ck5MMVlZL214Ulg5dnVJTjRaK2plQjQ2bnJ6cWRxZWw5UgpkYis3YnJxMlhIbEsxSHVpWkJ4ZE4wT3RXN3JzNHAxVlRXR2RObHhVUmxpU2d0Y2hSSlRra0tod2luTnlpbHV3SkNyWTBSSjNqSVJ0CkEyWEhtTC9mbmI5aklxOHBjemZVYjkyeC8vVjdMWGVTM1RyTU9CT1JFdUk2YXN5VUU5V2VYaERpdnJGMHJ0bWwvYkozWnhqNEdKOFkKRVdQaTJyd05VMEZFbXIzQmUvMk81VnJZd3RGVm1aMFZ6VzVGSWNkTm9JM2pGWmEzVmh6djN4a29XTzcvZzZ6cnQxWGRHVlVqVDlmcgppcFRtRzZQdGlKTEIzMWNQUGxWcmVxYk1uRlcxbk5HMFRHMmNQOXN3VWpuTStWQTdUZXIwNWJRdkZUWEVzNXMyY2MyTDZTMlRyN1Y3Ck1waHV2S2lQcXJma1drMmY5a3UvR0JGVnpIS2FseG0wU0Nkcm5jRmRZM05YaFlCNG5paEdsSFZjcVFRVUNEZGJyRjhRZTV0OUpNNE8KQjRpOXhUMFNZQ0Irbk11UGNVUlJqc3ZGR25ieW5CN3BPenZLbkYwMVpWZUwzOUpSVmxYRUZSVnFUcEMyS0tDTWRaWUtHMWl0RFkzYwpsam9qajdwb29FNUpjRk5jWEZTQjI5ZGp0N1RrUkJjYzVCZVdZeUpLOE10VDlpSDlZUGVNK0p0bXlqMHI5azQzNlVzcjJDRGU2aVllCm1PRThuSVB1N0pzOTFMdDIvTGJxcmJpNGVWY3F1Q1ZpM2VXeTcvRGxlNUxhZGRIcmMyeGlSSXVNOTZEV2REa2JCc3FhRnJtc3pCN20Kbzkwc3pKaUE2SmVqdlh5Y2wzTjJVZkh4aHBHOFpRS2licHR6ZG52eTludnpEcXg1dCsxNWR4MTV0NTJ2YjJtdkpJUWRCeUwrVFFudgpRSlFrSGc3L3BqZ2w4TWh4Y2ZmL2lUaDd3dVBpN2Y0bzdvN2dTSnh0L2hQMVNHVHR4M3lqTGNFallpVDRUeFNBMTBlVWFrSjlwS1BtCjFLbWVqZTB4Ymx1VVV4dmxYNDZyWG84WnNyZk1wSmdPc3lUQkw4SithZUFTaEo1SkJUY1VXVVA4dkZIdTUvT3k4bm5SaDB2S2dta2gKWVZJQ2JHUGNpQkkzcEFEckJRb1F5UWdQUGNySGVNRkZXSm9GQUFoWXZPRGFOU1g3S1FBZEpnTUJnZE1mckhRUWhxWmdIeGxnM2dQaAo1NHpvZ0JIV3lRYzFtR1Q3V2RRaWJPMlRFWkNmQ0NyVEoySFpEY0FPWUs3amhrVjRyeXh0Q2pwamtHTWltT293ekh2VjNYbGlrSkhtCm9hTW1lQm5UL0l5UTlNU0s5Tld3TkdOTmdWeFhJMklxZ012cFc3cU1ZNkNEM0Q0VVlyc3JQYTdQMmpLaXQwMm9yV1F5MEY1MzFnNmMKbUlIZTZVSEY5RmxCTVdaU2dJWkxvU2h0UWdIUUozMVVBTmJORThPOHRDRkIrZ0F2bzQrVDdtRDk2aGo5SEFKUUNtaCtEb0NPVjJrZAoxMUdLenk4QTBML0NRQUNBbnFpcUFGVE5iSktRWnVGMlJZQlpIbUJlQ2dqZkN3anlRcExrZU5Sa1E4SmpKV0QvRklDQUFBRGhSNlNuCkpyaC85bkp2ekFpK0NFalBocFNrRlNQc1NSTXlnWjBLVmtkQUE5QUpNUUVCNkwxcDBVV3Y4TnlZTE5jclEva1VBSk14WXlyOHNBcmMKcG84ZlJzRXl4MkhCUFBSRi9UTUFBaHVIQ25VblI0TkJZUmE3OFF0d0pDZG1wVHNKUU9ZakFBTHZtTnFSQUtzQkFHVjVoTWdCd1dzMgp4Z21QR0h4QndyUVc0NVVEQU1vYWhYay9tVU13M25rY2dNQWpqd0pReUpRQ0lQeUNNYzNGQWdBRTQxOVRNdGdwYTFHUFcwbjJERnd6CndjbnFVVXN5SGJ1WHRBbGJoaENqV3RLbStzeVdLamNtSVc2SWNURXhha09BWGhPZ2w3aklJQlBoNTJRRmhKaWdFcndJM0M4aDZCcEYKek1rZ0tQZ2s2QmtKMGd0OXNJUUFIRG9ERzBnT0FQcGhadmJUMGoyMHpCa2VKaVRGQktTSUNXN0dtUEFJZ0dCNlRVQU56bmJTdk9UTQpEUDNxUEx0eGdWRzMzRkc3ektoWjVKUXQ4NjVzOEs2dVNONzcybkg2eTk0M1ptanZqRFlYTFVvQThlUXZHSWtyRUgwQUFCMHgwQkVBCkhYbUF3RzhMQUFqclUrSjltbFR0R0N5RDk2dUpYaDErVUk1MENsR0RNR0tZbCtqTDJYVEFES2VnR2pVblIvaUU0T29EYnJNbWhVancKYWNlRXdNaElBcEFXQUJCMlhZTU55Z3QzYlVYL2grZXpMMjAxeStxU2VmbVp1SVljNnlaRnpjU1lHVEFRZGNkSzNiZERCanB3VUE4Ywp4UDFlOGwwYlhHejJETmk0Rm42U0pRVmh6RUl4ZTA2cE5kZmNaYTMyVDl2WUpUeGFrNGh6cFZGYzNHQzhmcUgvOGtsL0hYVk5kS21mCjI4bTgxdUM4eGxHVTljcWE1S090dXFIbUtUM1g2UkNvUEIwT0I4dHJaV3JjdFlwUlp2TjRqV0t3cWQ4bG5PbG1ESmg0YnkwSzh0ZEUKNUtpRXVpNG5SdVRJRFJsaVF3ejJKZzVvbFUrS3FBaXJDdUt5QWVucVF5clZiL2UxZmJUSWZ2dnYva3ozNk8rYUJuOVROZkFDMDFnVQpVRnljdXZKZTBJSTNqeVBsSGhLdi84OTJiaDV0RHNXWklIdkFBcXpBYmFqUTZ3cjhzamh2VGxRWUVPUXNpc2d4UmM1K042QWZFa0NjCkxVUGVkbGQyVEFkQXB5Q2hQL00vKzRyakdxbUhUUi9odmg1WElnOE1wSWc2ZjFINVR0anc1Zyt1dis3MnRBendQNTNta21PeU15dWEKM0xDV3VxYWdSR1RBTEg1bnBidHF1RU0wM2xScms1emx1akxhSjdOVVZ1S2s2dVNPNGFPdi9SU3Y5M2VkemovVmo3eGNPM0JLNEx3Mgp5SDYxMnYxdnJZNy94cmU4VEhlamFoY1JiY0VjZXZnc0szVGRyZnBFN2ovUDhiNGpIUHRBT3ZtdXlmMUJ0KzBUYTlmRmZ0MlZVVVBwCmpLRnVRZE1jbHJlc2FkdlhsWjB4TVRQT1pzWHA3QmlEdmM3aFJIaEhuWVVmMFZIU3lTSDNiSElPb3kzSEVPZm5sRUtmUXoyTTZSd0IKa0dDVEs0NXhBUUNOT0hqOUErSkxVVlgyZ1lxMHA4VnQ2OGhoSldGVmpRNktNaFlFNURIR0YvTEd0cmE2T2s1THVWMVVzTmFUNDVjVApadmpFdUpwd3U0dXdhd0R3UWRneTR5SXEyR292cWdhRUNnQ0lzRy9DSDVpSXQzdndkM29JdDdwSnQzdElON3VKdTdBaWlRS2RROTFBCk9WdktUN1lsdEFPcDZLNkk4eVdQZTQ4dlB4QjM3aWsrV1JYbXJxdXdteWIwS3V6TEJidHpSWTNrS2VscmZUUndqU0xQcWpHVEl0d1UKLytTSyt2eTZucnpWRFVUWk5tZnY5dVErQktCY1lOTHM5YnkzclNyZkU3TnVwWWhISXJnbEVkMFNIQUhRY1NVWlNQekxlb1NIamdQUQpJd3owUkIySG9hTjhJNWh5dEMwODB1TXc5QXRJOUVzOGxCQWNNVkJkVEhBMXJqeTNxYy9iTmdFQXdpNUxBUURCS1FVQkNkYXZnQTNoCnh1VElZVUgyRU9zdmZuSFp2T1Q5SlZXQlQwU2FsbUVuNUpnaE9kNGpSUTBJc29aNDZHSHUveElBWmZqVnNMbHVNdDhETzYyQjNlT20KMVlTQUlRVkE4QW9QUjVtcVVDRTR4Z3NBVUtaUG1qVWhndTFVUmdVWUZ5ZmJ6cUVPQ2dIM1lMeFN3RUNZQ1RGWW1GN3RwNTF3MDFNQQpsRGtqeUZ5UXBhL0tUNnpKTXlOS0FFQ1pVV1hHbGlaRlA0OERFRXdNU2hpUUNTTTYwWVhjTkFBR1F1K2FBUlVsaDJPWVVLdEtYRUJNCjlncUlJNEtzWVVINkJCeGJsdkZUQURyUngzNENBQjE1ZFA2M0FlZ1JCdnBmQmFDNldmWVRWVDNIckEwdzZ3TE0ramtXdUFYYmxYT00KaW5uR3RZRHdrM25oNlpDSXZDRERoV0FPUjlKVDl3UVBFS0NmNHdDRUdKWWdoMFJ3Zk1td0JEY3NvWTZ4M3h4alhaNFdYSnFWdnpHbgpKQ2Y3elJCQ1JwaGxsdXhsREhPNHZPSWNyL0FEci9qS3VQajh1REp2UW9HZmhoWDE2RkVsYmhnbUZhVW5BMkhnOWVHTXQwbGxxZ2YwCkV3RW9OWDRCTWxEUWZEaUtLM2tYT242U0RBVGpYMHRtT1BBOGJNYXRtV0RqdmlVNE1qZkxDNXY2cENmRG1ZZ2hJUUNnekg0dUFLRFUKUVltWlVHYU5pbzhCRUF5QlpicFlpSDRXd3NsSWQ5SUFBSUYxR2dCUU9uVER5TkVUTW55d0syZG5BQUFRYmw2ZjBjL0tHT1FDUW9mNQp5QUUxWVVHUFh6Yml3N0N0SHpiU2xhcEVBekJFV0RjRE9DQnNhTUNpZGVxV09XZEhsK29kZ29xSmtXczhUSmlIVzRibDdnaGZNcGQ1CkFmWldCMEtGMUZuemN1U3NGQUFRYWxvTVRnOTR5azBxOExOYWdFRXcrTlhYbWU1c0J3Q1VOY09IdzhKOElzUW9HM3haNURnNFViblEKQStTVG8yYVZoSUFrZTQ3LzBRenJ4anlyYm9sUnU5UmVHNkpYem5NK1hlU2ZYQmU4dVNrNStaVzE4RHZyMlNqM3pmbjJzMHRpOG9xVwpFTllDQUNJc3ExTUFsR0tnVkJKMENvQ2c1emFnaEZFMjhNVm5ZTTRnZGtWSmpNSnBheWlmaWdTT29uN3hDVHNYTzY0dTJIWmx4K3pnClp3RW5QTUFtWkVDV0FxRE1LVDdDSzBDT0NwRERmT2pYblJJQ0FNTEZOSEFjdDE5V3VObHo2cXUrai85cnNDVGU5ZG1hcmlpdUowYU0KUUlUMUxzQkFsSVFGTUJBYytMeG55NzNWUnptd3d0WGxscG00cDhmR1pMaFZLV2xWUnR3U0VCZFVoV1BjejBmclNtekZOK1RWdFpMVwpSbTVaSGIrazFsaDh5WG5sbmFGeTZoTDMvSktzVEYvUllydktFbDN2MXROTlExemhHTDBrSVA1c1RjWWJwNDkwYzRlY25TMVRsUTN6CnpHdisraXZCMXBxZ1hEck9iL1BLM2xnUjUyNUlpWnN5WWt5Qmo4bXhNUWxsVlhoMmprdUtzQWxoQVdGVkNYWXJZVU9RRSs0dThHbmUKV2VqSW4rQy84L1h3bWRqa0N5emJ2OTF3dnNDeEZzNnByMDBYNTk1VVVuWmg5NEhDVVA4N1FVMmhkWnpjTzRuM0dMTmpldXF1Q2IvWApSWWhyc3lOcUtnRFRCU0VxTENaRTFlQW95dDQyVWhMNjdMaWV1cW1qeExUZ051Zit3THRmMldVQm1iZVh5L1dLM2xwUjVLenFLTHVPClV5djYxKy8zNWY5UDk2VTFQYU5mOVBtRXNHQlJjaXBxS055Mm5ybmxMTnpweTQ5WlAxcVh0UzZ3U3N6Y1Uvd2V2SEg4emRETTZZUUYKQVBxNWI0Wk9iOCtjc0RsZTRPblJkTnNabWViNmJHZStld1MxTUlLUERaNmNkTDBoYzcxajd2dk02YjNpR0cyY1lWZjN1Y3VIQmkvNQo3QmZDdHFzYmhwcUlzalBDWTI4dzJRa1daNHN1U0xUSlk4M01CS3pHU2hWbk1UYzdtWnNNMWlZN21UdkNmcUk0VzRkS3ZnamM0RzV6CmdJN25xZncwWitWbjlRZ0FpUTRCaURObTV3MjV4RzFCQmZXV0VyK3Z4bTFyeUdFRkFCclVrZ1ExeHlkTU1ONHh0bFIxVkZkeG1qOGYKVjU3YWRGQm41WGdmbjdpbElkNHh3WGtMMjJiaWRqZjBMa1NVNkRVRklhNGo3Wmwrd2tBSDhDN2dIcGhoSGROU2Ryb0F4VkkzTldlMwpGRGYyWmR5N011bDlzZUNCa0g5ZnFMZ2pGTjFWRkc4S0N4ZDUrTEFDWERUd3ExcHdXdUZqUnZLaTRSVVBDeXhMMmZONi9MUWM3NWNYClJBeDU2enBTd3B3Q0lNcGVUL1pCYjg1TmErN3Qzcnc3MWpjVHlzOTNwQzIzSklJN1lvQStBSUNFdDZYaXUxS3dmYVRqRENROGtQeXkKQlB2aTQrTHZpWTcwQ0F6OWkwcUJFWHRIZEZ6SGVlaGZZYU5IOEFoZ0VMemRFZ0tsR0toaFUxQWNWN3diMTUzY01sRTNnWUVLTHJBUwpURUFNQUFnZlVFRUFHcFdBU3hCcGtQbnVKSzhrcEhoN1FRTXNFOHFzRWpNdVF3K0lzUU5pcEpzTFRHTFVFQWMxd2tzQkVISktrcG1jCmFKRnN4d3huQnFRRWs0cDhxdFJZVTBnL2ZwanZBUllhL0pRR0xEVG9TUlYrVnA4Y0thMkgrWjB3K0tXQUJ1R2NJak1nUjN1RlFJaHgKUG5pWEhEdnJwSzZqME1MTW1aQ0NxeXNBSUxBMnBibVlyem83WG5OMUFnQ0NocTVQZ0ZoU3BLOHIwOWFWaUhYVkVRQTlrWDRnQU1YMQpBSUJRY1dOV1RJK0k2c0FHYXNjRUhzRnNtYklpR3RTOG1ESXRLcHdRNVF6ek1jQWM5WXFPQUFocVNKQTJDQUhvaEozNUV3QTZIdEw2Ci94K0FIZzF5cFR3OWRVbktlVndBZ09ybVdQVVBCYmJCSTFYenpPSWc5N09nNE0yUU1DOGt3UWNWc08rVEh3YkNmZzZBRUJNd1JKVTEKSWswQkVCRGFJOElPaWJHajNNSmg1b1ZKNFJjQnhibUFtcnBnSkszMm9CZDF1Q1FBSmZ0c0twR1QwaHl2K01NSjZiVXg2WnRlZFpGWApEU3hMbUIweW9nSkNlZFdaQUVHbXdCc3BBQUNCTndMdmk1bUc5QU1yOC8wR3FNY0FpUEF3Q3BhNm14S2N6VGx2SkN5YTRWQ0ZzQmtHCm9lQUlUeTB5cUFEUWtBeGs4aktIK1ZuRG9ndzNkT1VoWER3Q09EcW5sS2h4YVpKK0lBQWhobmtRZ0FiWUFJQXkrNWlaRG5xYW95UEQKdzBKNmhXQjVCZ0NFbnBIQk1ScHpZUGx4QXdiQ0JMVHA0R2tlSG5wQ0FnZ0FQNnZHQmJWdy9zTXliT3NIUGdOaHZSdTJZd2IwRXpGaQoxN1M0RFMxMXV5dm5qb1Y2eDVMM3dKcDd2d2UvbzBaR0JLaFZIamJNUTgrSkFRQmwrVVdZb0JJSGM0QmczU01jY1Rjcnpab1JnMU1PCkJVTkZNRWNiZkd6aXJBNFlKWThDMEpRZ2M0Z0p1ekkrQkNEa2pCenJsMUZtaFlXenJJOFh1RGRDN05wUVozMm9yVEZFcXc0eS9oSmkKNWk4eGM5YlltTGljdUtzc1hPdDRNOWowNXFLQXNpalBYSkttQUFpL3BJSXV2ZU4rb0NXWVNBZ3o2R2Zoc0Z0WUdaRVVha1VHcnRSSgpsNXNLTzZiSWNQQXpCc1RVaGU2QzdUN0NxZ25BWENyK2xYUStnMjhraEFBMHdjMGE0U0k4WEdEV3BIdTUrRlUxTUtCeENWMmVYM0Z5Cm8vdnN2dld0LzJ2bzA1MnVOOER2dHFZbWhQV0VOUVBFb0EwVE9kWU5HSWl5M1F1VXZXM1BPN0NEMVFYUUQzbGZROXBXWWlKQzdBby8KYTUyV3RzSEszZForc0cxNUs2eDllOFAwV2NMKzV5bFpBNk9zUW5lamVLRDRVbDlab1o5ZXRLTzlNTlJjYmJsNnNiZnlrazljdkN3OQpIK1dkM0ZJV0w0aGxnKzJUSm81bHFLM2RXK25zWndtZGpXZVdXa2xiMHBNSndabUlnaEtUWWhOQU1zaEFtekp5REFZM1A1amo0aGJZCnVKQ0NzTktGQ2t2UmEzenlPblMzbkZ3VDRueXluSmo4ZzcvTi9GYmY4K3VHSHFScjZQVjFUVW1nR256Q25Oc2k4Rks1ZTViY1RVVkIKMUhCNmE1Z1k2OG5mTVJmY3MrYzhjRkR1OW1idmdXdTNqaEJSWWphVXFDVWhjUjAyM0FNQ0RBU1VTc1V0V0xlL2NjdFdFdGVySnlTYQpRZG1WT1ZYK3ByRm94NWE5cEMzYXQ3ejlkOC9Kcnl5WEE0cjJmc243Y3hMeWcrNXpkMTNudnZhY3VqVllkTWY5enBmRytvaW96TWw5CjIrMDRzK0w0NE83Z2UzOTNGWDNYKzliL09mYmUvNWg1OTZ2eHQyNzJ2K3UyZkRDaHVIaXo4OXhlWCtGWDNXODhrRjdaa3RRSGxBMkwKSE5xQ2pEN0xaUzRYdDRSVmxiZnQ3ejJ3bmYwZnprdjNURFVIQ3NZV2g1dWcwWFk2Mm5ZZzhmRFgyemlKRmxhaWpaM29aQ2NZcVhBVgpnQ0g2RmgxQXlSTjFpRHNQTVNoMTk1OEMwQ012d281ekRqZVNJVEJ1bk1QYjVBaVRJVEMzbXdzQWFLUlBxUEhLQy9kbHVBTVZibHNGCkFBaXpvVUl2UzdCK0RtYVNVZUJvdThTcXZTRnUrM0NoNi9SV0g4a254VTV6OFhFVi9wWVJ2Nk1ueFkyRUxUTTFZY1J0cUFFRDRUZTEKcE4wdVFEd0FnNEJTa1M5SVBBa2pOaXpIcnluQlJ2YU9LV2REOXZHMm91VzJYSHBmS25zZ0ZuNGxFbjhsa3Q4VGl1K0pXdy9FN3kyego4NVpGMUlnT3M2ckJyZXN4QUhTaVBiRHZzRTlCQ2VvSnMycENVRXZkNkNKRzlTa0FJdTFBQUtJZWRPZmR0T1FmV0FwdVd2NjZLYXpjCkU3SHVpTVczaGNJRE1ROEEwQjI1Nk00VDBPZGZCS0NmSTZGSFlPam45SE5QZmlTeWxoSWJabWMvUWF3ZC9pL1EwbzlJdEMwQ1NqRlEKUzF4VW5wRDlKYUYrUFdISWplcUJaUUlCYUU0QWJEQjhRSUh4U3BFallnQkFXRmZubVdIMjFaRDZqUVZkWVZCRERjRGthR1FmRjl2UApSL1Z6MHQwc3BJZDlISUN5Sm1HOU1FeUwvaW45SEFFUUhPemxWMk9uVmNEbXgza0J4RWpCMm9HYlNmYUREbWhoL3NBY05HNHpmV0tFCkh5WjM0aWFGcUNsQjJpUVhPY29wc0RQZlVMVVdkWFdBMVJNT3d4NFhnMVhwTlR2dFZYdmJhMzIwSXdES1dsWWlZcHFNcUJxV3dXK28KTTJLSEFQUW8vU1QwUUpreEhYVC9iQm9RNnhvZ0RBQ2dyYTcvbDdYMzRHN3J1aFoxOHlQdVBUbXhKSklnQWFJWGdtQW4xU1ZMZGh4MwpKM0VjTys1V284U0d2ckVCN0kzZTJYdnZBRHRCTkRhQUFMdFlSRFhic2gwbjU1YWY4ZWJDbGlDWWtuTXkzbnRqZkFNRFJDZktYdCthCmE2NDVhWEVITSs3SUNSc1lVeHJoS0ZZeWpCZUJDNks2ejBwcVdIenFRUCtPQUwyMFVPR0wzdk1peDR6blplcnpDd0U2dnRvMUl3WFMKMWVlcDhjeExnV3R6MHB0ek1waS9YdlBMdnBxWHdyRDNxVi94b1YvNW1oOHI4ZU84ZVQzcUhqV1QvUENTRlFpUENWRDJxQ2xkZ0xMNwpVUVNGM29jeitsRFNqS0JQK3VxNDVzMVo0K2tacytpWkFER1Q5VjF5WjZ6WnFKZVdVVFJPWEJ6VmZ6QnVQRFBwS0pxdzhjZXR6RkVMCmN4U01HS1ZhbytVd0h5bzFoSjVsekFCUCtxSUFQWGVnWjdyRENUUUMxRUpZcWk4cGM4YkJXVUJSS0ZiRVJhM1hvT2ppRFBJYlVCK1UKcGpPRTB3WndGTWZyVm5GSGphakRpeGRGRjNOR3ROUnRxSjFmS1AyNVM1YmRLY3RzcXozWlZwWFpLME10V24zNHFTa3RKVUR3RFJZbQptNjJpT0dlWEhCbkpPQUVDeEpvMlU2dGdLQk1vdVJiR1hmYndWa0NBM0RDVHkxMjJjV0t1L0oxVzRmMVc4YU9PNGg5N2k1OTBjZmRjCk9URjl6aExHV05hQWpNS2toRGFGd3ltU1NDUkFxRHNNNVJrNTR6b2tRQU5ZWnArS1Bxemx3czhNeEs2N0xxT3JPbk9nTm1kS3cvUVQKdEhIMU13RlNVUUlFTDVnenBjK2ZVbFJNMVp5SjFIMndJUHZhTDdzUnJMMGVycm9XcXY1YnVQYTlpUFQzYzJwMlNNT0pLSzk0di9sZwo1TXVMQzNKUmlCRE42YmdoRXlWQXFFTnEwRVFKRUR0aVp3ZVRPeW5tazMzNDRBM3hFU2puZWt6UFdEU3dWcXk1WVN1OEQxbTkrS2wyCkpXZmFVYkRXeFY5dFlJWlFOQXZ1aGY0dnY0a3hROUltdERrVGF2cVlPbnRBbWQwblA5bFZtem1xWkMraVJRUjZ6QXdDVkxMYVZMclYKV1BKZnZSVW9JY09VdTJEZ2h1MjhTTExHNDZxYkgvWHdZdldnUWZ4RUk1Z1FDSkJvcDU2emFlTnNtWmp4WkZBdGlyTVRSdWFSVGZMUAozb3AvemtpZWpKWDg3OEhYZnU2K0dOTGZVWC8xVjl1SEgvVi8rR25yeDJmNmI0SUF2UjdBUHV6OVFqeGRVN0ppWjk0MThIYzBWWk1HClQ0ZmMxSFBEMnlCekRsV1IvVisxOTJvMGJUY3ZUdHhncjJLTVhYVkIzSmlmSUxtYkJ1NDZLWXFSL0ppZUhkY0s0bGp4aWxxMHBHTDYKRGZBdnM1Wmd0Q041VVN1S0JvVU03S2ladGFTNC9IOTl6SVgrN081dTBWSkhlUXg3ei9mWjFXaEh4V0pQOWtoemZzd2hTV2dsNnliSgpSa2ZlamtPMDZjcmJieFRjYXdJazkxcUtEbG9rZDJHRXErZkh6UEN3QUQrR0FvcDVteDdSaHBzZmQrUW5Hb3RSWE1keUptSDkvYUt6ClpOM0RXN2VlOXFrS2ZIcitkc05yUHd4WGZOdFp1TzM4Y01uemg1Z243MUhUcFFmdEpZZXR4YnV0Wis1M3ZicG4veXlvK25oQ2UzVjMKOE9LRDl2T1BXOC8vbzdQaUgxMW4vMC8vK2YvVmYrVi85WjU5VXY5QnZPL1NablBSZ1JZRzc0cE53OXVKMnV0ck5hcTRTcjFSaTYycQo2aUoxWDY3ZGZ1K2c4ZkxQUFFYZmRaZjgxUFduQS9mWDJ5WlVTQ1locTlwVzNyeXJyZGttMUJ0Njlib01BeXRDQ2JONGNrRkVMZDJVClNqZHJYd3pZUE9XWEFwVFNvQmRWS1YxMzBxRWlTZWs3bFpSclNuVk1xWWtxZGFzZ1FOaElxMnFvWGRQZXA3MlNJSGg3QnRhV0ViNXkKT1ZFVE0weXdKaFU1UGltM3QrWlY0dnE3VHZuWldIUEplZ2VNVmJrK0pRZ1E4NjZEalNwSG8vcFZvRFc4TlRzN1p1WEc3ZnhObHhDbApxNk9lNUp4ZGoyaXZVYkxUeUY5Q1NVV2NzQ0Z2M1FVM3pvK1JmOW94cW80TXhvYzY0cEZPOTFDbmY2ZzFQTkRvRHRYYVI1YS9KWFRuCklucmhvcGtSUWVYUlFhMlljUS9hbXhsQTlzT2R0ZkpDVHBnSnNCSnVRYUplc1A0MEFnU2FsYi9iVUxUYldMeGIvOWttZm1jWHgvWXgKN1YwVlVweDlnK2FBMUlJRzNkVWRRN01MZHFKOVVYUitUWGYrOVcxZXZQYlpiZEN6cEtCeXJsSGE5UXVMYTFTKzBZdFpSNVFZS2JkMQpLWDR0ZWlUYjBnRWdRTFhybXFvTjdkZnIrZzgyVEJjVGRwaGQ4RlpzN0NEQm1sTm56NkxlRjh4eFBYMElwZmd3dXV2eWUyVnZ6MWxMCkZ6eUZBYmR3eHBiVHE2RzF5bGtkeXB3T09VeUpVYTJUWndLRW1uekRqTlJMSkFVSWJZeW5DaVFtOTUyZ2ZTSEptdEhXM01tbjlzTVkKUXJFRHhnZ0JmK1pPd2hIU3lwNDEwNmNKbUFSbWV0Vm9oODBNd1pqVVprMXFmdXRWWkl3bzhyc1VGZTdhd2hZcGIxTFBBUlViMVozbwpySHVsdWVwRTY1MVhPcW96QnFSWlk2cXNhVHduWXM2TzIyaHhHNXlDQTJYRnpSbWIxaGZ0Snp0aEIyZ3hlMDRjYlMzTVhEVFJsaTI1CmEwK2pRYmtyRm5xQUFQZmlEYWlLK3JEU1FVM2VzRHA3c0RhNVhSb0pVRVpLZ0xxVkp6clNsc0ErOThuK3Z3alF2MkU4aUxTTlhVK04KSjMyZDY5cXM4cGozQU5mbkZRQVlEM2pQclhrNXhRMi8vSnNGK2RjQitWY0xzazhEeW5jWHNMTityZEN2aDZHRk1ZcytNRXFBa0gvOApVb0JRYkdZRXJYOWxEZWhvZlNpSkdMNFo5RjYwbDRyVkp5OFpVVjZjTXBUTVdwQUFoZXRoNEFmdEFBR0N6emk1MTkzSUd5Zkx4NGszCkpzeWxjMjdKaklzN2JzOGRzVERIYmJsSjA4cVpRQUxFOEtLRk5oQ2c3REhVcC8zcEszbEJnRkNZeDErZkMrZVRDVUJVWWhCdm9aRXoKWHcrM0JBZG56VHU0WVZUK09EZTVURU9mTTZEeXpVTTRTRU5XUHhLZ3JGNE1Qa0p3T1A2RWxUYUtaNCtoSkZ6Z3FTVDFxUkM5S1B1SAoxaUhOYXEzTmFIMHVRSm1UV3ZqcTU0NlM4SnI1OFE3QmVoYzhJNjFMQVdNLzAwdFNBb1EyYmFGT01XZ0JDMTRHWjlIRldVUkJiT2F5CmpiRms1YTdWRisxM1M1NzBpTC9yeW4vY0NRTmI3cVk5ZDkzTTIzWUk3N281Q3hhVXhET0ZBYm56SkJJRlZDekhsdFJUVklXQ01ZSm0KS3VqbDlTbmhkd3VjNnE3TDZxbk5IS3lqQkNoclZFbERBcVFDZjJlTXF1bGViZTRFeVp2VUZrOUlMMHpjS3ZaZmUyUDJ6c2NMeWs4aQp5bzlDMVY4RWJvTURYVnVVdnhzeEZrWkljVkIxZGZTTDk0Yy92VHhYTFE3aGdrVTlKMmdFQndJQk91NUFRU3NWeUFHUFFjMXV2WG9HCjJqYXB6VjB5TXBjdDZBWXpsc3dlTmExUG03L1VKdDdvZ1hjQWhZNEN5UkprODBicWppQkFkSjhhUkEzbVZUbTljdmhIWUU3RFhqUXkKVjR6TW1FVXdaeXhZOUFoalR2NWh2WERWaEY1RzBNRkxDaEIvMGNsZGNsSWFSRG1RYUxOSnVOWEEzM1J5TjZ5TU9KbTVyQWFuekR0dwpGLzh3VlBaL2Vvci9idzlxa3ZwOTcra0h6dGVXWlcvM2ZIblRWZlZ4dzEvLzJQUCtwMjBmWHVxOFZwU3dYVW5ZZmo5ZlZ4VFFuRjUwCjVNZjA4S1ByYnNmZEhWVU5IZGVuR2pEVFNOMVhVOSs4dnFWL2Q3YjZ6TXpOMTJleHorYmtWMWIxWlp1a2NOZkEzaVlGYTRSNFdjZGYKMGZCakduRU1LMHFvZUlzNEk2eGtoS1hNQlEwbnBHTXY2ZEE4UGs2d1Y3VDVqenJLOTBaSzEvczRNY081U1BXNzNrL0xWaHdYdG9hNQpjeDM1YTI3SmhsYThydWF0R3NVSnAzRERLdHEwZ2NSd0V4YkpYbjNwVVh2UnZWYnhRVlBCWFRkY3hVOVlCZXNPY0NBUUxFSE1tWmVBCjRkYWR0MnFXZ0JXdGUxZ3hOeWZxRkFhMXZPRnIrVFA2MHlGYjJmYzlsLzQrZk9GK2wvaHhhOG1EMWtzSGJhY1BYR1c3bnRLZHhySjEKMStrZzlzZVE1cDJZK2V4M25SZWZURnorKy9pci8zdjQzRCs2TC94WDcvbWYreTcrTkZSMDBIcGhzNkZrcjVHOVRwUWxMSjl1V1JWYgplaENSNmtSZDFiNnFjdHYyOGE3anlsRnJ5Wk9oNGgrYkx4KzZQOWszVk82UTBrMDF2bEdIYjlRb3QrVFNiYlY4QjlOc0t0U0o1QmFoCk9JNVkxNkN3elpaU3ZpMC83ajJwZGF0bjYxL0hTUk9hWTNMelVzRFZxQnZJNCtoUEVDQThLVUM5UGRxaEZ2VmdtNnF2Ry84OGlBdnYKRXV4dGt3aEVmQVdjbTJST0sybFRNdFpBYmJuNzlxVmVIV3B2SEcxaGptR2NTUXcrQXZhdWc1ZXdDNklPVkVFMDdnQlFaNHgxSnlEWQpRQTRFUnNMZGRrdnVOdVd2T1Ztek9HTkNKUXdaSlhHWEtPR1V4STJmN0pyMVI2VHBBUTcybzN0b01Od25qQTl4L2FGR2YyVDhhZ1c3Ck1LM0lXekR4WW8yOHVJZTdiS0l2V29ScnFQRkY3cFFCaGs5QkpEa05pSHRFc1FaUnZGNjQwWmkzM1NqZXFTL2M4WlFpUTNYQit5L2YKMStGN21PYXVHdHNuc0VPalpwL1E3V25CZ1Y2cVFkcGQvVXZCZDNRVXg2L2FJMUs4cURzdmNreUFVaHIwcnpPTjBwWG9LV2tDZEV5RApqZ21RZEZNTEFsUzdvYnVld0QvZU1GeE5XR0NHSUZoMXNZTjZ6cHdLQkNoM2ltQ09vMG9paUc2Wm9GdjY2b1N4Y0tGQnNsRFBuN0ZuCjk2cG9MWFdzZG5sMnV4UUVLRDBDaENaK2FPNUhVdnR0QWFyeUNIUEtsRVl5L09NMTVRNFQyVDBZakp0d0JtUUl4anZXSktvM1RaL1EKZ2V1Y0dKRm5lalU1VTNvUW1neWYrcmRqOGxkRzVlQWlKVjJxZ2lHY05XOEFBWUlwK29tMm1wUE5WYWRhN3B4b3I4b2NsSUVBWlV6agoyWXRtVlA0blljdEoyT2xyTmtxQXNqY2NsUHFnTTBuN29WR1NGRVZraFkybkFnVGNrUmwxME5jY09URVlLRTNaOCtCejJ0d0JsYWhYClhUU0FpK0hmN0t0QkFvUjJUR09VQUozc3gwNzJxazUwS1o0S1VOSisvdjhSb0Y4M25tY2IybWVVUUhxWUo5MTFyczJoTUErNERnQ1cKODV5QTdPYUM3SFpBVG5FcklMOGVRbHdMU3I4T0tUNE1hQzR2YU1RQlBUTkFvcEZwNWw4SlVOWXdDdjlRQWdRT0FSOW5kcmM2czE5UAo3MVVKQm1TRlhyeGcxaXIwbzFxQ01GRFJBaWFXMzRvK1l5K0M3VFZJSnNqenMxWnhzRUUwNTJHT1cra2o1bHl2blRucG9IcUJvVjRaClBsUVhFUVdCUmsyb01BTVZpMHFtQVNWWFRGOGlRR2paYTg3Tm52TlE5a05Ea1NvQ3BKc1RjbEs3alJnQnRMY1FsVWhPQ2hDcXJUbUEKbmVwU1puU3I0SXZJSGpPbUJJaktPMHVtU0t0UlJuTzNQQlBzcDcwdXM2VUd2bkFaUFZJUUlOcTRKaVZBTksrSkcydmpKenBwUGtOMgp0eExzQjM0SktBZG9pcXFoYm1iT1c5a0w5bVFvQ01aK0N6TmlZaXlhd05aWnF4N3hUbGYrOTEyaWg2M2MvWHBVblgzTEtUeHNMbmpVCm5mK2drelZ2WXM2UjJaTlkxaVJhRGt1dUpDWnJxNk0xU2hNbFFLanFUMDh5UURXZ0J1MDQwVmtEQXBRMUpLVlA0N256K294aE9RaFEKeHBDU0VxRGNwQUFKSmpWbEU5V3YrcTVmbnZ6MHF1L0dhM1BLU3hIOHRhRGl3M25wWnd2eXY0YlF0bHRSU01lZnF5MzEvdlgxc2I5YwptcnpCbTYwN3RhZ0VBVW81RUNWQTZFelloc0pDendVSXBrRm9iUTdlUThZU3lWcEJLMlZveWpLb1kzc3RCV3RkckdnVHZBUHNpQlV0CnBmbE5LRG80WjRSZmUvYWtEZ25RQ015cnBDQkF0TjY2SEs4S3BzZ2dRSnlvRlo0TGxWcUpPbGlySnZhaVFlQzM4a1AxOEtUY2tBMDAKaUJ1MlUrMCtZQUFRcmpWdzRrNzJtb09Uc0hHMzdLQ1N2RjJuK0g1cnhjOURrbi82eXY3UlZmSkRvK2o3RnRIRDV0S0UvbzJabWsrOQowZy9IRkgvci8rS0RyamMvNi8zcjc4ZXFKUWxueWFhN2VCa3ZDY2dLbzhhMy9Lcm1qdXJoNWpwN2QyVkRiNjFqMkNLZFVyNFZ2Rld5CmIzakhYM3RwL2s3Tk1EYllVaXNkbGIyOXBDdmJKTmgzU2Y0NlViQ295dy9qNG1WY3Nxb1RyaWg1eTFyMlNoMTNxWlkzVC9KbXRleWcKRXBWVENwTmMxR1hXVXJIUmtML2hZQzVwUGdncC9qTHhLWHROVlhMWW5MZHU1NjZhYVpFNmJnSVRiK2tsMnc3eHBsbXlhUld0RXR3UQpKbHdoeFJzTzhhNWJ0T2VSSENDS0Rwc2t1dzI4cUlVVk1RaFg3Skk0U3ZETWoxa3JWcDBseTY2OHhmclNlVmZ4TEVFUEtRcERocUlGCm9taTM4WTIvajU5N01zQTlhaTdmYnp0MzBKRzNhU2lKTzBxaW5zSkY2K21nNGUyOTVpdVAyOC8rMEg3NXYyYk8vVGdDdG5UMW4wTVgKbi9UQWdGcHgySFgyL21EZXVyRmt6MW02cXZ0b1V5MkxTN1ZyVXZrV2RuMVg5OTZCNmEzNzdSZS9iU3IrZnJqb1NmdkZJOTBYbTFwMQovSTR5RHE1VHExNnZ3amFxMWVzeTlib0NXNi9ETnU1Z3laUVJhcmxLdllrQlNkSEJYZ3prUE9OcG1abjBLbnd2ZXM5TEJRaWtKNFU2Cm9RYW8yOENmMkpwS0cxUHBvNnJlSGgwSVVHKzdzcnRicmZaaUJUc0VkeHR0ck10ZE1ZcENCdWFzaWpZdDUvVFhTdHJyaXFjc2hXdXQKNG9nbmQwakpuOEpGeWErY1lNMG1XcmFMVmwxb2k4T2FIUnhJa0hnbVFKdHUwUmFLQStWdGV0aEJnalpTeDU1UTUwY3MrVEZIWHR3cAozakI5ZHRka3VLYzFQc1R3UjRUK3Z0bHdEOG1ROW9qUTdPcXVoZVVYUjJ1Rk00UXcxc1NQT3ZoTGVzNlNLUStrZHNuQm1UTng1ODJDClJXZGUxQTN1bFI5dHlGK3JGNjgzaXJmcUM3YnJpN2ZjRmV2T3N3bG56VjJUYWw5UGJYZkhEa25zd0F3Q1JPN2hPdENnWjFBeVJLRzcKUzd5VWxQRWN2MnFmcEVnM29YL0JpekducHc3MHduNjA1SlkwbkRvOWhuTG5GeEdnZEFGS3JZSWRpd0RCYVdWQzg4VUcrY2FhcVhUTgpKWXA1MFA1S3Y1SStqNEl1N0hFZFl4akxHVlRCVVlqVktTc2Iwb25uR3ZQbTYzblR0cHdlRmIyMWp0TW16MjZ0bzNVaEFVb2xRWVA5CmdJWXlKNDFvOWYrWkFQM1Nma3h3TFh2Q3lCb25jL3JVcHpxa3RCNGxlMFRQR2lPWVhtTXlhZEtZNDhWT0RrcGZHYWpMSEZYQ2dSVEcKRnpUVEhsR2ZHbFl5QmxYNVF6ckpKQ3BhVFRXRmZBWHNwNmtxczZYcVpGdFYxaEE0a3pwelJnc2VrN1ZtQlFHaW8rSlZqcXlFaFJJZwppcFQ5d0cxUXBjUlZhK2FpNllSZjk4b3NUZ3NaR1N1MjdCVjBJV1BlbURtano1alFady9qckY1TTBLc1dEU2c1L1hVNWd5Z2JtaEtnCmpFR2NFcUNUM2NyZlBGT2ZYd2dRQ00ydkNkQ0xrWjVmVTU4WDdZZFNuNmY4MG42b01FK1M1OTV6YzBFQjNBb29nWnRCSkQxM2dvcXEKa0JLNEhWSldocFUzd29vYkVlbjFzT3FUb09hMWdGWVMwTEZEUnBTMlBQdDBDU3hkZ01CK1hpcEF0RzQxRXFCZVBYeEZtTDAxL0ZHbAphTWJNOTd2WTh3Nk8zMDRMb2VVYnpxU0ZQVzREQVFJLzRFOGFTdjBXUWJpSk0rK21qMXRvd3laS2dLaHVHUFJ4RTVVaGo0SkFveWEwCisreGZDdERUOEErWUVGdytnNEM3dk5LbnpSelJNYWFUYWNoQktrc1haYytjSEZmU2gzQmF2eG8renF3KzFTdnRzdXgrSEpYMUhOVGwKak9OMEx4SWd0QWQ3Q0VNNzRRZXdZd0owc3ZrMkNGRE9LRXJYVFFsUTFyaVJ2ZHJDajNlZ0VwRTlLdmlXcHdUb2FjTzhPZlF5V0FGdwpJRHNNLzZ4RjFPWXdLMmpJQm50WWErSWZOWEQzM2R5N0h2NStJM2hQNlpPQmdzZDlySjFHVkxObmxrQUNOS0VBbTRIeG51VzNNZWVjCjZRTEVCQ3Z2VldaMEptY2tJL2p2MnF0QWdHakRNc2FNRnU1eWFraVcwLzhMQVdKTjZJVVRXTG12Nm9ydnF6OTdQN2s2ZHExd1JpbU8KR001SGpIOEtrUitGRGE5SHRPZG0xYmtMS3ViczdTdURmL2xrNU9PcnM3YzQwMVhzcVZwMndFQUpVTXFCNEJUc0p5bEFLSmFUTGtCZwprRGtSUFhzVjdScGp6MWc0NHliaHJGc1M2OHdJT1pnaE13Z1F1bnNBSHNvR25nZjJnemExZVZYWnd6S2tQcjFJZ3hnVE1NeGJ3WGhRClhkMlFVYlRvWW00M0NCZk43RVdqY05xQytzLzd6WndGQ3ljSWptc0R1RXN3bVVNQ3hGNS91aTFjc091UjNHOHQvM0dnNGgralJUOE8KNS8xenF1aEJlOFhqeHJ5ZjJ6THZ1V2tSdkdnQmZ5UG11QnhXZlQ1NTQ4T2VONzhZLyt5ZGlGYTA1ZWJHN2ZRbGRlN0tyWE5MT05rago5VFhjNkd1dFVvM2VmaWV1dnJEVldEbXYrWDNnZHRGZHd4dUJ1cy9IcS92cVZRTXR0NVI5TjJ0SGxlK0h0WVZiaEdCVEwxclI4WmR3CjFwcU91VW5teDFCSWdMa2taUWVsZVROT3lheWR2NkRKaGUvL2dwTUxNNFNJdFd5Um9QbGx3bVh6dFpEeG83RS9sMndSa2tpN0pPSXUKaWhwWi9wcUM1ZjdUdTUzaXVFcTBRWlpzVzBwV0RZSjVCWHRPemc3amduV0w1S0JCZk9nU0gzcUtqcG9MOXhyeTFsM2ltRU84aXNaRgptTnFXZ0FrdG1WaHJGdDVPVStsYVMrbWlzeWpxS0lURC9RcHhPdTY1L08zQTZYdmQ1ZXRONVFlZEpSdE4rUWVPd3JCRkVuQ2NYbTk5Ci9XN1A1UitHaTM3cWUrM3ZmZWYrMlhydTcxMVhmaDY5K0dpZ2VMT2hJRzQvZDlnZ1dUZUlkeHJLRTY1TE0xamRSaDBadTRXdDF0eGEKTjM2MDVUcDMySG42MFdqaEQwMGwzdzIrZXQvOTRZNUt1bW5Gb3dwTlFnZGFJOTFTMVcxZ2lyaE92YVpUclNtVWlScnBobHk2S1pWdgoxQ3EzNjlSYk12V1dDbHZIVlhIOEJlLzVWd0wwTHh6bzE5UUhXOGNBZURSMFBxSFd4Tlc2TlRVUlU0TUE5YmVvdXR0bEhUMUsyNkM2CmVGc24yREdEU3NKWHNRQzAxWTlselNqNXZYV2lYcmtvWUplc05QRVg3UFErbVhBS3p3TUIyckFLb2xaaHhJcThKR3BOT1JESzh0bHcKQTNBRzdZcVBPK0JIZmJMM05tOVNVN1JreTErMWd3QUpONUVBbVNnQmVtelUzN2VhRG8ybUJ6cnRmU094YjFJa1RHOU9ZM3dmampMbgpJcWFDVllNNGFoT3RXTVhMRG1IRXpnMVlSWXVnUGk3aGtxMXdwVUVTYTh4UG9LU3h3cTM2MGszM21YWG5oYmk5YnRlRTdSdDBCenI4CmdNQ1B6S3BETTFpSStWQ3ZQeURUU2NtUWZvOThLU25qT1g3NU13SDZ0eDNvcVdrZGl6eWxiVU43Q1M5eG9KZlpUN29BSVpMaG41UUEKM1U2b3Y5a2czbHd6bHNkY2VXdjFTUUZTb0tXUFNTM2E3ajZpb1FRb3Q3MHV2d2NUelRVSzVodTRVMVkwdXJYSlFJQm9MYlZablRMVQo3MmhFdzRUamNGS0FtTlBJWTFDcGwxOFJJTGlLNVRPQThZRDZuR2lwb1hVcFFJQTRvd1NxS3owQmJtVElIbGVmR0tqNVhWOU54b2lDClBxSExtdFF5UjNIMktKNDFwTXpzbHd0R2RYbXphTThzektncEFjcHNxczU2UVlBeVk1Yk11UFdsQXZSMDVTdHVBL3ZKaWxsb3k1YU0KSVBtZjB4Z0FneEY5MFlJQ1NNdHdhRFdlbk5UOXpxZlBHQ2R5ZWpYTUxxV2dUeTRjbE1PSUNRTmlTb0NvVmJBVFBjcmZISzl6U05WdQpUdU9MU2NVdlNJdjNwRnZPbDlPb1BBK3Ewek9UM0t3K3EzZ0dTbDZtdURhdm9ManVWNmE0c2FDaXVCbFFBN2RDcW1OVWh0WEE3YVQwCnBITW5yQUlxUTVwYlFleGFHUDlqQkN0ZlVJZ0N1R0RCekoxQXZXMXAwOG5DM3NsQ2lLZ0QvQ2hLM2NvZVNqS29wNlVKRUpEWnFjenEKVWlFWjZzZmhRK1hNMmprTExzYUNBeVd2ekpyb00wZ0ZhRDREYll4Z1RkcnlBbzNDaFNiT2pKdXlLMnEzRnlWYnZ3WnExSnBtUDcvWQovVDd2UVpzSlo1eXNhVHM0VmxZdi9ydG1LWDNjZ05aV0YxQVo1YWU5dENiSmpDRTFTbi91VjRNRHdSY3hzd3RWR1VlaGxGRlUwb3BxCmQ1b3NBcFQ4c05INkY5eEdCZ0tVMFZ4TkNkREpqdXJzRVhYV0dKWTFxVUdMU3VORTFyQ09GMndRUmR1emZJYWNNUko5eTMwR3lvSFEKajJFYU9UdHJ6c3FkczdIOFZrYklRbytnY29JNXN5Unowc0NiTkl2Q3plTDdIZHpIclhrUCt2TytIZUw5MUNYNnRsV3c3SUJyazMzNApURlNuUFZUQWNONEtVT1YyVUVmaTVGNEFFQ0FxUVJ0K0RGbnRWU2Q2N21TT1NabnoydHhKTlcyZ2p0RXZ6eDJzbzQ4WTZHTks3b1NPCk1WVnplZUtyYzVPMzNoNysvQzN2VjJkOWxaSVpoV2hLZmM1UHZoVjFuQXVUb25rVlFKdXJabzlYWGVuOTRrK0RmMzUxNXJiUXI4MzEKMTdGbWNkNkNRUmkwdzhqTkN6aVJ1MFJNakRDQmRwZ0h6U2hlTlcxRVJnZ1NPYUxLSHBReTUvU0NaUnQ3eWNZSUdKblRKR2ZHeUE4NgpXUUViMVpXTXl2NkJIeHRjQmNjZHhnU2VEVzQ2cWdCankrNnBZNDVoOEZ6Y1pUTk11M2tyTmhvODFLcW5mS2VISDNaeC9EWlVBbnVhCjRNNWF1UE5XbVB0U0dzU05XSG5MYU5RWHh0RE9HdGEyaS9ld05lK24zb0ovRGhiOVBGRDRZMS9lNDRhQzc1cUxIelh4TjB5c1pRMW4KRVdPRlZmd1Y3WHRoK2FkelZXLzNmdkx1M0VkRkczajVJaUVPR3JPalZheVl1bnEwMHRqL3pZeFQ1ZXcxdjdaS0ZPOFlpdlliL3hLcAplaitrZW0yMjVzL2pYMkxkMTdxYTFjMU5DbTMzOWZxR0trTVhkaTVLQ3U1WlN1SVc1aUpaR0pTL00vdE5YcFFVUmduT3NqWTNyR1lHCk1RNklTMGdyQ09Ed2drVkJveWhDNW9ZMWVRSDFSeXZHeXFqcWc4ay9YUWs0c3BjSXpvcWhlRmJIRDZpTE40bDNvOHBiSzdMekcrYWkKZGFONDA4eUw2amp6Y3M1a25YQWV5MSt5Vk93Mmx0NXZ6VHRzRU95NkpGc3VFQlRCaXBHN2FpeU1PQUhKb3IxdzFWVVk4eFN1d1ZVdQpjZFJlRkhlWGJUYWV1ZHR4ZHEremFOMVR2dFY0NmFDbE9HWXFpMWhoZ0FkRE9uZlFmdW5ibmt2ZjlWNytjUUM0K0tUbjlaOEhMejNzCnVuRFlkdjZndFdUVFhiamhGbSs0OHBjYkw0VGw3L28vcTF5cmxpZndPeHZFSDdidCtROTdpby9haTc3dEtuclljT1hROGVlNHRtWmQKcTloUVNiZGt5bzFmb0ZpWFVtQWI4aFRKeU5CVFh2Q2U1d0wwVXREcVdQSUc2WWsrYU5mWW1wcENGY2NBZFVMemxHYzNodHVBRlZFQwpoSmJBZXRXRHphcmhSczFRRys0WjBYNGNJNHZ1T2ZPMlBid1ZNemRzNFBzSjNxU1dQaUNIWDVab3lsZ2FxUy8yV2RnRGFzRXNxallwCldiT0J5T2FGTElVUk4zd1ZSYXV1dktnYnZBUW9pTG9STVdmUlJqTnZScy9vcnVIMHljUXpwR1RaSmxsekFoVnh5OWM3TnRPQnlYcWsKTXo3VWtVZDY0cDVPLzREUTNGZHA3MmwwZThiUEk3cnlJV1hodEtVazJpQ0ltUEtYN0pKbEI1QWZzZVNGVEpLd3VYRFJBc3Bic3RwVQp0TlpZdk41WXN0bFF2bDUvUHVHNnV1WitNKzVHbTc4T2RmZzl2ZmFJU0FGLzZ1Nmh2V0NBOWxDZkRxalNTOUgveWxYSXE1NlJ2ck5NCnYwZWswTjNWcDNFOHBFVHhhMG5aYUVWc2wxRHQ2SUdrNnhBVXFrMFNVRzRRRklwMVBZVjA0eWwxK2NramtnQUFnQUJKUkVGVTZ6cWcKTnFHbHFGeFhWOFh3eWhYeTQ2ajUxYmhWRWpNTFEwYmhETUdieG5uVE9zNGt6aHJYb0MzdVBjcmNUaVdyUXltZWNJcW1IYnhKSzhnSwpwMWZEYXBIbU5GWGxkTlJsRDZrWW94cVdWd2V6eXR3SmtqVmxSQWZBU1pTV0RxUzhCKzJIblVSdUJFZHN0dGZBN3NmcHpYVzBobXA2CnA0STFyRVBab2loekNLZFA2MmhqaW96ZU8xazkxUmw5ZFdqL2lnK0hVUWJHR25paUxGUUxFYU5QRUhEOFovbFE4V0dZOFo1cXFYeWwKNWRhSkxyUUVoaWJrc3hwR3lFQmZObWRITFVoMDF1MVpDUnNLL0NUczlBMG5BSCtpeE9lWVBXZlZsck5rNGZrdDhQai9PU3pObk5MQQplSVFTcUNPRzdFVWo2bWcyUmViNFVBUUlSa0FRTlhvSFN2M09RRTNnc1dRU05BNENsRFdJWi9iaEdkM1liMzVOZEw2Y2xoL2pxeGtGCjhHSTQ1OXFzQ25qcGVoWmEwdnFsOGFSMGg0cnJBSlZCRmNYdEVGaU9PdlZuNnBKblBKY2VvQ3FpcHJpenFMa1R4bTZHTlIrRjFaZUQKNm9KUXNqLzhyQ1ZuRm5WbFFzVU1mS2hBK0s4SkVFcnY2RmFEK3FTQVMrakRlclRtTmU5Z0xUalJxUDlNZ0hLOFNJQ1lFMWFodjU0MwpWOCtlZHYyL0ZxRG5EcFFVSUhUaHJCdGVKSHdxdjJ1VG4yaVdnWXVnWmRkNTFFaUxhbGFWazZ3ZFRna1FXZ0xyVmFVTFVFNmFBQ1h6Cm81OExVRVo3SFFnUWNLS3A4a1I3RlNWQW1STVlmSEhodnBsRFdtNmdQbStsTFh2Q0NFOEszMmtLcWxrTVRBV1NHWEJtOW93RkpZTUgKTFRsaFUvWUNTWnZTZ1M1d2ZLZ2lOaXZoNUJ6VWk0OTZKQS82dUE4YmVidDIxanhZRlBwUlVRSUVuOFV4QVVKcU5hYW5EMmxRYTdvTwphV1piYldiem5hejJtcE85VlZuak1oQWd4b1FxcTcrV0VpRDB3WTBwT1Q0dGM2YnU2dVEzSUVEdmpIeng1dmpYWjhjcXhSTXlybGRaCk5JVmZDSktGczJybXBKVGpyY21ZcXVSNHExOGYrUHJENGI5Y21yb0ZBc1FPeXBuek9EZGdGSVFkZ3BDYkYzSnhndzVXMEpDem9FMFgKSURnUXBBU0lQYWZuTDFsUndsTlNnTUJhQkNnTWhnU0lFMEFDbEZ6alExZmxKZ1VJWGlHMUJFYnJycVVQS3puekJFb1dYakdLVmgzMAplUjB2NGlpSXQ2STNZZFlNRDhXYkFhTXljMmRSOEQ4bFFOd2xPMy9GS1ZxMUNSSk9sR2Y2YlZmSlB3Y0xmdWpKZTlRbWZ0Z21lZFFvClBIQndFNGJjcFBwd3dtcUdYOFlPcWE3NlpaOHNxOStickh4MzVxOTVZYW5FcjBhWmNLRWJWeGZVcHA3YjZvSHJoaDdsVnpQbUMydkcKTXh1V2t0Mm1ENVlxYi9sazBzRzZxcUd2OVYzZjlIbGs3UTFTemVBTmw3dlNYaS8vY2xoOWJ0MVFzdWVVSk94RnkrcTNmSitMVnZYaQptQUU1MEtLR0ZWWnpRemcvaVBNWE5IeDRNd09FSUtUUDlXUENXZlU3UzRiUGwxWHZlVDhxblNWWmZpMUtQQWMzRFVyZldOZjliVlg3CmFWeDNZZE5WdW1rWGJWbEU2eWJSc3A0L3ErSk1LZmx6bXZ4bFUrR09wK0NvR1J3b2Y4ZGRzTzdJajFuelloYWtQc3RPb0dERm1Sd3AKYllXcmp1S1lxMktqOGV6ZHRvcXQxcEpFSTFoUnlacnI5SVlMQktoaTFWbSs2anl6MVhUcGZpY0kwTVZ2ZTE1OTB2L3FENzJYdnUwNgpzOTlZdkdZL3U5VndZYmU1SkdZWHIxaEZLeGI0WEs0R3BSOU5mMW01S3IrMlNYNjBZM3AxMTFGKzFGMytvT3YwdmVaekcrWS9icHV1CmIraVVHemkyb2NZMmZwR2tuSjdUazd3V0FVYVN6b3VLUTNFc296bEZhanZZTVZJUFNEMkxaaE9qd0xmVW1oME0yMWFydDFUNGxrYS8KaVJzMmNISk4zZHVyQVFFYWJNUUcyalNlWWZ5TG1QSDBrYWR3cnlrdjdoQXNtWVFCZzJCYW56c2dZL1JJZVdONDBieWRQNHpsRE5Sdwo1eldTZFhQZWhwa1hNL0NXakNJWVlGWXMvRlVyNkRqY0VSQW5uT2hNd2dZYXlwL1JzdnZyK0VPeS9CbGQvcUk1ZjlVbWlWbkwxZ3hmCjdsZ05oeWJUQTUzaGtkNzAwR0IrWURBOE51b2VvSTFndWtQemw4dGsrWWhDUEdVb2lycmgvUmZFM01JMWwyZ05ITXVadDJvRHRRVzcKS2s1NFN0YmN4UWwzMGFhcmVNdFp0dVU0dittNHVtNy8vYnJqYVZ6bmwvR2VsOForS0loOThyOGxYVzZPQjRTZUI0cGVZai9hWGQzeApGYlJuSnZSaWtqVzFPK3lYMmMwNlFMYWhCUlJiSklWOGs2Q1FiZWhsdjdTZmx3clFKMUh6bFRWclVjeVNGemJtelJHQ2FTMS9TZ2QyCkN3S0VpaHoySVB0aHRTdnl4aTNpS1NSQTdDRWRwMXZGYks2ak4xZlRPK3B5aGhTNUkwaUFtRDdrUUdpK09vVUVLRDM3SjJVL1ZIQW8KZDBUSDZGSm1OOWJrTk5YbXdrTU5vUXJMbEFEbFR1bmdBRWpycThycXFzcm9yYzN4Smp0T2VsRUZFMHFBTWdkVU9lTTZtQktqSE9waApMYTNycVFDZDdLN09HcEtuQkloQkNWRGNSZ1Y3VU5RbmpsYkVjdFlkYVBFcm1mY0Q5b1BXdkh5NlU4UEtWNFpsYVBzWWpFZEJBeTFNClVnS0U2bGw3VVMwWTFJT3NXd211Um05WFVnVitVUkwwWUVxQXNGTmQ2dDhjMzRUMXk2ems5UFJraWw4TjVLVG42NlNSdm95VnJqdDMKZ2dvS2Fra0xxQTZyZ0JjdnFZbW9VOVF1WWtEZGtvWkN1b3pYTHV1a1M3cWFzT2Fyc09hRENINDJyTXNMa0REVU1lWU15UTFIcURjNwpTc1FaUjIxUTBnVW9xMStiMVl1QjdqeTNuMDRZakJVWkhRcTRuQUVxTUdORmZUSFJIdmhrVmpWYTVqUmtqZXBCVTNpekxzNjBpd1hTCjQwUHB6OHhrKzFWbXNnVUhWZnp3UlY0VUlBcXdIN2dRN0ljOTVjd2EwUDNQcHRyL2FLZzUxYXJJR2RFekpreU1XWFBPUE9ySGlmYmgKZTNXb2lja2dCbktUTTZqSjZWTm5kU3VPQ1JDMUJTd2xRS2l5Y3lkYS96clZWSFdxNGM0cjlUZC8xM3FiTnF3Q0FjcndxYlBIVUVZUgphaDgyN3hZdHR0Qjl4bHo0NytCYlRvV1VrbVVoS0FkS3RhRmdCSXowQlVQV3JBNzhLWHRNeXh6WGd6TmxMK2laY0dTODIxbDR0MVcwClkrR3Q2bGtUV2txQXFDQVF2SUdvalZkU2dKaXpxTzBvK2ptQll5VUZDQlVvYXEzSmJMaVQyVlo5cXErYTVwV3o1N1IwbnhJRWlONG4KQXdGaWpwbm9veksrRHhmTXkxNmYrZWJzeE0xM1JyNTZjL1NiTThPVndqRXBlMHdoOEtuenAxUmNuNVEyWHNzYnJhWk4zK0ZQMUw0eApkTzNQUXgrZTkxNFR6dU9pUlN3M29PWEFESGpSaVVwY1J0ejhzQXQxWVF6b2p3a1FIQTRZbzJvUUlGUkhLeWxBdVF1RzNDbUNNMFZTCkFvUTZrUVhzYkQrNkMzdldDRFlEQWtUM2FYSkdGVGxETXJDZkxGRE1QaWxyV3N1TkdIT1hEWUpsQzhPUFZnQ0ZZVGZNZ2VCQUF3L0YKblVZUGlFSkJTUWZpQnN6d1luaUxOdDZ5QXdRb2Y5TWoyVzhxZk54WjhrTXZxSTl3SC9tQmFOZkdXTUZwZmxuT25KUWJVUElES3ZhYwpqTGVnTEJ5NzgwWlUrMlpJOGY3RUovekpTdjZNTEc5QkoxbTRlWHRDMmRwZWM5dFg5WjRmTDkrd1Yyelp6MGV0SlJ1dWR5TTN5ZTZxCmdWYTVyZWVtb2ZPYmZrOU5kME9OWnVSV2ZXdDFpMGZoZEVvL21sT1hIZGpMZGoxbE1lMWJJNThKbDdXU05ZTWtiaEt1NkRsaGpCdkMKZUFFTmQxNHRudFhEcU1sZHdObFRTdUVFZGlsc2VEK2tlbS9rVS9Ha01zK0hGY0JrZExxcVBIem42eGgyZllYOC9icWxJdEZVdnRNawoyWGJrN3pnTHRrQkQ5VXlmVERDcDRrNHF4YXZta3FPV29rZHQrZnYxQlZ1dW9vUURCbFJ4TWp3QTlwUFVJSHZSa3Ewb1lpMVpzcGNsClBPZDJXb3RYM2ZrUlcwblVWUloxbHNXc3B4TzJzL0g2ODV0TnI5N3J1UEtvNStMamJ1RHlkM0RhZVdHM01UOE12b1dkampvdXJMa0wKZ3FSb1hpOWVJSVdyaG5lQzBpKzgxNzZPNE85czJzNXNtOG8zYmVkM084b09XaThtN0svUFNXOHNvUlVvemJvYVZWaGVVejhQdlNRMAoyRHIrMzZMWjBGRGdtM2c2dWgzMVM5SGZWUkY3YWdweUh3TU1CeHJBZUlpcTZWQ1k3bWxUbUk5MHB2dDZ3SGhFV0k1SSs1SEJzVzl3CjNDWDYrclhEclpyQkprMVBPOVl3b0xtNVpMaDg2QzQvYkNuYTlPUXRXOFJCUS80Y3dSMVdNcnBydVAzSy9IRzlxRS9LN3FzUkwyQkYKNjJnbm9EQUszcS9QaTVoRVMyYTRmWDdVSWs2U0YwVjFKdm5MQkZnVWR3cmpEa2xGbzBySm5MWncwVlFjdFpYRm5XY1Q1TFVEbStHaApCZXpIOEMxcGZXU3lQVEFiSHh2SlJ5YmpBeU41MzNGanpYVGVweXFjMXBXdE9FcWpwcUtvOCtuSEIzOHUyY29qNXJPTDFuTkx0aXRSCjI1VTErNVdFN2VxRzliVjE4NXNKOC92cjVyL0VMY1o5TTJBNnNCeUR1anlGWWM5RVlkb3ovenNZNzVvb1VuY0V5THZHRk1TK0lWMkoKMGxLSURJQjJsendHdHExUG9kN1N2UUNoMnRRbmVScjFrVy9yS2FoRUgycTFDNUN0azlJRVFWRVgxMVBVcnVudXJPUFZhOW83cThSbgpVZE1mNHVhS3FMa3diSmJNay9CN3pKdlJDU2QxM0hHY05ZUXhlMVRzRGlXblRTRWNNb2duN2FKSkM3c2ZaN1hMV1UxMXpKYWEzUFk2CnhxQ0NQWXA2MElJRHNYMTY5aVRCaG1NeUhBQ1RWZEFva210YnFIVThJcG45azlWY1MydW9aclJJMlQwWUVxQmhMV3RNRDVORzVoVE8KR2xlaVhPUE8yMWs5MWJReFZUS2RRSXZTTFFaUjkvV01QZ1Z0Q0VPRHdxaUJNYURKN3F3REFUclZlak9qNnc0SUVLalNjd0ZhTWFOdAo4TW1sTG1RL2EyaFRHSUNXdlZhdDlHVnJkc2lZT2FjNzBTOURqTWl6SmpXb3djQUNtUlVpc2lQSnp2WVRTSUJRTHV3QUJnSkVhNWRsCnRkYWQ2a1lsN21oREdsUkVaa2o3VElDVXYwbVpEY1gxT2RWVG5pZmxLRzRndjNuS3NVQk9hdlhxOW9JeVJhVmZrWUs2NUU1QUJWUUYKMVNsZWFqOHAzVW1KRGlnT2hXd0pJVi9XS2xaMGdISlZENmlpaEdLVlZNZEl4WksyWmtuN2RaUjhhNGtzQ21yNVlRTnpqc3lkUld1WgpWR0p5c2d5MGtUNWlvRGJBMHdaMDZRS0UxcjhvKzJtWEE2aXl6Z0RPOEtLdUNHalVmeVpBMmVNa2JRU0dmQ04zTXVrNmFUeDNvRi9DCm5IUlFnUDJrQkNqbFFIQUc3UXViZG9KTE1ZWk5KOXNVLzhOMTU3ZjFOVmtkYXRUZXk1ZmMwajluUnN5WWFPUGFsQUNodlk3OVdFcUEKa1BlTUpRczVQQk9nN0tRQXdRMm8rTXJKeGpzblBKVy9kVjM3YmZPdHJBRkYxb2c2MDZ1bWo2R3FmVm45R3ZnMytVRVBmZHdBYms0MQpXSVZ2TmlWVnFYMEI5Q2xEN2p6cXp3WERPVzBLeXhoWDBVWXh4cWcyZHhSbE9qUERaSDdVVTU1d25kczBGaS9xZVY0OWU1emdvUHBtClNJRGdQVXdYSUxTL2JCTDFwbUhBUysxUlB2VXpUeVVJVUhMMkFFTzdsakd1eXV5ckF3RmlETlF5eHd5TVVTa01xK0tBOUErejE4NTUKYjRBQXZUSDB6ZG5CU3VHSWpPM0ZPRDQxWjBLUjY1Vm1lMlhjd2RzNUU3ZjU0OVZ2RGlJQk9qUDZGWDlhTFF5cE9CRTlURzI1UzNiVQo1QVFFYU5ITmo5aDRJUU1yYUFBQlFrSXpBOU1kQXlWQW9ESzUwN2hnMGNwWlJBSUVQMlk0UVBCUnN4c2tRTndGTzJmQmdzUmwxZ1FTCkE3YVg2OVhRUnhYMEFXbDJaMDFtNisyTWppcDQvWndReVZveUlBMmExN05uU1lIZnloaER4eHJPQkJ4MGNKaDFnUU54Wm96Y2VTTm4Kd1pRVUlBc29GMmZOSnR6MkZEeG9Bd0hLZjlpU2Q3OUpjdFJRY0wrUnRheGhCT1M1ZmhsNGoyQk9LWnhYY2Fha3ZCazVaN0NxY0JFNwpGMUo5NlB0Q1BGckptYXpOVzhBdkJPN29mREpYUjgyZlp1dEtWclRjUFVmeHBxTjAyVkN5YW41LzRXdHo1dzFmdDhMYWZVM1Q5VVZYClIzVkhaN1ZpNkJ0TCt5MTNZNDNIZFBOV3o4MUxjYnhrejNrMnBuOTMvQ3RoQ0N1SWtvVUprM2lWRkN4cUJTRU5QNkRtejZzTEp6WGMKV1NWblRzVWJWd3JIMVdVQjRzcTg4cjNCcjhWZXFXUlVKZkZwUkRPVjcwV3JhNk9LenlKRTZiSTlmN21wWXF1MWNNTmV1RzB2MkhHSwpWa3k4R2JWa1dzMGZrNG44MnFJZFQ5bWpkcFFKdE9NcFhuY1dMSnZGVWJ0b3laSy9aQzJBMFhIVlZiYmtrTXdaODZmSjRxaWpZczFUCkVMSGtCNHh3WVVYTVVSNjFub2tqQWJxNDNYVGxxUFBLdys1TDl6dGZmZFI1K1dISHVmMm04b2hST0tuSW44TE9vdVJvazJRU3k1L0UKd2MvRVFjV0hZZVduM3NvL0xlaFByOW56TnN3RkNYTkZvcUZneS9hSG1PRXYzcHVLWURXNUljZTM1ZmlXV3IrcDFlMW9LUFM3T0VEYwoxVktRZXpvS3c3NCtIZk05SWdVSVNncmJRK0tsT0I0YktKemZHZ0hYZDZhbmZFOVF1SitRNmNCVnppZG0xdzhXT0hWL2IybjR6dHJ3CjBGUi9qK3dkSm9mYThQNVd2S2REMDlTSDFRYjBmOWgxbmQ1dkx0dnk1QytiOGdPR0FqOHBHbE96TzJ2NFhYWDVmZXJDZG1sK1YxM1oKREY2eGJDaGFKZ29XOVpJUVdSS3lGQUVSUzhtU0RTMUxyZGlMVnEyRks1YUNWWXQ0MFNLYzBZbEdWZmxlckhDZVJMZFpzWmV0MnE3RQpEVGYyYk1SRE0vRklUendrcmZjdHRpTUxxQS94d0VMZU14RjdscXFvOGUwSjlVV3YrcXFmdUxxQXZ4K3hmTGhzLzNqVjlmbGF3L1gxCnBqdWJyWFU3bmNxN1BjcTlkc1ZCaC9Ld1hYR3ZWWG12RlR0czFoMDJHdzVhSFBjOEw4Vis2S2F3SGJqU3NlNDcveDBzZXc0Szg3NEYKZU5HUXlBTXpzVzhDOUh0R0lPVTkrQTZSam1aYi95TFlsdTQ1MitCR0pBaFFFZ08xOHFYYU1MN1VmaERQN09lWUFGVW5kTlZydXFxbwovcXNvK1g3TWZHblZBdTVZNmpjVnpKR1NXVUk4UlFpOE92NFF6dXZGdU8wS2JxdEMwS09UZUcxaXJ4bVVoZDBzWlRmVnNGdHFtZTAxCnpFRWxad1FEVytLTzYwQ0RPQk53dUNiWVBoSTBpRE5wUk1BWk9JRERKZU1Fd0JyV29sb3FEWGRvRFZYTU5obXJXOFVjUUkwbU9HZ2EKck9GTTRnSWZ4aDJRTWp2djBMcXJhY01LaGcvRmxpZ0J5dXBEbFlmUWJ0OVIxSGVCM3F1bXRkVmt0RlJtdE4zSzdLNkNHMmQ3c2F4cApqQkVrMGZhYUpWUUdHaHdJVHVsUkt3VnQxVXhiaHF0UUFnYm96cWtKOWUrNmEwNzAxcDBhbG1mNXNPeFpYZlk4UVFzaXNxZlJsaFJLCmdOQnVPSGl1ZGxsR2M4MnBqcnJNWGdVTW5TZy9CS0Y5S2tDMzV0VVVsWDdzbDZoUzNGNVFwN2dWZURtVTRxUkl5VkIxVUoyaUpvUUIKdFdFTlVCZENTTU00SUl0b1V5aVc5QlRLWlVLMVFnTHFWUU1GRmpVQ21wZ0p3TmZNMnJnRjBNVE5STnlxaTZKcnBYSHJ4NnVtOHlFZAp6UG00ZmhKR0hUU3Q5NkdhbFpRQVpZOGlBVXFQQUdWMEkvdEJKTzBucTAyZTJTcUQ4OVJDR0RnUWZTWlpJU2E1YXBNelJtWU42MUEvCnVYSDBnQXl2OVVVTmVxbjlvQVd5WkNWb2dEV0xWcnRTb1BEUGxKTXhhczdzMVB5bnAvby9YSGRPTmttektRRWFSeWs0VlBrY09KTTkKcHMxRXNVUTFMZGs0SFR5YUVpQ1FGVXFBNEJTQjZrQWs1YmMzVFlEcWI3L2l2dlVmem0vK28rRkdKaXJBQ2dLa1pJeGpTSUQ2VlBCRQo3Q2tyUEE2akQ4V1c2TThjQ0sxU29TdzVsQThFQXNTY003TDl4dHhaWFpaUGxUbXF6QjVSMDBkaEJrREFZTStheGZtenhQa1YwL3RiCjVvdGhyWEJNenhuVmM3d2svSkNRV015aXRIVFdISElnVkZ0b3hvSm1HT01rYytpNUFKMTAzOHBzcVVMU0F6WXpqeDR6cTZjMnQxZEIKNzY4QngrS015d3FuOGFLZzdPMlpyODk1cjcwOS9PWHZCNzgrTTNBcmIwVEduY0RaVXhqWUQzMnNsajRxNVhaZHp4bTd5Um1xZktNZgpMWUZWREgvQjljclpNelVvY3dYMWh3ZW5jYkVqeVRoUTBJSytKTWtJRUFnTkcxN2hsQkZFSjNjTVF3STBxZUZITENCTXJBVmo3b1FlCmZJWG50NkUrckdBL2ZodGF1cG96Z2I2QXhEQjlPTnlGUGl6UDZhM043cWcrMVhqelJOUE43R0VaSjBDd0lpVFNvSG1DT2FYancxZHgKUkFQSEdyWVhaM3JWTVBHQ0l3NUtCcG96OFB3bWJzQUlUd2ZLbFp1dzhYYmRSZDkybFR6cEV0N3ppSS9jaFE4YUJOc1dibGpKRGNoRgpBYlZnVmk2WWtvbG1GQnh2SFd1c1JqeXI0NGJWaGZOMWYvRitWVGhjbVR0U3ladFN2T2EvclEzS2FvZHJ6czNKQ3dONFhzeFVzR29TCkxlSVhWblRYdzFYNnFjcWVaVDArVmFYMlZYYUZORjBMYW8ydjBqcFJVeitGVzhaa0JtLzFsMUZOK1QzYjVhaitYZDgzZVFGbHdhS3UKS0dvQURSSXY2MFFSclNDSUNmeXFvZ2tWYjFyR24xVUp4a0NBTkFWKy9ma3A2ZnVETjRwSHBhSWhPYzhyTForK2ZUT3V2TE9xZUhNQgpGL3R0Z2xBOWlFdkprcTQwUVJac1dBcmk5dndnVVRDdHpQZXErRDVGWHBnczIyOHF2ZDlhc3RkWXZPR0NzVFovMVNaYU11Y3ZtZ3NYCnJSVXJydktJTTM5U0w1a2l6aVRxWVZRdURwcUwvTWJpQmVQcEpTdE1na3RYRFdkaXp2TWI5WmQzV3k3dE5WODZhTGw2cngzT1ZNU3QKSmJONDhZem05SUx4Yk5CY01xTXJtc0FLeHJIOEVXWHhkTTBuSy9nZloyb3Z6ZWtMSS9iOG1MMG9ZU3RPdU1zM2lNOTJyYmZucTR5cgp0WTRqakhpb01UNDIyaDVZN1kvMEZJN0hJQ3VFODF1U3d2MmRnY0x6dlRHZCtoK2YwL0NUS1VYOUQrYVgwdkNqNWFWNGZpQW82bjhrCjAzRi9iM1Q5WUVwaThUeXhOSUFESlFXb2U0Z1liTmYxdHVzN3V6UnRQWmhtU3Z2QnV2M3NYdU81N2ZyaVpVdGh5RkFTTUJXTWEvaWQKMWFMV21vSU9hV0dic3JCWGZXYmVkRFpxQTVVc1hiR1dSR3huRnQybHk0NnlGU2VBN0RQcUJFcGlDTW1DVVRLaExSaFdsWHExWi8zbQpDOHV1VjZQMVY2TU5IOFNNTmJ0V3c1RlpkNThrSDFnY1J3N1hQWWZ0dnMxd3Y5NXl6d0dtWXRscndqYWFsVnVkdXIxZXczNjM2YURECmV0QnBQK3h3SG5aNjlqc2JEenFiRDdwYUQ3dnJEenNiN25YVkgzVjU3clY3RHRvYURsb2E5MXVhRHBycjc3ZDRqcHBmeEgydkNYQWQKTmg3RGVWRC9yM0hzZTlMNU5URXlIZGlNKzFiQXNHY0J5THRtZ05nMTZYZU02ZWkyRFJUNHRpbUZac3VZQXBXTTJpQUIxVHFoV2pjQQp5Z1FKcEZhK25pOStyZXNBMlRxWkNnS2xCQWlvUmhxa0J3RzZGaVgvR2pPK0FlTmR4RndSTUpmNWpTWHp4c0laSXQrbkU0M2d3ajVNCjBLSGl0eW1FblhqUm1Ga3lidVoycWNCK2VJMDEzSllhYmtjZFowakJIOUVJeDdTOE1YQWduTzhqZUJNazEwZHdKMkY2ajVxbmNuMEcKT0lCenh3aDBKQi9WczNyVmFQdFlRMVZPVXcwSUVMTkx5ZXJIMkVOYTdxZ1c3aTcwYVF2UXQwTEo2NnFtOTlUQTBRK0ZoZEJrVWdNQwpST3RYWlhiSmFGMHdXOE56K3pWMEdMWmFxek9hYm1TMjNxTDExbVNQeUZIT1VGS0E2QkZqenFLUnZtd0djbEFLZ1lVNmo5YTJJb2FjCnNJbStnRm9QblJpUm94TFN2ZEpUUTJnTGZmYTBsdUZIQ3hFMHZ3NDErZmFoRFdob0orOHdUdTlYWjNiSVRvRUF0ZFdpamdqOUtzcUIKc2djMVR3WG9UZ0JQVVJYVS9oclZJUjFGVlZEelVtcUMrRXVSaG5VcFpCRTlJRjhrQU5XS01ZVjYxVVNCUmMwcE5ERUxnSzlaS2ZScgpOZ29pYmdmSWhPTVpMdU9HaTB6QVZSWk53bEVaYzc2OWFLeFkwUEg5TUxRUUtBS1JKa0MwRVpMcUFrYmxBRkVSSUVxQVVPQUgxS2RWClJtdEZHcFRWcVVSOVJvZFJ5L1NjNU1wb1NvQlFFN0VSQXlnTGtEdG1ZWTViV1Y1YmlsOFRJTXArMGdVbzlTZG9FNjFYZjZKQjlsdjcKN2Q4NXEwNDFTclBhbFBEVUx3b1FiVkI5cWsrSmlqVy9JRUJVQ1VSMC9wa0FVVm5TR2RUK3IvcmJKMXczLzZmOXEvOVpmejJqRHhYWAp5UmhYZ0FBeEJwSmhKTFNhUzhCZDRLdEo3My9xUUVpQVJsQ2EyOVBLeU5NRVNubVowek9tTk5uanlxeFJPUWdRQ0Q2OEV1YXdndTFWCnNjY1VyMFdJTDdmTnI4K3IrWU1hN29nZS9YaVNRU0N3bjl5a0JvRUFjV2FUKzZvbWtRREJySUxlcTZLMUpTTkFyc3FzMWxwS2dPQ0QKeS9XcWFiMTFJRUE1L1hVZ1FEQ0pQN3VnTHczVnZqWHp4WG5mZFJDZzE0ZStQRHQwSzIrb2x1TlRzeVpWT2FOVjlLSGJqTDdiaFlNMQpndWxhN21EbGF6MWYvSEhnVCtWRG40TUFjU2FyaFhOS0VYd3JRdVprQlVJWGY5R2RFaUJ1eU1JTldEbmdaOU1tSkRUajhMbkxHUk1ZCkdBbHYyWUgyaUUzbzJUNDlmeDRKRUEvWkQwcGU1czZhZUVrQlFuWGt4akRHb0F6OTh0dXFNdXB2L0s3K1dsWi9MV2RleDRtUTNEREoKOWV2aEJ2eHhQV2NRNDR5Z3d3M0xoNEVHc1gxYXpwU2VNd3MzUUl1MmdyQkZ1R1JqYlRpNE82NkNvOWFDdzBiZXVqRnYyMXF3WStORgo4ZndsWEJSVTV2a1Z2SWxhbnJjMmJ4cThRY1lhcVM1YnRyT0Q4dnlKTzM4Wi9hSnc0R2J1d0EyUWp6ZUMxZVo3aGkrQ3FEcG8rVFJlCkZ0RGxCM0hob3Z5amhGNjdwc2JqdFUxUDdJcW9YTDBzNjM1bzZ6bXlHRUl5enpiUmViL0I5YTJ6ZTVkMEhOamVldXg4YlUzN2x2Y3IKU1ZDZEgxSkxJdHFDRlFJY0tIOUpseGZVQ0JmVTRra2wzMWVYUDZYZ2UxVzhTWTFrVG50MnJPcUQ0UnZGQTNXOHdWcU90L3JjZENVYwpxZjhXVnBiUFllSkpDei9vTEEyUlorZnJmcC9RbDhlTnhadW93WHVlcjZaZ0F1TU4xNEVERmExYXp4eTBsQisybE83VUZ5VWNCYXNXCnlaS3BhTWxjRURLVmhxMGxDMVlRb0lvRjI3bDFUeUZjNGpjVno1QUZFL2laa1BsODFGcThxRCt6YkR1NzZqaWZjRjNZOUZ6YWJyaTYKMjN4cDNWa2MwSjZlMTU4TEdDNHUyc0dCaXFlMVpUTzZ3bkZNMUZkM2RrYngyYWJwcmFDaWRGWXZDZGlLSTViU0ZhTWtabjU3RzFOKwo1MWFzU0sxYlNzLzNwUFVuMHZrUHUrZEhlOE9QQk5ENEUwblI5SGNEeGJFL2oxMytFbjQwL1FxV0J0Q2dOT3FmbUJCcElwV081NG5KCi9hUFo4NU1sSlVDTmo4d2dRTzJEK3I1MmJWZUh2cjBINyt4U1djZDFuOFljRi9jYUx0OXRxb2paU3Bjc0ZTRlRzUS9QNzZvcmFLa3EKYnE0V2R5Z2xnK3JUUWN2Wk5RZnl4V1ZMVWNCVUZyU1hMMXFBaWlYcjZSWEx1VlhiK2FnZHVCQ3puWi9XWFJ6RHJnNHIzL1JwUHdqWgpQb28zZkw3ZTh0VjZhKzFPcyttdzJmMmczdmJJNVhyVTFISy9yZVdveGZPNHNmN2JucVpIYlcwUFd0cnV0emNjOVRYY0cybzlIR3pmCjYybzhhZ2VhajFvUmh5MHRoODBVRGZmYVVuZ09tOXdIalhBSzFOOXJCcWp6NlNSZHArRmxIRGVlRjBrWG9GOExIUm4zN0JTR3V6YUEKM0xWU3BHVG9HUHJ0NStpMlRDbFNKb1J0bWdEMWhsRzliZ0pVRzBZS0pTalJ1a0dSSUo5aG9KREhTUXJaR2dIVUpnajRXVld2NlNyWAo5Si9GaUE5V1RLOHRXczZGYkdjQ2xncS9xV1RXVURSSkZvenBKWU5hY2JkRzNLYkthMWNYRHhrTFJnejhUaFhZajdDeFZ0aFdKK2lVCjhRZVZ3bEZNTkFhVFZZVEFxeE5Na0tCQkFwOFI0SHNOaURHU04wckFrWnd6ckdOM0tYTmJwWXpHR21aekhRaFFicWVDM1FlL1hCMEkKRU54WFBBSEhHYUpzVkNQcXFtSDExc0FFa2ptS3d4d1BCQ2g3U0pVOW9NN3FsR1czU3ptOVdHNlBPcWREUm11cXpHcTZrZFYyTTZldgpHaVVQSkFXSUhpQVlJWlRLZ3h4b3lRUXl4Rmcwd1JuNE16dGlvQVVKc0IvR0hKSHR4VElIWlJrOVVzU0FOQXVtNHBNNHV0eXZvODFyCjBZWmNTb0RRMklRRWlQWnNFTXlHMTlDcmhCZVRUVzJKNzFlZjZwYi9walpvb0tnTEdYOUJtRXhIR2pGUXlNSXY1L2tORm8wVThpVVQKb0g0R3Rtd0dOQ3NXQ3UycW5VSVhkUUQ2bUpQaTJKOEFzZVlDREd2dUZNYTRKNFVsVVcvYzhKQ2I0RUFPN1pwVEhtLzRiTlg1MmdLWgpGeUFGY3lSM09sbmVJQ2xBcUF4MFVvQVFRMFJLZ0tnbE1GcTdBdXducXdVSkVLSmRRZXRXNXd4b2FUNTk5Z1JhQnFMN3lHelVhQUlKCkVFQUpVTG9Ed1NsQXBUeS94SUYrS1VEVWVhbzZJbTNFZUxKTjlZcXI5aFhiN1JQT3Fvd0dLYTBWQ1JENEZtclBPWWM2a2FFRnVLUUEKbmV4VnBBc1FpdDhrQllnaUpVRGdNWlFBb2Z6aU5BSDZINTVySUVBMEVLQlJHV05VemVoUFNsSXZrcXFjSGhXalE1N1RwMFlrSFFqbApBNDNwbitaRVQ2UHVwTXdaYlk1WGtUMHFwUTNMVUgxeGxPU1BzWVlVbkJFVmE2RDJEMkh0clhYeTZuZ3RyeC9uVXo4YlZGUWFCWUVZCjA4YVVBS0hLOTBrQllnN2h1YjBxK0dGa05sVm51RytEQU5GNlllcWc0YzBqQzBIblVjOGFLWE5VWHpTSFhWa3lWMFJxMzVuKzdOTFUKcmJkQWdFYStPRGQ4TTIvZ0R0ZXJaRTdJYzBadnN3WnVzVHB2bEE5TDgrZmtncUhiVjdvK2U3L3ZnNHFCejJCdzVVL1ZsUG8xSlVGQwpFallMd2c2d0g4R1NSeEMyOFFOR1R0akVDMXQ1UWFRMUtERjVHaFZ4WjR3b3dNTkFnSVFyVHRBajVpUkJDUkRMYjAzYWo1V3lIN2d4Clo0S0FsNXFMM2trcEhXWS9yVlVabnV1L2RYNlYyVjNGbnRPeXd3UXZSSExuZEhCRTRBMWpuSDQxWjFERkhsV3h2VWlBT0Q0dGQxTFAKbTlIRC80dHlpc09XdkdXcklPRVViN2dLTjV5RjY3YVN1S1VzWWFsSW1NcmpKQUFpSXB5VDhYdzEvTEdhL0NrVk9KQm9TbDBVTnZMbgphc3NtcWo0YSsxd3llQlBNRDlUa3RjVmE1dy9XdjRaMWtsazlEUG5GUVZ5eW9DeFprZVA3Wm4wY1UwY3JtLzl1azBmbHNsVlo4NC9XCjFpY1c3WXJDZktSdCtkSHQvb2VqODBkVDUzZXU2NDg5cjIzaTcwNThXYmFrRXk4b2hYNTV3YUt1T0dhVUxPdnpncGpJcitaT0swUmoKdFVVVEN1NmtrajJyS1pyR3pnL2UrT1BZTmZHQVREeFN3NStzTEorNGNYMlorTU9VUWpDaHpKc2toU0ZqK2F6MGJmL3RXL2NkdjkrMApsSzNieW1MbS9KbmF2QW1WYUZncUhLb0RoYXJZOUp5K2g0SkFKZHVlc2xWTDBhS2hlTWtzQ1JpS2crYlNnSzFvMW5oNXRhVnMxU2FaCkowcm5EY1VUV2xDWmMySFRoUlZMU1ZpWHpDQ3hvRUU2N3J5Y2NGOU51TTR2bVFxbmxHZm5pZk5CNC9sRlcxbkFVREtuTDVuUkZZeXAKQzBkVTVYNzhyMXUyMS8yeTRobU5aTUZjSE5CWGhMVWx5NGJxZmR6NWM0TXlXbVBjVVRiOWJISCtiR3I4cHhVRXBla244Ny9KTWJOcAorTUZJVWYvRUFMemdQYW1idmN4K25wZ2FmN0lDTDBhR0duNjAxZi9kRHJoL3ROYi9ZR3Y4M3RiMDJOSndaR2dmSWdZNnlPNXVzclZmCjI5T3BjZy9qMzZ6WXI5eHR2THJYZEM3dVBMTnFQUnUyVkV4cVMzdmxwOXVrWjF2cXlycWtGWU95VjRQa0czSHI2d256bFNYajVRWHkKRHlIYnU0dmtCMHZHdjZ4WS9yYm0rSExkZlcyai91Wlc0KzJ0SnNWdU03N1ZUR3cwRzdaYURmdnR4cU11Mi8wZTkxR3Y2Mml3L1g1ZgorOFAyaHNjdFRkOTJkeDMxZEJ4Mk5UL3VhRHJxYlQzcWFEOXNhYjNYMm5qVTNYRFVneUk5ZDF2cUQxdFRwRWQwWEFmTjdzTVdDcEFiCiswR0QvVjZqN2FneFBkSURmcE9LOURqMjYxL0V2Z2RDODk5ZzNYZW5ZMG5Edk9kS1lianJTRUh1MmxPa3kxQTZ4STVOdjIwOWhtN0wKa242NWJ1c3AyazJMZHNNRzRPdFdRSk93cEZDdWd4SVpqemtRVUxkbUFBRUM3c1MwMzhUSWoxYk1iMFNzbHlLMkMwSGJ1UVZ3SUhQNQpqS25FWnlnZUpncDdOSVVkbUtSVlhUeGdLQndpaFIwcVVWTmRYbE5OWHB0VTFLMFFEYW55UmpYaU1Sd2NDTWp6NmtVVGhOQkhVZ2k4CkJDQWMwL05IdEx4aG5EdWs0WGJJMkcxMXJOWmFCS2hNdHdLT1p2d2hPTTVyNEw0RkU5b0xzNmJ6WHIya3A0NEhrOWhoT1FnUXh3c1QKUHp4bkdFWVRET1NEMWxMTDZWU2lOT3JXdXF6R1c1bU4xMmx0TituOU5Xajd5QVJxSEptN2dBUW9PMFRtaEEzSWZrS0czTEFSeFlUQwo2TUxzQlQxOUhvWWhIV29kM3k5RmJRTjZwSEFtWjFSRm4wRGRHSFBtdE9CQTZQdzRUZ2tRZlVqTlFDc2hTbkNnek9ZN3RBNXBUZzhLClI4RXdDZ0pFNjFkbjlDaCtJdzJiQUZuRS9LK1JMMW9vMUl0bUNsWEVsSTV5eVVxaFdyWUI2aFU3QmI1aU8rWTZUMWx4NmxkZEZFVFUKVFVIR1BLa3p4ekNzMVFQR2VNTXhiSWttNDNvOXNlblJKMXp3c05wRTg2MjF4dmNXVENCQVFqOEJReFFxYlBOY2dGQWFVRXFBcUYxZwpsQUJsZHloUkJLaFpTcU1jQ0FTb1MwWHZ3N084T2txQVVLZmNwQUNoSGhxRGVsQWYrb2lKY2lCS2ZkSUZLT1ZBTHhXZ2RQdko5bGxQCjl1RC8yU0E5NGFnNVliOERnQURSTzdDY0lSMDhYYzZrZ1RGclJsdkFKZzIwVVR4clFIV2lCeVZ6SVR2NUZRRktsa0ovS2tCWm5jOEYKNktUNzFsTUI2Z0Y5VVowY3JxTUVDRzRESW55cVI1SGRyUVFCeWdZajZWVTlqUU1sZzBDb0w4U1lIclZ3bjlIblRtcHl4bVMwb2Rycwpad0tVTTZ6aERpdDVJRUQ5VlcrSE5KVnIyaXREbGFKQkhYOUlSd2tRWnpLNXdYSWE3UWhMQ1JCS3Iwc1RvS3ptbWt6UG5YUUJBZ3ZKCjZaVXpleFNNUVJscmpDZ0w2TjZNMmM1RWF0NmIvdnpLek8yM1I3NzYvZGpuNTBkdWlQb3JPZU15NXFTVU1YWWJwRWZRZVlQZitDVjMKdEpMVGQrTnE5K2QvSFBqVDZjSFBlVjQ1MjN2N2paamoxYWl6Zk5tWkYzWnl3MmdKakIreThoWU1LUUZDb1oxWkMyZ04yNmZOSFZYbQplRlZnSktKVkYxeUxFcGFwQ05CVCs3RlFBc1NiU2dyUUdNWVlVVEhUQk9nL0hGOW1kTjNoekdvNUlZSVQwTU1aMERqQmlJWTNnSEVHCmxPQ0x6REZWU29DNDB6cnVIQUVDbEJjeGd3Q0pvL2FTZFU5WjNIbHh3L1BPWWZ1YnUvVlg0dWEzZHQzbnQ2MkZpMWhCUUpVM0l4ZU0KMTRwODhyeHByTkN2Rjh3cVJETlZGNmRyUC9GOVVUQjBRenh5cDJoRzgrcGlIUWpOK3o0WmZDNmlhWlFEWHJpZ3VCSlR0RDJHcVFKTwpMRjhmL05HcWpTa1ZhL0tHZjVpYS8ySFdiR0tHNzdVdGYzZTIvR0R3L0ZQWDlhTlQvY0J6OWE3dVQ1TmZuMWtoOC8wSy9reWRaRkZUCnNtWXFXaVpFQWJYUXIyVE9LdkpHYWtwOUNzNlVrajJQbFV3cUx2VisvY2V4cjduOThwSVJxV1Nxc3NEM3pjZEI4dHlJbkRVcUUwM28KQkFIZDZhbmJueS9WV2Y2cis4TTlSMW5DV3JGaEs0Mmc5Uy9KdUZJeUtJWFQwbFZiK1VGejhVRlQwVzc5NmFpdEtFd1doZ3lnTzJYSgpSWm1TQmV2bHRiYkNpTEZnamlpYk14VDc4Rkl2ZmlGa09oTXhGQ3hnNXlMbTg0dVdTMUhINVpqejFaajkxVlhidVFCUk1DNnRtTk5WCkxCQm5RdWJ5b0xGMGdTeWF3aVdqcW5PelJ2RWM5djZhOFlLM3N0Q25sQ3dZQy8yYU15SE5wVldML1lHeDg1OE44cFhiNUs2eTdiOWMKemYrd3R2NXNibmxDb0Rmbjc4N21ueHpIYVAzWlJVSGRJSFd6MXAvZFFNdmY0WEpYODA5d2liUHBSd2ZpQldGNmh2V2xOS0RnMDB1bwovOEhxK2NubS9zSG0vTjdpL3Q1Uy82MnQ0YUdsL3A2eGM5d3kxR1BxN2pXMzl1bDcycFVOQTVvYlMvYXJJRUIzRzgrdk84NUdiZkF1Cm5aM1dueDNDTHZXb1h1MVF2aitNZmVERFBsdXhYdCtydjNYWWRHdTM4ZlpHaytwdWoyR3Z4YkxmWmovczhCeDJOUjEydFJ4MHRlMTMKdGQzdDlCdzJ0UjIwZE8rM2RoMjB0dTQzTmUwM2R1dzFkZTAydGV3TmQ5L3RhZHREY1pxbSsxMGQrejN0ZTExTkR6dGI5bnM3RDdzNgpEbHVhRHB2Yzl6dGM5OUhhVnVOK0UyZ1FQR3pqUVdmOVlTZGM0anBDT0kvYVBRY3RqWWV0VGZmYUFPUkc5MXJkOTl0Y0Q5cW8xYTRYCmw3cVFJU1d4N2Rlbll6bHcvaHJtZmNkTDJIT25NTjExcFVpWEhwQ1lOTUJwTE9ueEhncGl5M1lNL2FZVkFBZDZSdEo3TmkzNGhobWsKUjcvaHBOQ3RPeWkwQ1R0QUNkQ0xEZ1FDVkJjblVETFFtdTVHbFB4NDFmVFdvdlhWaVAxaXlBNE9kTlp2cVpnMVYweVl5a1lNSlgzYQo0aTY4c0EwckJRRWFJRVNkeXJ4bXFiaTVGZ1FvdjFlUk42ek9IOVhrajJ2QmdmTEdkU0F4WWg4QnB5a0JFbzBUZ2xFZENCREtLQnJVCjhEdmszRFlwdXdVSkVMdER4dTFSd3RFTVhUNmlFWHUxeFJPNnkzT1d5ejZ5c0VmSzc1ZWlOWUZSbk90TFZxWWV3WElITlVpQW1xbzUKYlhKR2h5S25wVGFyNFdaV3cvWHM5bHZIQlNoSTBvSUVhdVlWTXRDREpET003T2VwQVBsUncxZkdKTnFsbTlVdlBkVlprOUZWU3h1UQpnUS9sK0RTMENRMXRSc1B3NjVFQWVUR1UzcG9VSUhBdmVyK2EzcXNDQWNwdXI4MUdheWEvRkNCbHlKbENGWGFsNFVpaGpqalR3UlpkCkw0SXZ1bE5vbHp3cGlLVkdjcm5wUlV6THpSVG1sUmJMYXFzMTJrWmhpVDNIdXRhZXdoWHRTT0dPZGFhd3g3cGRpVDdBSHUreXJIZVIKRzUzS2FOT3RrTFhjYnhYUG83d1QrclFseDJ0aWpwbFk0MmI2S0pFN2dwcTMwd2NNT2Ywa28xK2YwNnZON3RKa2RhZ3pPaFNuMm1RWgpMVkp3b0t6bTJnd1lrbHZyc2p2a29CMDV2ditIdDd0dWIrdk1GMzQvNytFOGUrK1phWnZFTWNneU04VmhhR2lLS1hlS2FSc3l5aGF6CmxoZ3MyV0ptdG1SbUNEVHR0QTJaS1UzM3M4LzU0N3lNODd2WHNoVkZrdFBPbm4yZTYvcGV2bVJGc1ozV3RqNjZhUW1KRWFDOGlBQS8KWW9lSFpzY0NFdmc0cUxSeG9FSzAzMzUzWVJCYUU1MDJCVmFZVkJZTnFTQlNVbGs4cENJUHE4bEpGVHBIUENBOVlHSC9WVWQ1UlV2NQpzNmI5TDMxdHJ4bTY0VlBESjBKcmtKT1NBclFLVzRhMllvVUZhR2U3alFIbHV6aEZYajY2aUllSFJ3S05lZm1GYmtHUlJ3aDNRb1VlCkhtZ0daSFBBU24zTjFJbk9nTloydktKcS96Zlo5Zi9vdTVYbll1VDVtUWVDVkJCTXZwK0ZqdUdCVDJmcHpiZWgwS1pCQnhPa0ROODMKZ0J2MG5SUkZwZ1o2azBjd2NrSUEzMzhGUVNaME9NQ0EyM24rYm5LUUM5QXVEZldlam5mZFdKUmNDaklyM0d6MG9nRUtvN081U2hNWQptaTBDVzR4STBQd1hQZ0lFQUlJZmpFSWd1YVgzb0tIN05YMzdBVU5Ib1JNZG9vTVdieVVGaHowOUpmQjZ3c2VwOHZlZW0yQi9jVjkrCmFvRitKZGw5YXZ6R2g4bHI3MFkrdXhqNXJpbHdxekpLS1kxVGlzTnQ1ZjcyY2tkYmtiNnJOTkRUN0wzK3Z1MnJUOTJBcEsvckk5ZE8KaExxWkQ3QjNmNWFWem1DMXN3TjFFOXFxYVhYRnBMSnFXRmsySWFxYWtWZk9vcFU5NUJFWldwV2N3TkRYNEdQV2pNdHJibXRMWjFUdwpaWU9rUzVQU2ttRloyWkFNQUlTbVZ2RTk4OFVSUHZ5b2svenN3a0JQZ1FzWTEzWkFmZXN2eXVzSHpGM0FPQUFRZVVKWVBpSXE5TkpKCk5tcTVpMVhxb3BPOU5IS0lYaElXa2hNOFVvelJPQzR1SDhKSTA3THF1OHJHT1ZIdEhYSGpIVkhyRE91N24zV0daeUhQdHMrMzdiWnQKV1Mxckx2Mkt2ZStKVmZxemdYZGZSMXRVZDgwcTJxWmw3OC95cmt5eFA1aGd2elBNT0J2dU9CcHBPekhXZTJxZSsrMkM4RXlvcXo1RQpyVTd5NE5tOWRianQ2aTlNNWYvYkozN0FaOXp1dHYyWG52TjlEL051cC9XL05KYi9yUlQ4UkZHdUNNeS9LbXkvS1V4UDVicG5HdEdXCjV0djdnc3NqbE9PTHdzWnBWdTA0clg2YTA3d29QSElIYTVnWGdvRktoaG0xU1VaRGxGRVpZcFJHbU5YUjNyT2hXeDhFcjlaN09zdWMKTitIZCtnU2pQdEJiNys2dTlYUTNoR25OQ2VHcFpMdmtpVWkzS2J1NklXKzl4ei94ZzdMbWUzSERzTEE2UUsvejlvS0JHa2NGSjMvdQpQN2xrUFA1WWYrSys1dGlpdkdWTUFJSTVQaTQrczZCdW5wTWR2YWNCeWpST0FJQkV4eEw4Y3pQeUl3dXlrL1B5czZQWXNRblo2V254CmlUbEo2MjNOdVR1S0t3djhTeU9zNWpDM2RVTFVQQzVvblpVZFgxQTJEdk5iRW9JR0grTllpTnMwaVRYR21LMVJWa09VVXpPTTFVeGcKUjZjNW56MVJXcDcyUWJKZnVQSUhQTWQvRGxoLzFjSmIyek9kODFkanp1elA5S2xzdnc2a1pVaGxmYXBQNWZoMUlHZkdYL3YyU1EwWgpucW9nL1E0YTZZSFFrbWRpckFqb3N5M1RiOG4wRzdLQmRTbGFCalNJRFVTRWhwREFHQlpxWTBMSnNJZzlLMkhlVTNiL3JPbjVTVVAvCnFZL3pENjNnUngyOGFKVC9xRmYrcURjOHNoQVpIMXNoMHhNYmtlR0pOVDM5WTB0Mkx6eGduOUpIZXZZYjlYbGhCQ2lMT0xzalBYZ3AKN3FUS0dNaDVQcUx6cU85M2t6M1U1RXo2UUoxSy9FQ0IvU0xQbVFpNGsxVWFkRUE1c3JRUWVnajNjSDZVRWZOZjBPNk0yQTlTMW4wSgp4UDVCVHNUN1hrbkV2YWZnM2xOQm5MdEtDSzBNZ2R2ZnF4amZxeWgzbFIyTGl1dno4dTltcFZkbVpPOU9TOStlbEw0eEpyNllGSitOCkNrLzR1VWM5ckdOMjVuRW4rN2lUMitwZ04xanA5VlptZzVNRE5tcU9DQnFqZ3FhWXNHbFExREFvcmsrSTYvRGdub2FZQUJVVjFVZUUKTlJGQlpaQmJFZUJWMjJoVlZpcWFQb08zTmxxMWkxbm41VFQ0MGVCUVE0eDNmSkI5YnBqMStnZ2JYdnlVdUNod0p6bklMQW14eWlKbwppQWk5NnJQVFNDWUt5ZENkYityT00zUWVCQURwMnc3Yk92RTlMZ3pTSUt0NFJJQWFFNUhITWZJazJwdENoQzdzaFZjMGdUWTJvUlBYCkFxeERMdXBCZTNlZUV3Y1FQQi9GdWZsSmZ2Nnc0UEFRdnpnbUtJcndDc05jZE14amtJTk9CUEF5Q3p3TXRMckRDUy95R1lDaEl2L3UKS3BHRGJ1YWZXRk45N0dsdGRweVpGK0xPNmpMaXpmV25KNXdiZ0lBN0dZbm5qVVNTQlZONjBua0xKRnV3eWhkdGtPSzJQVDNsSFVkRwpmWGVja1BhdUs2TytleTdkZlEra3Z1ZFMzbmRJNzlzNWQ0M2QwK3BUaytyNk1YVFdIT2loSUM0RC9aQmpjclM1L2FVQXd2VkRQV2lnCkhOQjNIelQxN0FJb0trQUg5OFV4ZE5CT1lPL3lZUUZKdW9IUU5lRnhBeEVNSWdCVW5BVWdvRTlSUWdFR0F2MlFCdEhwUkVVZTdGVVQKSFFEMDE3N3V2L1IxL0ZYYlRuemV3MEVlMm9XZVJOZTNSNmNRRFlyelEzejRINGFHcHF3SVFLQ2NBaHhBUlQ0QkFBajBBL2ZrNDVmMQp3R01TSGJTZ0l4QUJRSDlWdHYwdjZiVi8xOXhFRjRmM01RQkErZUFZSHhPdDdRZVNHeWw1RmdvWUdRSEl5U0FBaEZiUjR3QkNaMHdECmdJWkZwRGdQL2EwOUFNSHR3LzZlNGdCYVN3UUFPaDdydWpxTFhRd3hLenhNdE40RlgvS3l1OFVBMy9VTmtuZytCUllSb24wRUxtYSsKalhiWVFnRUFIZEsvQUtCOE53SlFhVWhjRStPZUdlZDllRnQ4YXBiKzNpanR3blRIbGRqVnQ1SnRaK0pkYUExUWxGbWE1SlRGV1dWKworQmxEQXpCbGNVWjE0Tm9GNitjZlJtOGNqWDlYSGI5NWNad25mYUw4N0JkRjNheW9jVTdYT0tXcm5sYVdqY3NyaHVXbG80Skt3TWVNCmlwZ0ZLeDJSbGd3S0N0R0FGcU5xVkFvQUtwdFJGU2V4c3FTNGNrUldEby9IOTBlZ0krU2phQ2RYK1pDa2NraGFtUkFCZ0FxZGxBUGEKV3dkVnV3Q3FHTVhJVThMU2NUVEpWZWlpRmxwNnloMk1VaWNOQUZRU29KVUVCY1dEM09JNHMyRU1xeGdSbGN4SXF4ZWxweGJGYjMwdgpmdThmMHZkdjgzc2ZhZzA3RHV1bXhiNXRNZjFxY2o1MU9IZGNqbC9kOW1jZTIyOSsrMytHYlA4WmdldzdmdnVHeDducXRTMjV0RDhaClpULzJpMzh4aUI0WnNaOEdia3lJUHg0VnZ6TW12akloK21TQ3dYNGdOdjAySVA2UnoxNmdtcmY3K1hmcC9IdFV5MU8xOVZlTjVDZUcKWXBsdmVhWjAvTjlxMDI5eTQvK2pWZjdYd0swSDJKdGo3V2RteFZEekNMdHhoSFY2VVg3cWpxSmxWdFEwSzY0ZDRUVEc2YTFSUmt1TQpVeE5sMXdVcDUzdzNQdkpkUFdydnJEUjhXKzNxYkFyU21semRMWFpLazZ1bnlVZXJDVk0vbkdVWm5tcXR6M1E5bTMzbjdvcE8vYUJ1CnZTZXZuZUJYeCtqMW9aNmFFS1Z4Z25mcVlmL3BGZVB4cGY1ajk1V3RBS0FKNFpFeFFldTQ4T1M4c25FU2E1cVhuWnlHTzdIV0VXRnIKbEhONkhHdWRsWnlZazUwZEVwNGNrWnhCeTMxRXg2WVZyODlKMzV0a3Z4R25IZkd6VGs0SVQwMWhwK2VrcDJZbFI0ZjV4d2U1RFk3TwpKbHRIMHpDN0pVWnJEZmEyUk9rdFk2TG1NYzRiczB6NnBnNHM0bnltVi80aWtQL0VjLzFtZ0hmZC8ybEVOMzR6NWV4RjlEd3ZIVDFFCmxwMEIxSy85T1RNLzFmMXVwaDF0V3Yyb0xaUmxzOSs4b2JPc0QwRFc3NDIydXdiM0hhUHZlNHYzUjV2OWdkMjA1RFJzZXRYcnpyNTEKcDNiTjJiL2lHRmgyR0orZ1FSM3JFMmU2ZnZZRFVEcDZCdExLNWs1MnVpZW1uQkZUV3RsbExlWFpMUjA5TDR6MFpMSG1ENWJ0bm16OQpRSC9RUFpEd0o2a1FMZmZKcVo5ZEFLRlJueGNCOUh3eEVBNGcxbjBaRWVkN0JmdWVuSWgxVjBIRXZDTm4zNUhCRGNaZEJlMnVvdWVPCnN2TzI4dGFpOHNhOC9QcTg2dHFjOHR0cDVUZFRxcXVUNmk5SDFYOVB5ajhabEw4YkVrTnZoN0RMUHNFNU4rZTBrM1hHeFQ3ajVSOFAKODQ1SCtkRFJxS0ExSm1pSjhWdWlRaUJSWTVTM1d4elpDTjdXUmhHREFFRGdIdEJQdVkxYTRhUlhlbG5WZms1TmtGY2RFYlVrUmFlRwplQmRIZUpmaFJ6WEtxUERSS2tPQ3NpQUg2U2ZLcndqelNyeHNBRkNSc2J0d29KTTAwRldvNjhqWHRSZm8yNHRzWGNVK0dqbkNLSTZ6ClNNTjhDQXhFR2hXU3hrVlEwY1J1aGVOQ3FHZ01RMnN3NEFrb3dBQUFIWEpRQUVENTNsMEFGU2I0WUNBQUVGcDhIZVVUQUVMWCtnaXcKaTN3c0hFQTB3a0NGSGphODhBWURFUnVsLzhTZDZvZDQwd01aOFdmMHFRU3pobFNpV1dOMjJKeEpNbWRPUmVDR1NENW5neFR6OXB3cApGeHlRYXRFSnFXKzdJTTFpWm4yMzNaRDJqaWNqM1YwdjFIL0hvNy9uRzdqckJRemhCbklKN3BvWmM3cUwwMzFISmhUbFkzSjA4RXdDCjZRY3Fpa2dKQUJYNkpXQ2dkQUNoa1JWOEN1eWdvZmZRUVBkckExMEhqQUFDR3JvcVFsU0FWZ0duQWVpd2l3Ti9IWDBFUHpJUWZFeFUKbW9GU0crT2ZHd2dmK0lHM2hmZ0ZVd245NUVja2hXN0JRVE1EQVVqYkNRQjZSZGR4eU54YjZHQ2l5U3djUU1RWmpBaEFBUjVhc0l3RApxTURCTG5KeGdUdGdvRUw4YXZad0E5eVQ1MkJCNEI1MDVSYzNHMEtITEp0N1h1M3IvTFA4NXY4bCtlN2ZWTGZReVVBZVpsNlFCbnpKCjk3RFFMa0U5K3ZlQ2dRQWl3SkY4QngwQWxJOG0ydGp3blZTSUE2Z29LUUNVNER1a0dJVitSbEdBQ1RmUUlGQ1FTdmF4U1g0Mk9VUnIKREhWOE9NNC9GMktXdXhsd0p3UTJJdU9yNGNnSlVmSHV5VGNJUU1BSWRJQ0VGeTI3THJSVG9ZTUQ3VkNCb3dkZG1oRUhVSUdudDh4RgpoZit3NURDbk1kaDFhWlIrY3FUelNxTHIzWm11VHhMWDNvNWZQeC90YVBaMTF3VjdHNktNNWdqdGlMZTNSdDlXb2IzZUVxYzNCNjYvCmJ2djh2ZEIzcDJMWFRpVTZ2MWhRR0ZiNk94NXB6c3hMVytkVVRUT2EyaWtsdXJMVk1FWWU1bFZNU0FCQWFFeG9YRkVPQUlyejRWOUgKOHRETGg3Q2FoYjd5V1dWaFhGQWFGMVdQeUlFNzVBQy9PSWhPZVNmRkJmRGdta2xWOVppc1lnZ2pCWG9MSE4wSCsyNGVWTFc5cXJ4NQowTlJWUGlJaVR3Z0FRT1hEd254SHoyRjlaNG1WU3JiM2t0MVVzcDhLTkNURjJLVUpkdDJJc0dwTVhENG5iWndUdmZlalNySnBWdjVxCms2N3IrN2ZOam1kMjY2WUI5RFB3bThHK1pYUnNtMUJiRnVlMkhjOEpCVFlkL2pWSFpOMlYzUEFPYnZxaVc3N0lVMy9ncVMrNkhmVnQKaER4UEUvYWR1SFU3YkY1MWU5YWRnUTI3YThOcVdkS0hmbk1iSDZrTkQxWHVMUVBVLzR0RXN5eTEvcXExLzlabjJKWWJucWsxdjJsNwpIdkEvR0wxeFlsSndmbEhlaEJZeTAwL2VWWnk0cjZtZnc1cnZLbHJHZVEweDZwRW83ZGdRcnk3Q3J2RjJudlhmZWovNDNRbHpaMFhmCjFXcGJXNk8zcDhiU1htdHVyM04wMS91b2RkSE83aDlrMW0ydGFVTXQyVEM4LzRQeXpELzZUdHlSSDVrVE5RNHhHOE05TmI2TytpSEcKNlo4MHJ5OFpUai9VSGYrNUR3eDBaRTRDQm1vWkU1eWFremRQaVZ0bXBLZW1aSzBUNG1OSlFhdVBmalRHUGpvSnVKR2ZUUXJPREdJWApoZ1JuUjRFN3NyOU5peitaWUwyZlpKd0xjVStQOEM3TVNNNkJnY2FGcDRmNTV3YTVqZWEyQnQyMVk2UGNVMGw2aTdldEpkTFRPc3crCmxxQmNYV1QzNy9UYmQvU2UvN1JvSGtwa1AvTGR2NWtoMXpNVFpIOW16Rm42U005K296Njc5TUV6UHRYbnpMWmx6Smw5MjVUZTgvczMKN1pCancwSGtXbmNST2RaQncyN25pc3V6NG5ZdnUreExvQnk3ZWNtT0Z1aXN1QzNMTGtDUDlSR2F6TExoWll6MFpJem9wSFBuNWVtZQo1Szd2Q1ZyV2s2T3NNWjdka1o2c0JUMUU2ZWhSUE5LbHlwYk55MzJUWFlaNGlDUy9xSWoycGM5UGlsVENmOGhUN2FNZjVKNVVMNG9uClBSbnpleWtSN2U3enFIZGtVTzl0S1JIYzdya3I2N2tqcDl4V2RDOHFPeGNVRUdWZTBUMG43NXBWZE0yb3VtYlVuZE9hOWdsTjI3aTYKYmJ6dnhyam0rcGo2MnhIVlYwUHlMNU95ejVNSzZOMmtCSHA3U1BKV1V2em1rUFJ2U2NubGhQaENBanVWRko5TVlDY0dSY2NUb21PRApJckJSTTJBb3pHbXdNZXJzNkxydTFaQ0hWUlBnMW9VRmRURlJRMVIwTEluQks1RExZNkkzSnNRbjQ5eGFQN3orNUZhR2VWWDR6QnE4CkxRL3dTcHlNWW5OUGtiNnJURWNwMVhZV2F6dUs5WjJsdHQ1U1A2TTB5aUVQc291SCtPUmhBUW9BaEZjMEprUVhrUndURWJlTDBPWHUKaFdpSGlvK082QU8vVVYyOUFDQjRzVm9VNDZMVGFIRURFUUFxaXZBQVFDaDRDdk1qQUJVNTZZVU9HcnplQmdEQkMyOHdFRm9sNG1YLwppVGRsSU9KUEc5TVRUbHVJUkRQVzlLUXp0b3hrczNaSVB1ZklTREh2aEpSekxpTFZ2RHM5NVlLTFNMWG9odFMzUFVUYWhlZnBGcjJwCnRIZDhxWFIzL2FrR2J2djBkN3dRU0lnd2tQU09qVGR2ZkhkYWQzSk1EazlPSlNNS1VsSmVFbGVnRWFDd0pDZUE4dXdjZEE0UUFNalEKbTZmdlBkamZkVURYQ1N4QWMwTUJEcnJFZWd3L0dUa3NPT3hId3o5b0FNYUw1WHV4ZEFPUnduSW90U1k2NDNBZ29BOEtkMDlCVkVxSwpvcE9wMFdKcUR3OUE4NXErNXhWZDF5c2FmQVRJUUNtd000QTdhUEVOMm4rT244VThLRVk3OXh6NEFtMHpQZC9LTExDeER0dVkrWFlXCllLalFpYjUrdEhQTndVSnJtVDBjdEtIZGhSWi9JUUFaZS82cWJ2OFAyYTMvSmI3K3Y1UTNEMWlwYUI0MHlNaUg3d3kwQ1l2NmFuL24KYTlxT2d3T2RoMHhkaDYxVU1CRENzZ2QvUUlnRDMxNkZnendRQ2VnYmNkdEhKd0FFYncvNzZXaTltNGRaN0dXUlFyUUtYL3VsUWZhSgpBS3NNVGZTQWdaakZBVlp4aUYwYzVhS2pFWWZ3SFU4akNqU0xsSkNRb3lJRUlEdTF3TlpMc2xFUDliZERoZlllZUh3SlB0ZFc1T210CmNGS0xncUtLQ090U2duYmpKL25ObnlXM1pwblg3OURhSjI3UkZpbk0rMExLUFVuSFBWbjdYYXo3cnBoMlcwYVpsSFNPeXRvWDVCMkwKR0hXSzFURk11VFpKWmZ5b1ZEMHdPMVlNb2lYREo5K3JUczNLbXFaazlkT0txbkVKV3FZenhLMll3R3BtVk5WVENFQVZ3MUp5akZjVQpvSlBjdldVSlBnQ29jbFpWR0VXTXF4b1VvM1BEM095eUlLOWlFS3NhbGRkT3FXc21GV1ZKVVdHWURhWXBzSFVkVk44NHBHdzdvTHdGCi95WEJQU1ZqZ3JJeFljV1E4TEN0Ry81MXhVWktpYlduMk5WYjRxUENMd1YwaEdPQ1U1M2tWMDlJcXhma3B4ZkVIVXRHNTZiTi84emoKM25iNGRweitweTdnRGpESS9yK2QvdDhjVU9CWFoyREhFZGh4QmJlY0lXalQ3ZnZONDMzcThtKzdnMXZ1NElZckFQZHN1ajJicnRoYQpJTFlSVEd5SEJyZjhpZTNBNEZZUWdqdmp6eUxScDZIa2YwV0RXNTRJT09sWGYveTNvSC9EN3RteWc0cUN6eHpnSWRkVGsvMDNxM3ExCm4vRzk2Sk1GMlZjL2FOK1pGcDRkWXI2eElMbTBJRDQ2eGp3eHlUczJ5bTRNZDdaR3VvOG5XUFVoYWtPZysyS2M4bEd5czhWd282enYKeXpwM1IxT1FWbTYrVVc2Nlh1UHRhWWl5WGgvdDdWc3p1WFlNcHZXK2dTM2IzMzlRdHQ2VHRjeUtqczloeDRlNXJVRnFrN2U3TmNHNgorSVAyclNYTDVZZW0wNDhHVHY2aVBYcEgxandsQWdDZFhWU2RuSldkbkZXY0dCTWZIeGNmaS9OYUhUMnRQdXFKQ2V6Y2pQemNJUDlzClFueHhTSEIrVEhSbVN2NjNLZUZIbzlRcnNaNnpmdWFacE9EQ3BPemtzQUE2UHlxRlgvSE41czRqL1IxSGsrd1RjV2E5KzlhUmFPL3gKRWRiRllRYnpGN243cWRHeXJ2UCtadFU5a3N0L0VIaWVXU0RuRHRBejB6ZXBBRXlwSEU4TmFSbnRPNGFNYk50NjY0NHBaL0QvZlo4YwpxVnhiemxTZWRmZGVYdmVhQi9LdStpREhpc3U2NGpTdk9DRExxdE95N0xBK3R0a2VXaDJQN1pEOWtjM3l5R3ArYUVtMTcwalBFMU9xCi9zZkdWTnA5Nm50a3lGbjJXQTVSeHBLZG5MalpML2xEN2ZPeTZQTUhBYlNmZUZLSmYxWkN1ZldUQnFCMC9RalJNRStHZTZSN0lmcHcKZjVCeVg5UVA4M3Z4WHNnOWpIc1MrbDBwMUhOWFFrUzVJNmJja1VMZHR5VlExNTI5Ymt1N0Z5RjV6NEtjTWk5cld4RGRtaGZlbWhmZApuTU51elVsdnprcHV6RWl2VDBzNkp1V29DVVg3cEtKdFFuNXpRa24wN2FRS0lvYUx2cHBVZnptaCtueEMrZG00OHYxSjFaVnh4YnRqCjhyZEhwRzhNU1pHS1lzTFhJL3pUVHRZSkovTzRpOW5xWnJiNFdFY0NuSllRdHlYQ2F3a0xUc1pFNTVQQ3QwYXhkOFlsOEpQWTdHUFYKZVZrMUlVNWRoRmNieFFlUWdyeEtGNlBFM0Z1czc2N1E5WlJydThCQVpFTlhxYk8zTE1RcUhlU1VEdlB3UzNud3lrYjRFUHhhUmp0SQo4RXBIQmZCdThRaHVJL3hDSDBVK1JvR3pGOHAzVTlIU2dpQ0xoRCsvZ0lFZzBBOENFSzRmWWdxTUdBRUNBQkdSY0FDaHlRY2ZCd3owCkorR1VPVDBSaUFjUG0zYWtKNTV4RXNtbWRwTlB1M0ttbUhHbnA1bnpadFEzNzRNSUJxa1hQRVNhUlMrUmJ2NTUvUXUrNTkzMnB4cTQKRTBpbHYrT0hETGVSaE1CQWZYYzk4anRPOGFMbDA5bUIxOGNVZGFPeTBqRUZPYWtnNHdBcXlnSlFnVWVRNytRQmdBQVRoMHdJUUljRwplZzdxY0JEMGQ2R0RMLzNzL0JDUDJBbUZqdHZ4N1Y0OXZzQWpnb0JCUmJpQmlnSlNVaENOQTZVYmlCemZCUkNlckRnaEw0cExpNkppCm9zS1E2TENmWCtnRXg5RFJxaU5kNXl1YU5qRFFBWDBQNENiZnowVUxrUEdEbU5HcDVIRXgzSFBRUmtOZmtxbVhDSHlHTDk4QnNxQ3QKKy9CUEtIQXdTVzVPc1ljTC81dlJjUXNBQzNNUGlPb3ZpbHYvSWI3eGI1SWIvNFlEQ0cwRkRPd0M2TENWZGtEWERaLzZOVjM3SVgxWApucWtIR2NpQnJtcCsyTWNzd0gwTjMxNEFJSFJ1VUlBQkFJSnZRUWdBaEdPSVJuTFR3RUJvdGJLN3N6VkliL0xReVE0cUFLakV4eXdOCnNBRTBhRllyemk4ZEVwV05vYXVVQUlES2tsSjBXS0tQblcvcnpUTjNGMXE2RCtyYWdBaEZWZ281eUVaWGloZ1VrTHpVU2hldDFNdHMKR3FSL044VVJyQ2pseTByUlhUYnZQbHN3VCtsL3dMT3NxUzFyQnVQcWdHRlpiVnhTQTNIc2owMitGWmRwMld6Wk1OdFc5SW83Zk5uMwptSDNkNGx1MnVSNGI5Q3ZXN29mNnN6UGloZ2xKdzVTaWRsSldOaTRvRytGVlRXRFYwL0xxYVdYVnVLSjhDQ3VMOGNsQitNL1lXeExuCm9tc1Z6V2tRNEx5TTBnQzMwTXNzOGJJckk4SzZZWG50T09KMXhiQVlmdndPKzZsZ0d2amlEeXB2SGxhMkhWVGNPbXlrVkF5aC9WL2wKNDZMS1lWR0JqWktuUSt1VHlCWktpYXVYN08ydENIQkt3b3pLUVU1VmdsYzNJMnU4clhqM25reU90czlZQXB1dXdMb3p1T0VPYlh0OQoyNzdncjBISXYrUHg3M2dEMjk3d2ppKzY0NDl0STlhQWI0STd2c2hPTUxvZGpHNEY0cHNBblhCaU81SjRHZ3R1QmtLYm51QzZQYnhtCmphdzc0UEd4blVqczZXQmtJeGpkREVGd1kzQW5HdHNPRGo0TngzZENpYTE0Y2p1ZTNJbkM3UmowYXpqME5Palo5RGczL083dHNHbkYKclg1b1VTL2JWY3RPNFFNVDd5Zjl6ZnY5WDg5SnJzNUtQcDhVdnhQanZCMW1mUmFuZnhucnZHUnVQNmIvN3F5WGNqYlEyMks2MGF5Lwpkc1RSZnRSSGVTTjZVLzlFNzkweTI3ZE41cWVlTCs3TGo5emxuN2lOVnUyY0dCY2NpN0JhQXJRalNlNlplOXFMajYxbmZ6YWMrYm52CjdFL2FVM2NVclZQQ0kyTzhDNHZxczdQeTA1T1MwNlBpMDJPUzAxSGVDV3RQcTZQN3pCaDJma3AyTnN3K0hSZWRIK0s5UGlFNk42ZDQKYzA3OHlTVDl2VVRQK1FqNzdKRGsvTGp5MktEdzFMRGswcmo2OVpqNGlKRnl6RUE1UGlROEVlTTAreWpIQjlrbmgzbFhaakhwbXNXeApwamV2OVh1ZTJmb2ZxMlQzaFk1dGsvdFhxMzNMaU1yU0ROSHVzQnllYzhlY3lyVmpjMjViTXdMT2VqWnNPZk51dUhLV0JoMjNkOE9UCnlyZnU4SzA3dldzT3lMUGloTnpMRHNqN0NMN1ZiYlluVnZPUzFiSnNzNjdZSGN0MjV4TWJXb244eEc1OVlpZG11SXhMTnNPU3piaHMKL3lQUXlXWk5kdXBIK3B4bEUrZVBRMmMvOU1nZTlEMHZTelk1ZmJOZk9kR1RYdnBJVHpaM25nLzgvQ2dqeWtVZkZFRWZpUE1pZllpbAp6WXo3VXZyM0VnZ2Y3NUZBOE5JT2d0ZDFlTktVZXpwM2szWXVTcm9XSkozejRtNjhHN2NGMXhmNTF4WUVxSGtoSHZiZG5PakdGSFo5ClVvUW5Kcm8yZ1gwN0xyNHhLWWR1VGltZ0c1Tks2TnFrNHRvRXFFanp6WlFHVlBUMWhPckxDWUNSK3ZNeDVXZWppazhHNVIvSFpSL0UKcE8vR3hHL0h4Ry9Hc0wvRnNjdUQyUG1FNUc5SnlWdkQyUHVqa2cvSFpXOE9pYzZGZVNkRHZOWWc5MGlZZHlUS0J5UTFCYmoxTGthVgptVkpwNkt6VzkxYnB1OHY3TzB2TlhXV3Vudkl3czN5SVd6N0toMStEVUdXU1Y1N2tvY3Q2RE9PTkNpcEdCSEFEYkZTYTVKY084dEJ3CmtZOVo1S0xDeTJONGdpankwWXBEVExnVGZsZVRCL0ZpUEhpNlFhKzZBeXlTbndrUEpubm82Qm5LU1NVNTBhNmFZamNUVFZuNHVQRHkKdTlERC9wTncwcEpLTkdWTkpabHlwQ2VkZGhMdEJ5RGxpNmxtM0VUcVdVOU9BMlVBS0dXZ2RBQzl3S0EwQUwzQW9FVy8valppRUFCbwo0STVmZThlanVPMlVMdHEvblRPOE1hNW9ISkdValNwS2hwUXBBQUZRY2dJbzM4ck1NOUZBUDRkMGxBUGFqbGNCQk5xT1BEMGx6OHZLCkQzS0ozZUFGUVFRZ05QSGtZQmU0aEtnOUF3R0EwZzJVZmpnUWNZbU00cmlVUENpRFNERUpLU0tHQ29MQ1BCL3ZvS1VuejlKN3lFZ0IKQUwzYTEvNXFYeWNnak9UZ0ZQcWVBd2hka3lXR1RpSi8xZHdEWDlKaEEzcDdhS0FiWkVOMDJFek5zOUx5N1F6Z1ZKR0xYZVJHRjhQTApkOUNKOVQzd2dEL0wyd0JBL3k2OStlL0tkZ0FRZkhCOEpvc0ZXaXF3TWcvMlUxNVJ0Yi9XMTU0MzBIWEkxSlZub1JBQVFqT3NRSUVvCmw1d1FnSUdJNFIrZ0QzeExFUVlpUm9QSWJqcDhWeDMyMHd1OTFCb1ByZHBKSTltN1V3QXFDWEVBRUFTQUtrWWxhQmxOVWxxZUVGY00KWWtDS0FqczEzOVFKZ1E4UUVRZ0FKVVhvdUdRUHRkcEZid3l5TGszeHNCL2tpbVc1NlpFQ3NxNXJIVStVcHRVK3g0YlZ2bTZISEd0Rwp5TFBoY0N3NzNhdm90bjNEQkEwODB1Z2VxSnpySnJqVDg5RHNXbmNKbHEwWFpqQUFVTk9rcW5GQ1hqVWhxaGpoVjQ5ak5aT3lta2tGCk1abFZIdWVWaDludzJja3hUdTJzc241ZVhSNFh3STlRc1F0UnJ5b3NyQjJVMUF4TEtvZkZaUWxoU1p4ZkVtRURtTkFwcUZiS1llV3QKQW1YbllVVkh2b0ZTbGNRcXhvU1Y0NkxhRVhHUm96ZGYxMDRhNkNLYnVrc2NQV1JQVDFXQVZSNWtWTWNSZ0dwbjVTMTNwRmQvVXR0MgpYTzV0TjFMT2xqZThIUWp1QlB6YndkQldFTEFDTjZBQS9pNjZaeXNFNG9FQ0cvN3dkZ2dDOFlRM3cxQm9BM0FUOWowTmhKNEZBanV1CjZETjM1S2tuOU5UdjNmUjd0c0pBbjloV0dENGdCRGZDNndFSVlXZzlIbHVOd3R2a1pueHdQUnBiRHc5dVJxRUVQb0FFQVpVQVJtZ0EKNmJjWWZCbStuWVIzTytKN0duRnZSaXpMRWR0eTFMTVdjajl4dXBZanVnZnV2aVdmNHBGTGVNZkluZFhScHRTVUtSVzhxUFZzdWtKYgpUdSsydzdMajdQaEo5YzV0d1R1TDRqT3pndE1qbk9NQnloRmZkMk9jZm54QmV2R3grY0lUOC9sN3FrdmZhNGpOWEVkSHVKZm1GZWNtCkpDY1N2TmZIWmVjbjVPY2ovTE9XM3BPV3J2T2o0b3ZqMGxNKytzbW80SHlDZTJGY2RINU8rZlljOXVrRTljT2huc3R4N3Q5R0pHOVAKS2M4bHNjdmppbmNtMVpjaTJBbFR6MmxUNzhVcCtjVWh3ZWtBOVV5VWRUWXArT3kyV3IzamNXNVo0TnZHODlSdVhOSXA3b3R0NjBhNApCM0lCWC9BYjJYbTIwT0JaZHQ0dFZ5clBwak1WMERabjZiaEpMeDFBa0h2TlJlUmRzMEtlVll0ejFRcG9obXpMS1A4anUrK3hIUXhrCmZXd3hQemFibmxpTThQYVJpYmloZjd3TEhjUWFmQ29xSFQyNlI0WlV6NGR3SHVyVFM4ZU42dUZBS3VXRC9weGxVeVliTkgrOEYranoKTHdCb3YvRWVOT1R6a3lLOS9mV0Q5bmJ0N3ZENlVaNHF3ejA0ZlNSNHUvcmh2RERxSXliY2s2R2YzdHZpL1FFa2hUcHVTem9XeEIyTApXTWU4aUtodFhuaHJUckRickxCdFRnUnZJVERRWHVKcnM2anZaaVRRdFFuSjlVbnBiaE95VkRmR0ZkZkg1TkMxY2ZuMUNkV05TVFdvCjZMdHg1YlV4emJkamF1anFtUHJyVWRWWFk2Z3Z4bFVmVDZnL0hsZDhPaTcvKzVqMHMzSFpKMk95OTRjbDd3M0wza2hLM3RpYlZyc1EKdzg0R2VDZGR6Qk4yV3F1TjBXS2hOVm9vRGZhZWVpKzlJY3FxVDNKclJ6am9ITVZCZm0yY0I5VU1JZ3lob2ZFa3YyWklVSVV1YzRiRAphSkJmSHVXV0JaZ2xIclNTa3V5bmwrQW5zSlJGT09pWGRwd0hEQ3FMOE9BWkI1MDI0bVdnNXlBUGVub3FjZElnK0FWT0J2MTRXUEFpCk5tV2dQMkVUTmlMeHBEMDl5UVJLT3VuSUtBV2diQVBsSEFkU3pucFNxZWE4cVRSekxxaHYzcDJ6OUltdzlPbXcvdHUrckhBTTRRd0MKQVBYZDlpcHV1NlVMenJaNTQ1VngxWkVSR2J5c0x4MVdsU1pVNUtoeWQ1WXFKTnNQUUhuOVBYbDkzUWMxN2ErcGJxR2orUWE2RDNtWQorWDVPVVZpSXJwTVY1QmQ0OGVFZkd5dmZLU0FNVk9SQkFDTDVKY1VCS1pTYUMwczNVRHFBeURGMFFUaDBlWWVBTU0vRGZjV0FEZ0JFCkFPcnZBSGk5cHUwNlpLUVdPOUVxTFZKWWlDN0NRbHlaSllybHVaaXY2THVJYTlIQld6UkFCUWJxNzNwdG9Bc05DT0VBQXYyUVBBaEEKeElLdkFpZSt3MHZmaXdQbzFsK2s3UWhBSmlxK3k1MVZGR0NUUGR4aUd4disxUUFnTUI4QUNHMFhSQ3VCZW9rWlZnQlFjWXhYa3VRRApnUEtEYU5xTEFCREt6eVRHZ1VxOXpHSVBQYy9QTEFpd3k1ek1NbXN2QXBDYld1S2psK0o3QWNoaFZuR2NVem9rcUJqRktrZVY1VU1TCkFGQmxRbHdlNGdQTUN5M2RSWlp1ME05aGJSc1lBcjUzQVVESUZoNWFqWnRSNjZaZG11RDNQelRvTm5UK1piMTMwKzdldExuV0xMWU4KaTJQVDdWanhPTmVjcm5XN2M5M2kzSEJiVjcyT05UTzhubmF0MmoyYkh0ZW14NzNoOW0xN1hQQTg5TVRsWGZWSWw2Mlg1ckRHYVhuVApXRi9UaUx4NlVsdzFLcWdlRndHQWFxZVVCSUFxWXJ5S0NBdU1BaThzcXFaa2pYUHFtcVFJZm9ySURpcjhTeXZqV0hVQ0E5ekFWd2d3CmdnZFhScm1WWVU2cGwwNkcvMjZxdG1KVmQ3Nmk0N0MrR3oxc1RGdzFKcW9mazVhNUdZVURuU1VEM1NWR0JLQlNkMCtWajFrWll0YkUKT2ZBVFhqK3ZiTGt0N25qWTUxKzNXTGJzamcyN2Q5TUpYN1libnBKMzBKUldHSjRMdDd5UWJ4TnkrN2M4RURnSkFsVUVudnE4TzM3UAp0cy83YXlEd0RGQVNnZ0xiL3ZDdklYaHdZTWNEUlg4TEFhY2l6NkxnS2lpeUV5UnVSSjlHQUUvd05yb05lQXBHdDZPeG5WaGtLd0tFCmltK0dvdXVCNEpZbnVPa0xiZm54a0wyUWZqYjlzZVZBZk5VYlcvZEUxdnlSNVhCMEpSWmZDVVdYM1VPcjRmQktJTFFWRHF5SHd1dmgKeEVZc3VoWU5yVWRkMi83QXMxQnN3eDlkYzN1ZWVvM2JMdVVUaStpSm1iNXNvUDFEMnpHTlhac1FmanJCZjI5Qi9ORlBmZS8vUS8zKwovZjRQZjlSZnVhZTlNQ2s1bWVTK05hZThPQ0UrRmVkZW1sQmNHcE5mQ0hBdldLaG5MTjF2ak12K05pay82MmVlRHd2L05zaDdZd3k3ClBDTi9mMWIwK1JqbDc0UGQ3OFE0YjhVWkg0d0wvcFpndlQzQ3V6TEVlenZFdkd6dGZOUFU4Y1lJKzkxQnhodnVqc3RleXRzSjNsZHoKY3VIRGZ1T0sxcmxwYzI4N2JHdG0zUzhhKzdyRnRXV0hkeUg0UDVJei83b25aNEVOTDVSOXYyL05uYk9VYkxKeXBJTHY2bFRnSHNpKwpZckd2V0MwckZzaThZak10VzYxTFp2dVNCYkkrTnBrZkc4M0xadE15T21uUThBVHBCd0hvMFM1MHNrZHhYb0RPM29FNis2VjhxRTB2CjB5V3AwczdVZWJIbjI4Ny9VRmtmV2ZxTEJzcW1EMUUyY1hLMnIzditJZDh0QjMyZUF5aWRQamtCdEtjZjVCNGk5aDU5R1Bjd1ZOYlkKRDU0TW4vbmFiWGZ5YTFFTWRTNUtpSkIrRnJIMjNaa3ZZZHVNOE5hMGdBaHV0ODFndDZaRk42ZUVYMDBMdjVrUjdUWXQvcGJRejZ6MApXN2dOVFVtL201WkIxeWIzbXBCOE95NytaZ3oxN2JqazZvVHM2M0VwOU1VSTl1V29HUHBxVFBMTm1EVFZWMVBLcnljVVgrR1BnYjVDCnlUOGZsMzArcHZ6N21PS1RVZmxIWS9JUFJ1UWZKS1h2eGJBckVlRmJJZXlOZ1BDeW4zc3B3THNZNFoxUDhNNG1lYWVHZU1lSHNHTkoKMFpHa3NDVWhRRWQ4SlhhclMvSnJFN3ZqUTBoRmNYNWxrRjNwWjZMRlExQ1FDUzlXUVVYb2x6WmVaWmhYSG9UZnhzeFNGM0pQbVlzTwpWVGgzRFlRd3RBY2dQTzZmeE9PT1ZKSUpaeXJaaEQyVmZOS1JLalVVOUh4TWFNWUZaZE5udHpsWFJzcDVOMFFBS0p0QjZvWG5hUlk5CnFkTFhBNlVEU0hzN21ENGdwTG5qbFMrNkFFQ1VSY3NIRTZwam85THFDV1haaUxvc3FTNkpxVElBVk9RVHBRQlVrQWFnQStvMkFrREEKaTROdUJnQUluWW1NQXlqZncwYkRQelpXb1VOQUdLalFMU0o1WHdBUVlhRGl5QXNuUkpOaUV0QlBTUndCQ0JXUkVBRDZ5OEN0UStidQpQRlBQb2Y1T05QTFUxd2xlSVRuUXBlWUFRT2k4bkNFWlJJcUlEdG5wZjlhMUEzMEtqTDBJUUxwT0FrQlF2ckgzb0xrWEFJVG12N3djCll2NExYL2RPeTdOUUR4dW9mMUcwLzFuU0JnRDZOMFhiYThaZS9LaERkREVYQUJEWnpqazgwUHNhd0VpOUM2QThjemZhRCsvY0ExQ2MKQXdBaXgva0ZPSUIyQnhVOWRIUUREQlJnbHZ2WkFHMEFVRkZFVU94a2xWaDdBRURGYUtLSFJnaWRBQkI4a1BJUkVUN05KQ2tieEtvRwp4WlVSUG54SGttdzl4YlllMEU4MmdHcmRqT1lRLy93WWYrQ0JwVzlkNzEreTJsWWQ1bVdYYXpNQTR2SEE2K1psWjJEVkVWZ3p1VmYxCjhQTGFDYzg2bSs3Z21zZi8yT05mQ1FWV284R1ZjR2c5REU3eXJ3Uzh5MTdwRTh2bGVYSExuS1o1cEs4eEthK1pFRmVQOFFGQWRWUHkKdWtsbHpiaThla2lNbXdab2lQYVhWVXhJR21aVjlTT1NjZzhUZm41cWdqeUVua0ZoZVZJRVZTV0Z0UWtoT2t3c3dDckhBVlNvYWljcgpFWUFLQmhDQXFzY2wxZU5ZSTdqS3l5SVp1Z2tBbGRseEFMbnBWV0ZXZFl4ZE95d0VBRFhQaTNvZjY0TExCc3VPemI1cDlXMDVQRHRPCjJ6T2I1YW5Gc1dVSmJ0dDkyKzdkZHB5UUYzOVdkdS9Zb2h2TzZMWTdzR0gzck5yUVNxQ25YbVNqVFhkb3hUdjROQnphOEtHUnBDMVAKL05kZ2FOMGRXVVBEUzFEb3FSOGU1dDN3aEo2Q1p1Q3YrQUsvb2cvdWZlcUZmTnMrZUFCYVRMM3VESzhIMEtEUmVqaTZGaHJjaU1UWApJdEdWVUhJOU9yZ1JpRzU1OFhWSW50aFdOTG9SRDIrR0k5dSsrTElMbEFQQWdpZjEwSW83c1JhTUxmc0FVb0VOUHhnb3VSNGFYdmJCCi96aDRaR0xaRzF6M2V6WWN3VFZYZE5rWjJmUTdOcjJLTlR1MjZXQTlNWHozMEhIdGtmT0xmNWplbkphZEcrSmZXZEM4TTYyNE1DUkEKK2htUm52ZXlMNXVvNTh6ZDcwd3EzNTFSWHdweC94WVNYWW54UHh5WGZYeGI5KzA5VGU4ZFVlOGkxcmFvYTdzdG8vN1MzM1pmMmZHagp1dXQ3VGU5ZERXMWVTWnVXdC8ra1lmMnNZOTFSMHUvcTJJOGM5SWRHL3M5Sy9Zb2FNRTBNMWRpV3pkNHRGL0hmSE40RkJlWnUzWjhxCnNPWkxLNURLditwUGxWcXRuTm1xTTJmdWRUdmtXZ1AwMndqMEVFTSt0bVViWkZtMmdYdk1LdzRUbm1IVjBiZGkxSzliMEVITWdCNTAKM0k1UnYyVFVQdEhEYmYwamZYb0dkSXBQNWdCUHF2MnM4enZqTVZsSkgycjI2ZmxaTytsbHV1ZjNBSlE5dXJQZkdFOTI2Vk5kdWZXVAppWjdkOE5tdVRQcEEvQjllbVBsSzZTY2JRTHY2d1FGRUdDZ05RTVNTWnpIVXM0amhTU2dMWXFMT2VSUXgvTk1PMytFTG9oc0xmTlNpCkJMcStJTDQyanhHVFg5L09BbjBFNEo1dlp6RndEM0RubXluc20wbkp0VW5wOVNuWjF6TmlQQ24welRRa3V6b2xoUUJKVjZjazBGZlQKcUsrblpWOU9TMU45TlNYOWVsS0NHaGRmSGNXZ3IwZmdob1FBRTBUYzg5VXdkblZFOXVXSTlQTVIyV2VqY3VpTEVjVVgrQkxzTDRiVQpueWRWZngrVS9YMVE4c21ROUtNUnlaVmg3SzBoL3JsUitka1IyZWtSNmNraE1TRWhvdm9rdnk2eE95WUVFcXFOQzZyRFhQaDlXeFpnClF1VkJGZ0FJWG9JaUdNWDU4S3NiZmtWWCtUbndnck1VOUdPbmxqdG9GWFphcFFNQkNFZ0U5Nk14b1QwRGxmZzUrd0tJR0FIS0hnZmEKYndRbzUvd1hNUVdXS24wV1REMEw5SEVUOWMxN2lMUUxYdTJjSjlVTEUyR0xPUnE0N2RQZERXanY0QURhblFMenFXKzc1SXNPMXJ6cApxMG5ObVZGWnpaaXNmRXhaUHF3cVFVdHc1S1NJbEJTU0ZBV0JMQmdBcU5BdEtIVHk4dTBjMEE5QTRaQ09ja2pkZVZEVmNVRFpEbThQCnFqc1AyMmxvMTF4WVdCREdyNUh1NStjNWtZRUtyWnhDTzdmSXdTdHk3WjNCNHhQQnh5UUhKUkI4Q3FnNGpNNGZJaXFLaXNGQWhYaWsKR0FhZ1FUdnhuTXdEUnJUbEhnUURyTUZIZ0RvT202a2tGN3Nnd0N1T1ltaTdlRklLWDNsSlNKeG5aZnlIdWcwTlNnMTBIelpTb0VONgovQnFpQSszNXB1N0RGZ2F3ck1qQktYSnhTVzc0cXJpRlRueEx2Sm1LWnJqazdYL0YydjRxYVFjSnZUWkFRVE5mQVI1OEFZVWVUb0dECmVkQkFlVlhUZGxEVG5xL3R5dE8zRlppN0NteVVBZ2QrTWZZd0c3OXlKem91SFMxcXhpZTI0QnVJK0I0Q1RSZUdHQkFweUNnS29DbXcKUWpjNkRpZmYzbFhxcHBaNjZRanArQ3dZT2NZRDFsU095TkNtOFNGNTVhQzBPaXF0REdGbFBnN1pRU1ZadS9LMW5RWGFUcktsdDlUSAp3U2ZJaEdDT09qZTdNY1Q3ZEZ6ZTk3UFY4OUR1VzNJN2x6M2VWVTlnMVozK3BFSkVQTmtFMTBJNTh5NEZQTXMyeFpMcDNYbDE0MVJmCnc1U3NaVXBXT3k2dEhoWFhURWdiWnBSb1dUUndlVWhjTlNoQ3AzdTVHZkFEVmpzbHI1MVZOa3dwNE1jTVFBWS9iMVV4SGxRZEZkVEUKaExWeEVieXRqb2dxUTRKcUY1TTAwRkhTMTFHaTdzeFgzQ28yVW1xandzWXhSY093dUdGVVhoMFRGaG03U1gzdE5jYnVTa3RYbVp0Uwo2UWRPMFJwaTNLb1JyR1pHZG5KTzNQTklZOW5VR1hmTXBxY1djSTk1eTJUYnNoSzd2UnhieURwRVFCOGllR0lHOGFSUHRSQWpRMFRFClFCSEJuZlQyeG5JeUMyLyt6d1RreWxsNE01aXpkRUNrNTFseHUvRGRUTFlsaC82aFdmUFRnT3g3RFhaYndiMmpZaTdLZStCVjdBanYKeXlUcjZ3bmgxNU9pRDVQczk4THNEMk9jVDRlNE4rYkYvQ2NHN2FiRnVHR3lyQm1zcTlaVXRqVmJLbUxkRE9SZGRZSFYwa1p1L0Ruego0YXZMc3dQTTVXeS9rUnNBRmhxd0JNM2t5Z0c0ZWJIMHI1OFk2ZGtkNzFrMnBVcGRSd0l5TEp0QVBFUURUd3lwdEU4RytoNzNaNWR4CmdIS0dlMTdnRG41Q1lNbzl1d013K0cyNE01c3lMNDlnVGZvOWtnY2FLUHVlMzB1ZFNneW0yV3MvQSsyTG5yMFRDMTlTdG5oUzdrbVAKZDErYUhmc2VLclhTR1MxMkptYSs4Q1hQRU8yT0JLTGVGaFAxM3BiMW9EWE9xSzRGZkxuUElqN3R0U0J1bjhlZ3RnWHMxcndJdXJFZwp1ajR2dkQ2SEVWMmJGZUh6WEZpcWI2ZEZ1K005ZTZNKzBEZVR6N3M2SVVtVjhXNnFyeWJFcWI0Y3gxTGhRejQ1K216c2VYOGZsYVQ2CmRFU2M2cE5oN0hrajBvOUhrWWZlSHhhL055Sitad1I3YTBRRW5VbWlUZ3lLanNZRkxURzBQNzgrektrTnMrdDk3RG8vdXpZSXQ3blYKVVh4a0tNNnZHa1E4cWc2eUszeU1NaGNWWG1xVzIzb3FiRDJWOXQ1cUI2UEt5YWgwTVNvOFRIaG1LZld6NEpWMmFaRDVmeFJBNlFZQwpBS1VNbEFJUU10QStBTkl0ZUtCc0E2VURDQTBJSVFCNUFFQ2NlZk0zazMzZ3l2b3hPWnAyd1FGVUhKTWpsT0FBS2c2SWkzMFlPajVuCmZ3QWRVSFVBZ0VnK1hncEErUUhCN2hvZ0N6SVFBU0FTS01vdElIa1JnTkNIeGNzeUVBSVFZYUIwQUIweTk2SnRYeVlxQU9pZ3J2T0EKcmpQZlFnTUFGUWI1R1FBQzR2eTc2bFlLUU9nOFRYM1hnZjRPQWtERXZqQUFVTEdMbHdJUWZKMW9lVkIvejZ1eVhRRDlWZGIyYW45MwprUk9kSlYyRVg1cXVjQTlBQjlSdGg5SDRVMXVCcVRNRklMU2FETDlxVlhsMEYwRHdGczJ0ZXRrZ0ZlUm9ZaUkyZ0E5SWV1bWdCS0FQCld1ZnI3RW5OZ3BIRG5KSTRId2VRaERCUVZVSldHWk5XaGJGeVA3Y0VYek5VcUVQblE1UllxV1YrYmxWU1Vwa1F3YmRwbzRmVEhPSi8KUHFIc2YyQW5BT1JhUVZ0ZEFpdmUvUUMwWDU1bG4zdkZxbHcyWDFuUU5NMW9HcWZsQUtENk1Xbk5HRlkzSVFNQVFUVmphSEZQN1NCVwpHZVlSQUVJalEzT3F4bWtsTWNsVkVXTFh4UGg0U0Q5MWd4aThKUUFFankvUmR3S0FTalZkUlVxMDNya3l5SzBEL1F5TG0wYWw4RENTCmlWTFMxL1ljUUQ1cXJaK0tOcEFQWTQzenlyTUxNc3BqN2NCNm4yR2p6N1k5NE5qVzI3Y0dISnQ2NTdiVnRlTUFBTG5nQmxGcWxRa3cKYU11RlptZjJBSVJJbEFhZzFHUlplcGtER0h0bFUrYmxvUG5uQytRc216NUUvbFd2ZjkySHl3T3RYbkp0K2h5Ylh2dUd4N2ZtOTY3NAo0ZHZBK3NSbGVPd3lyd1FNSzM3MUwzYlpRNC8wZ1V2OGkwWHl3TmlIWDJUS3NxUjNMQTA0Vm0xRXpqVjdlaW45RUFCS04xRE9zcGNuCkU2VkRKMmN2NkdjMWt6N1o0aUhDNTdaUU9mVkRBQ2pkUGFreTlOUC9XRStVamg3TkkxMnFuUFJKamZxa0QvYnN3aVZySkdiWFExbkUKZVRsaXNoK1pYZmJmeWxWdUFMMmNQdGtBMm84Ny83cCt1TjlMb0g4V1FLQ2ZuQUFpOUpNT0lPZ2xBTUwxOHdLQXZwbVU0T1VHVUhaZgpqNHVoblBwQmpVbHlsbE0vR1FCS045Q253MUl3RUFRRyttQkVBZ1o2ZHhReDZPMFI2VnZEa2plR3BCZVQ0dGNUb2pPRHd0TngwY200CjhHaUloeFpaaDNsb2wzNlUxeERqMWNWNTlZUDh1aEM3UHNpcWc5ZXVYbnFOaTFycjZLMjE5MEIxVG5pWFhnMTVHRlUrZHBXZlV4SGcKbEFkZkhBSEtNdER6cEpNdUl0bVVPejM1dElmb0pZdWdjeG9vdzBQRTFqQW9IVUNaQmtwZkU3M1hybjRXOFhBRDRRQnlDUmVzMTZmNwpMNDRyNFZWNDlaaXFjbGhaT2loSDgxQVJHYUNFSEpSa0FPaXdtUTRBT3F6RkFhUm9oOEJBQ0VCV0dpaUJoQU9vTUlJVitCR0FDdTNzCmZETUxERlJrMngwRUl1RUFnZzhJQmlLQ2o0L0dtWEFHb1NKaXRQUUhOeERJcGhnQTVPWG0yeG53OGZOTXZRQ2dRaE0xYjZBN1QwOHAKdERHSzNXZ0tEQjVHSGtRcm9OSEtvU0FHQVBxejhoWThCbDhHUkNrdzloeldkeC9VZGVRTmRCU2FLR2hXenM0bU9ia0FJR1FnSjN4aApITGdUUGpJQTZEVjV4eXZpZGdnQTlKcTJDOUNEOU9QbmtiMDh3RmErc1JmTjk2bmE4alFkK1FNSVFFVldCS0FpTjQwVVJCZHRBQUNWClJYZ2tQNXI4U2pFSUlkckhMUE94b0FvdkM3eFM3bVpVT09sbGRtcXByWmZrNmk3eDlwWUY2R2lqWTVSVE9zZ3JIOEtxUnFYSVFEaUEKcXVMU3FxZ1lIUkhoWVpBZDFLTCt6bUpkWjVtVlZvNEFoS0VMMDNoWkFLQ1dFT2ZyYVpYK2tkMzF5T3BkOXJwV0F1N1ZvSC9aNzF2eApwVXBua0dmZG16UFhpdGV4WWxJc0dUNVkxQnlaNld1ZWxyZE9TUUJBOWVQaXhrbHAwd3hTRHJ3TFpLbFBpS3RDdkRvUHN5TEFxcDlXCk5NeXFtcWVVOE1JQ1hsVlVCdG0xY1FGVUZ4UFZ4ekVJYnRTR2hEWEJYUUNWYWpvcU5OMWtWUWRKMjRHKy9pRngwN0FFQUFTUExERlQKU3JYdDlVWkt0Ylc3d2tXcDhkSHFBN1RHR0xkdVJOUThxM3g5WHQ3NVNLdGVHOUN0S1l5Ykd0dVd4ZzV2Ti9yc20vMjJUWU5sdzJqZgpOS010OGNUYVczeUR0SHZUNWttdFVNa3lVR3FJSXZWVVRieWJUUitpTEsvOGo1ZEpuNWNES0x3WkpQNFVHTFQ3ZjNETkF3V1czRkJ3CjJlTmY5a0hCMVlCL0plQjY1UGFBY1RlQ3psV3ZmZG5wV0hWNFZ1MitWWHRvZlYrZ0VQUkpCOUJ1Njg2Y1pYK0VsNWZoSGtTZkZSdHEKSC9la3hKT2ViZGxzV1htaDFLaVBjZGtJR1pZTUdhV0dmRkwwMFQwYWdOTFJzMHVmaDFvbzV6eFh6cFU5QkVxeTZmUC9FNEN5LzhvKwo1ZEJQTm9CZXJwOXNBS1Y4ODAvcEp3TkFCSDB5QUVUb0p3TkFoSDV5QW9qUUQ1USsvSU1BTkxlcm41dHpRandNdWpFclFzMklyMDlqClJCa0FJbWJCMGdHVUxaNE0rcVFES0ZNLzQ5Z1hvK0tjNWRSUFRnTVJEQUlBRWFXR2dqN0ErMlJFQm4wMExQMXdTUExla1BUZHBPU2QKaFBoTnRMQmErSG9jZFRZdU9CWGpuNHp6ajhWNVJ3ZDV4eUljVklpTkNqQ1ArUml0SHRvUk43WFpTNE9hZkl3R0h4TWZQZUxXK1BsUQpKb0IrMTBBWkFFb1pLQU5BR2VOQU9TV1UwMEFaQVBwZEErRnJnSUp3Z3pBUUFFaXo2RkV1dUNTTDlvNVp3MXVUcXBaeGVjMm9DbDMwCklLSEFGOSs4QUtCaUhFQUZ0dHdBT3FqcXlMTlFpejFjY2toWUZNWWdkTjBKSjYvUXppMHdNUXZOTERRSXRHY2crRkJvRUNoVkdvTncKQ1dFQW9MMHc5QUc5M01NMmVvR2RrUUxRWVh5SEZ3QUlVQUlBSXVNQWd0REtvU0NXWjZhbkFBVDZJUUIwcUwvenNMNnp5TndEK2lHRwpmMHJjZkRJWUNBQmtaeGZhV0lBYitFY2RrSGU4Sm00L0lPbDRSWW9BVkdSSEFDTDVlQ1UrZURBSFB2V2h2ZzRBMEdFMUFsQ1JzWk5rCnBSVGFFWUNLQTN0WHJRcWpBeGdJQUVFbFBucFpBSzFFSy9QdFZ1NmxsN3RweE1CanFZMVM1dWtwODlNcVFzeUtDQXN0VWh2a1Z3d0oKSzlFaWFLeHlXRnlWbEJBQXFnd0l5ejFzdER5dHY2dWt2NnZjUXF2MHNhc1RHTG93allmUjVHYkI5L0YzTXlyRFk3djlnZG0xNUxTdAorSjByQWUrU3o3V0twa2lJaUhOUWlESmU2S2V5cmJyUXh2amxnUThYVk1kbk5LMlQ4cU9Ua3NZeFdjT1l1R2tDWFcrOFpWclZNQ3B0ClFBQUMwL0FiUGF3cUFOQ2t2SEZXMVRLcFJBdDlmRXgwdUVVTTlJUE9pVytNWVUweHJDRWlyQTBJYW4wOGVIbFJwdThxVTdkWGFqcmgKYmJHMm84ck5SQmNtSE1hYVI2UU5nMkowaUtxdW84RkFxYlYwVmJsNmF0M1V4Z0M5ZVpEYk5Jd2RtVmFjbTVIZmZOZ3ZYdGNMVmdaRQp5MXJWbXNhNHJiTS83YmR2NjlDQTBGUDg3RHQwL0owWlNoa0ljbTNaaVlXNjZYTmh4TmhQQm9EU0daUmROb24rcDJHVVNaK1hBeWkwCmhncXNnVzY5dnJYZGtJVHdoZTB1SkJzVXJoYXZkOVhqZTJ6MUxkc2g3d3JLczJ5RHQ3NVZ0RXM4dTVlQkJsOXprMTAyYUhLTzZHU1gKYloyYzZMR3VXaktzUTJSYU1XV1VRUi85RTMxNi9ZOEhVdWtlOVVQYWh6b293ejJwTXNTamVOQ1gzblBmL0xJSGw3U1pyOVFmb2JJRQo4OGNkODkvN1czdmwwRThHZ0g1WFB4a0F5b2JPUzhTVDdaNXMvYVFBbE5KUE9vQ3k5Zk1TQUhYTVlSQUJJTUpBS1FEdDZtZFdsTkpQCkJvQ1FmbDRFVURaNmN1b0h5blRQbUlqbzh4RXNaL3VoWno4RGZUWXMvU3pOUUVRZ0lZSkhud3hKUGhvU2Y1akVQa3lLMzA5ZzBMc0oKMFR0SjBkc0o0UnVEZ3I4bEJKY1MvSXVEYUVuMWhUZ1hia0NYNHJ5TE1lN0ZDT2RDbUgwK3hEb2JacHlPTUUrRldNZURyTllBcDhYUApiZllLR3J6OFAyRmpUa2c4N3NvcU40YjJZNUJpRXFXYzhtUzBINE15M24zT29GbVVkczZYMFg0QTBpMEdvUDZGZ0I0SGtHNXhGMERLClJWdlBuUEhkS2MzUk1VWDltTEoyV0ZXZWtKVkVFWUJLUWdoQVpMKzRCQWNROEFVQVZHQ2k1K3NSZ1BKVUNFQUg1RzJFZ1E0WmU0cGMKN09LQUNBa21qRllPQVlBQVBRVUdCZ0NvQ0o4SVN5MEdRZ1p5QzlESFRHRm9iMUpzOTYvakcrQ0xJeUlBRUxncTMwYkhyNDVMSlFDRQp0bmZ0QWFnWVhVa1VLNGtqQUNHM0JVUVpBQ28wOWVZYktIa0RYZm1HTHBLbEYvUkRjbkxKT0lCS25UeXluVU95c2tobUp2cVlPSUFPCmlqc0FRSy9LMmcvMDRRRHljc2xlWHFtUFgrTG1GcGxwZVpxT1E4cTJBblZIUVg4YnlZQUFSTEwxb0wzZkFWWnBsRmNXUTljRUJ2MFUKZStqNHdBOGR4Rk1SWkFCeFNnSzBVait0TEVBdng2dncwU284MUhKM2I3bW5wOUpIclE0eXFpT3N5aWk3Y3BCYlBTeW9IaFZYalFpcgpoMFJvZ1hBTXF3cGoxUUZoaFp1TjF1cnJLZVg5M1ZWV2FyV2ZVNHVtbHRDWVNvdWJkVExNdWphbkhIaHNNZjR5WUY2eUdsWmQ1bVdYClk5bTUzOW9PNjdvMVorWTFxM2xGcDFqdS8yUlJmWEttNzlpVS9OaUVCSERjTklxMWpFdUJJRkRUcUJpTjJReUs2a0pjc0ZlMW45VTQKSVcrY1ZoNmRVdFdIZVRWZVptMlFRMXdvcHpFcUF2MDBSMFJOUVVHOWoxL241amE0bWRXbTdrcE5lN1dtcTByZFdhWnRyM2JTVGc3TApqd3hoelVPU2xrR3N4azZ2MHJVM0dycnFyZDNWcnU0Nko3WEpSMnVLc0pxR2hDZW1sT2VubFYvOW9PMzhXZlhSb3ZyemVWbm5EM0xaCm1zNzRWRy9lMWxxMit0Q1plODlQQjk0ZENuSnM0UWJDSjhWU2VUYWRxYUVnNGtiNkhtekNSamtML0xQaHU1eXl5eVlVVWZZamR4Ky8KbnJ2QW1pZlY4enMzdks1dHIyUFRhVnUzMnhBdjdHaHVhd1Z0K3ZPdFdMekxadStLemJkcTkrQTBnVCt5QVlPeTlPUEJINURwbnRTWQpEYjdjT0x0czJmeXViM0pheDdwcVNtVlpNYVl5THh1eU15M3BUU3NHeUxpc3oyaGdxVCs5L2ljNkl1MlRnZFJ5bi9UeEh0VWpiVWJLCmgzMTR1ZW1URGlDQ09MdFkyUWRBV1M3NUozbzVmY1MvZ0cvVTJmZnYvV2ttZlREd3pjL0svUUNVVForOXhjNi9BNkJzOU9Ta0QvZDcKV1hxY2UxSWkxbDBKbEE0ZzJqMHhhazgvTHl3QVFndWZFWUJTK3RsZCtKd0MwQ3pTRDdIWG5RQlFTai9wQUxvMlJlZ25CNEIrVnp5NwpBejlqR0ZGcWJpdGpwQ2ViUGhrQXlyWk9Sc1FVMk1kRG9sU3BlYkdQaDdHUGhnVWZEQW1KM2srS2lLNGtSVGlHc0ErR01PTGRkeFBDCmQ1TEN0eE9DVk84TW90Nk84NGt1eDltWFlxd0xVYzdyWWM3WkVQOTBnSGZDenovdUUrd0NhQjhEb1NRVDd2U2treDRpMlpRM1BRSkEKT1F5VWF6UUlOZTBsVXMvNGlEU3pmb2dBVUxhQmRQUCs5RUE4UklSK0J1WlJZQ0Fna1diUnExcndxQlpzMURuVGg5UGFFK1BLaGxFQQprTElxSVMrSmlVdkRDRUFsZ2VjQUlqbjUrSWdPQWxBK0RxQThlZnNoV1JzWUNBQ1VwMGUyS1BZTGNjRklpMzBZUEpoazVTQUFHWmtBCm9IUUR3WWRDYzJHNGdZZ0JJVFRJNU1QZ2N3R2h5RUVNUGdnRStpa0pJZ0NCZFlxY3JId0xyZEJNQTRVQVZ2S052YUFUQUJBNXNBdWcKNHJpWUFOQmhNLzB2aWx2NS9kMEZBNVFpUXc4Skhtbm9LUmpvTGpKMmwxaXBLUUNWdVJDQVNtd2Nzb2xaYkdRVUdYclJQMHJlZVVpQwplazNXZmtqVFJiSXkwTENXbDFmbTVaZTV1TVVtMnVHK3pueFZlNkdtczFEWFZteEU1L1doelZrdVdtbUFYUlpCQUtvSThNaHVab21IClVSVkFReVBWUVdZTjRBYWhod1pWQk9tVmZscVZuMWJoN2ExMDkxUzRLRlh1N2xwZmIxMkFVUmRtMVVUWnRYRmUvWkN3WVV4Y055S3MKSFJZQ2NlcGk0cnF3dU1ZdnJQWndxcHlzS2dPbFN0OWRZNlhWK2JuMUNWRjlYRmpuWVI3MWNFNUYyRmRuWmNvSC9YMC9xZnBYQmpTcgpSdDJLQVo0d2pLdUc5RXhyeHIzME9kT3ZtdzNMYXZsUzM2ZTNWV2RuTktjbUZTY25wYTNqaXBZeGNldUU5QmhTanFKbFZJSUdiQkpZClE1Qjd4TU91OWJHYXh1VXQwNnBqazZyR3FLRE95NEw3UVQvb0NvSXhyQ1dLSFFtSm1nT0NSamNQWFY4UUhteW4xL2RUR3Zvb2RacnUKcXI2T1dodjFWRkp5ZEVqY09peHVUVW9hbkl6YS9zNFdRM2VUbFZMbm9oejFzWS80R2MwUnhwR2s4T3lVK3Z5NDh0MXA2VHRqak5ORApramZHc085dXkwVExXdjEydjM1VFBiQ0JSb1BNV3diTDluTURFVU5CZXhKNlBpQ0Vwc1kySENrR3BldG4xMEJacTFpSU1uM3p1MlZSCjVyOVpHblJlYU84QkJJWjhLeTd2c3RPejVDQVc2NkMzYTg3QXVpdXc2dkN2Mk9HdGV4M3RqWEt2V0QycnlFUE9UYWR6eTJYYmRHVU8KMkJEelVMaVpjcGJhYVpWWkZuMklzdWV0aUxMSGVJalMwWk5CSDhTZHJGTGlNU3dOcEpkVFAxRE90VDc0VkZkTy9mdzNBWlJkTmszKwpSeUwwODhjQlJPZ25IVUF2SC90SjIrMlZXeisvSzU2c0laOGMrc2tHRVAwdXJwODBBS1hyNTQ4QWlEQVFjZGdQWXRDTWlPakd0UERHCkZKWTYvekFGb0YzOTdBT2diUHFrNndmS251UWlvUFBac0NobiswRW4reDZpajRaRVJPa1NndDRiRmo1dkNMdUNjd2Y2S0lGQkJJT0kKZG5rMEtJVGVpd3V1REw3UVczSE9tekgybTFIdUd4SHU1VER2Y2xod0tTU0VuZ1BvRHhvb0JhQU1BNlVBbEdtZ2ZXYkVVZ0JLR1NnRApRQmtHeWdCUXlrQzZoUkRjM2dYUUFwb0xBd0NwRnp4OWN6Ym1uUG5qNmI2VFkvS21FV1hka0xKNlVGNFd6UVFRMmYxU0FNbmJEdlpUCml1eHNBRkJ4UUl5MmQzbEZhTTdMekMzUzR3QXlvVUVnQ0sySjNqTlFzV3ZYUU9RMEFKRnhBQlVGUlZCeFVBQUFLdkh5Q09zVVdPbEkKSkZaR2diRVhBRVJ5c05EdTlJQ2dOSUtQQU1YRWFPQXFJTW96MGRJQlZHeWl3dHRDUFlWa29wVGFhR2oxRHc0ZzBFK3BuVnRxWVNNQQpHZWlBbXlKZGI3NjhLMS9TbFNmdE9paHRQNmp1TExMUVNXNU9DUTZnY2hlWGJLWVg5SFVWcUR0SW1xNmkvbmF5b2F2RTJvTmZ0WXBlCkh1U2dDOXJGQkRWK2ZvV2JYZVZqQXdJYXc1ekdNQnRxQ05MUkZiOER2WTBCYWxPUWhnN3pEZEJhL0ZSVWdORWFZclZHT1VkaW5LWTQKcjJtUTN6d3NhaDJUTkk4S20wWkVqUW1zS1NwcENra2FmS0k2TjdmT3dhNHpVMnVNUFkxMlptT0EyNVFVSTRYNDJDZDluQk1SN3BmVApFdXhuamZRZm1ISlpKVnRWS1ZjVWhqVmwzMXBmUnRwMUxUU3dyc3VaZGswL3NLeVVMYW4rZmx2eCtremZtU25sNlVrWnlBYStwS09UCnNwT3pxaFBUcWlOalVzREtrWVNvS2N3LzZ1UFdCemhISmhTdDArcVRVNXFXcUxEQmoxWmtOOGRGMEpHWStHaE1jandpUGhvUUhuSHoKbXh5Y1ppK3oxYzF1TnRLYWRMM04vZFE2WFhlampYWjZVSHg4VkhKc1dISnlXTjdpNVRRYUtLMm1uaFk3cGRIZGU4TFBQUlppSDQyeApqdzhKejArcXo0N0lMNDZKWGs5UTN4bVhYTDJqNGp6V2FUYTBoaTJOYWFzUEdEU3diVVNYdmR6VUE0TWc2eVprSWlJa2hEQzBZVTBGCkJrcVZvay9HdS84cWpMSXBnNWU5Zkpnbys1RzdaZE1IYi9lODQ4M014L3VXM01GVkh6cnBZTVVWWEVNQmdQeHJEaVNlTlRTdTQxMXoKdUpZQkh6Yjdoc082OGNJMGFHcEJORjdtSU0xZTZZLzUvY2VuaitpOHBKZTRoMmcvNk9pWGRla05MR21KZE12OVJOb2xYWHA5VDdTcApOSS83SVBVakRmU3ZqQUJsVDRGbGwwMlRmNzJVZnY0Z2dGTDZTUUhvNVpOZkwyNTN6NkdmYkFCbHUrZEYvZXdDS0owKzJRQUMvZXdICklFSS9CSUFvYWZwSkFhaHJUejhJUURPNytza0cwTjdwejdzQWVxNmZYQUI2T1gxeUFpZzEwcE5ObjV3QVNyZE9SZ1IwUGh6ZUxTVWgKSW5BUFB2eURCbnZRZUU4Qyt3QXZuVDRmSkVUUGl3dUp3RURwWFlueFU3MGI1Yit6MS84NUFHVVlDTTJPNVJvRTJnOUFPUTBFYWVlRAp1dmxnL3h3eUVBRWc3UUlDa0hiT3hwbzFmanJWZDNwTTNqaXNhTWdDVUZsQWtnSVFtdEpLQXhEb0p3V2dBN3J1UWh1TDdCVVFBQ0lqCkFQRUpBSkVNT0lCTXJFSjhRVFF4RG9RR2dYQURFUUJDZzB4N0FDckdJNEdsZ29LeUFBSVFXS2ZZelFFR0ZkdVlaQnV6MElUbXdvcWQKYlBpamRBQ1JJeElRR0FEb3ovS2I2UUFpR1hzSkFKWFo2UmtBS2pHenlFWUdTVThyc1RDS0IyaUZTa3FCdEJzTWRFRFNka0RWQVo4SQpBQVRNSWdCVVlrSUFLdFIwRnZkMUYvZTNseGk3U3kzUEFWUVpRUUNxRHdocXZOdzZQN2NsTEVDWGdJbHdqMFRZelNIbUVTL2xxTC8zClpJaCtOc2ErT01oN0l5bDhjMGowOWhEMmVrSndOb0YyTUo1TUNvOG5CYTFEb3FNajR1TWdqREdzWlFSclNZckJFQzFoY1hOQVRJeWcKTkZub0RTWnFzeE0rSnI5bFdBb1BhUEd6VC9tNUFLRFBKekhlanpMc1I3NTBSU1phbFVwV1JMcDFzV3BWQWFuWGxCbjFyMmx5cGxrYgo2RitXQVlBK3U2TThQNnNGQUoyWmtoK2ZVaCtia0IyZmxKK2FVNE9Cam83TGpvMUtqdytKNFI5NDNNY0RpclZPS28vT2FFNU45eDJOClljMUJkT0dibGtHc05ZNGRpMHVQeDZRbm9wSmpRVkdyUjlEaTREYTY2UUNnbzJaR2EzL3ZNVDJ0V2QvYjdHQ2NUVWhPajhsT2pNck8KakNpUEIvaEhqTDNITGRTanp0NW1YKzlSRitONGtIVWl3VHMxZ3AwZjE3dytMSDk3VnZuV3JPaUxLUzc5WjVVYXhMWXMwejNHQnRhVQpBOXY2dm0yTFlWTm4zTlNCZ1lnc0cwWWkyNFlwVmJxQmlQRUoxN285SFVNWjc2YVhUUjhpLzM1bEVlZS9Welo5aUR5YmVIc25JS2NXCktidVg0VlA3M0dzZWRJV0hOYnRyM1dGZnR6azI3UFkxQUJBNmxqQzQ3dlVzMjhCQThFZldOUnR4VmpoUitsUnA5bWpOeXdHVVBaYXoKMzRnTzBYNzZ5VDNQdFpUcEhrU2ZKLzJvWFBwSkIxQ0dnYklCUkJqb2R3R1UwMEF2VEhYaDgxUFBCNFIrVmtQRWJiZ3pteVo3UUhtTwptUFN5Sjd5eW9mT3ZBQ2liUGk4Wi9oR2hvMzF5OU0vclI1Sk5INGlONitkZkIxRDdQQVlBNnN3QzBNMFp3WDRBK21aS2lQY0NnSzVPCmlQY0RVRFo5b0M5SFJUbjE4d2NCbEkyZWRQb1FmVENLdlQrU2cwSFBvVE1vK25BUTNtSWZ4MUVmSnNXRWhJamVIeFFSZlJCSEVZOGsKN244UFlVaUkzNDlnOUg1TUFMMFg1UlA5U1RMaXlVZzY2b1ZrNDU2TTVCUGVuQ2ttZlhqZWpKUlRQcnlzVlVGcFl6L1o0MEE1MTBkRApHUmpLOE5EdWFCQkJJdnhQSmZOT3pvemw1cmoyN1JGcDg3Q29la3hXT2FvcWlVcWgwckNrSkNRdUNXS2xmaEhaelVmWG5iQUJZaGhGCmVscUJycWRBMVpXdjZNaVR0Ukc5cXU2QVB5WDVCSVVCTkF0VzRoT2l0VFY2V2w0L3RYQ0FEZ2FDQ2d3MGRJaWlsWEhJemlTNTBTNzAKWWcrL3lNdUh2NFh5Q3lGaTJUV1NrQjh0dmthRFEvaUNvVUlucTlDeEM2QmlLNE5rb1pQdHJGSVByeVFzSkVkRkFLQ3lRV2w1VkZibQpFOE9uZTFYYUJsSXAwbEdLQjNwTGpOUmlReTlKMzBNMjlWVFlHUlVPZHFXVGczSXdLMjJNTWpPMXpOaGRvdThzNm04bkRYUVVhenVLCmxHMzUwcHNGc2x2RmZUMWxlclNOQyszaENyQ3IvTHh5QjZOWWgvWXVsYXU3cXZTZFZjYXVha3RQbFlOYTdhVlZCNW0xTVc1ZEFqU2cKYVBFS3pnVllIeVk0VjhjNTMwNndyazl6MFNrVTQ4eTJLVTduTEw5bkVXUGNrN0h1SzlnL0tGSG9zQzlKejExWjJ4M0oxWG54cDlQWQpsWEgrbTZPOEM2UGlTeVBpQzBPaUN3bmhoVGovZklSN1BzU0JYbmZSTG5nWWwvM3N0OElBY3lIUjJ4SEJWMG5halNrdTdhNlVCNyt6CkhpZ2tEK1d5SjFMRkU1bHlSVUdrV2xWQzZqVVZrV1pWazNOd1NMT21VNjdvK0k4MWxPL2xWMmV4VDZmRUgwN0ozcCtTWDU2VlhaNlIKWDVxV1haaVV2VDR1T3pNc1BaV1VuRXlJei9xRlo4TFk2OFBLQzVQYWMyUHFrekh4cWFEd2ZFaDhNU2E4SEJNUlhZcnlMNGQ1bDBKYwo2TEtIL3BhYjhaNkwrYkdiL2FtWCs3R2Y5MEdJZnlYQ2YzZEVBcjAzSkg0L0NUK1dvay9pb3IvSEJKL0ZCSi9IaFovSCtWOG0rRmVICjBXVjZPdWFWdmZmNjZEOXFaYjlnOGdkaTFXT1paa21oVzFVUHJQZnBON1NHTlBwa1pGczM1Z3dkamIyWGE4T2F5clBoeUZuMnZpZWkKeklHZnZUSTl0RmZtQU0vdmxiM2loeWg5WjFiNmpxMGNxM1oyNTdZYys3UTc1NVdkWTltYW5YMGxkOVpWdEU0NXUyejZ2TVE2aURzcgpBMFRHNVg3SXNLVExqdmdqb2d6M3BFcWY5bnBoQ2l6TlBla0F5bGo3bkxZSU9qVVg5a0xabHhmZHZjam9peXBLSHlMNnB5TDhsTjIrClY3SFk3Ni9rR3VaQi9hUktoZjFEbVo3b1IwVjJPWWQvSU43OTUyV3M3OGs1MVpYaG5sU2dIK1lkY1hhMDJ6THFvcFNvZDBGQzFET1AKRmtFRGdJaUlxMzFCb0ordU9WSG5yQkFNMUlrREtIWG9jNnFiVThLYlU5aU4vNis2Tys5dTRyd1hPTjVYY20vdjZhbkJ0cndRVENBaApvZGw3YjNMcHlXMGFRcHVGSkcyU1pvRUFYbVZaKzJMdHk0eEd5K3d6a2dHYmhNVUxtdzB4eHJ0Mm02WnY1LzRlUGRKNFBETnlnSk9rCjZUbmZveU9QUmtKLzJSK2U1NWw1YnJweGY3L3RSTjF5ZjNiVEJYMTZ3L25wRFRkcXpvdjdaTmFEYjJDSSsyUWExYnpKb1JzQy9VQ1kKUWZwYVljalFQWGg5ajJhU0MvcnpWVmR6amJOMmFBZWdvNlFXanhvOTZnQTZKeTY3OXU3azFFNi84c3dJbXJ5eklqUStLK0Q4YzZKaApnUnVTWVRvSjZjYUU5c1JReTJ2RWpNYUVESWVGOFBIeGU0Smpuamw3aTN4bkpuaHMybnR3THRBN0V3SkpZQUIxWHZTYUpqeW1uTHVqCkRpQXdUVnZhdkk4YWFVc00valpTdjVPdi93d0cwSCtFdjI3TGpyYkx5REhBSm1RbWVnd0ExSllZM2srYU95aExCMlZ1VDQ3c1Q1bjMKQVY4NHl6NXVGTnJQVzlxRnNYYkoyaUhib003NjlWWlFwNUprUjhvUmJlZzBiclNESFRVeG94M1pFYWlUczNUTDlwNUpWOWVVeTNUWgpaWnJ5ZEYvMGRJbjJObkxnMStOZi9UWitIZ0RVbmh6cVNJKzAxdzNVbVJucFljZE1uTDJMZDNRTHpsN0Jmb0MzOTNLMkhzYlNUWSthCnlNRnVjckFyM3Q4Vk90c1orTG96ZExZbk5uQ0FISDM2Z3V2UWhCTWVqK1JkVC9QV3A2aWhROFRnMGVUSU15bnpzMW5MVWRaeVZMQSsKSjltZm4zQzlNT1Y1NFZ2ZlM1ZWNiM3pqZkgvT2ZXN0piOTBJMlFzaGF5RmlMVVZ0NndISFpzZ052NFpLVVY5NTUzOTFvVUkwQ1A5ZgpMTWM5NVlTam5MUVVpYUVDTWJpWjZGOE9Rd01Qd29OTDRZSDdvYUhGMEhDOS9xVkc2S1hseVBCcXpMeWVHTjBneGxZaTl2VzRyMFRDClI4SHYzekQ4S3E5RzRyVllaS3RSZERzT3hSNG1jTVIySS9JaG9ZN2FqaWYvUWNZZVV2NEs2UzVUamtyR1VXVnNOYzVhSXNhS0NmTjYKYkdnbDJuOC9jdlplK014QzhQUjg2TXVidnM5dit6Njk2LzkwTWZpM2UvNlAwWXBDNytuYi9xSEZ5TWhpMUx3VXNTekhyS3NKeDJvYwpaMTJQT2VGN3JpV0NxMFJvalF4c0pyM0ZwS3VVZEJkUjhOeGZvSUlGTWxLazRzVlVvcGlLMURLUldpcGNwU0sxWkhRN0dYdElKcjZuCmlIOG1sUzlQZlo5TS9aTlNVb1o4TkxIZlp3MVRyMVBCTjkvRDZhOXZ3dWtYQytQMHhQbUJkR004ZTZkR1R4N2QzN0tSb1g0VUFCbXMKM2RHNnA1R2VPSzNDTzBqbzZmTmtBREtnRDE3Vzh3Z0FValBJaUQ2eGVscjYvRElCdFBlckJ1bm8wMWpObzZOUHd6YzYrdURSblVmWApqMnMxQU9ucDB4ejErV0VENmVtajBjK1lrWDdNaXg1STBZOEdRSXArZmlvQU5RMVVCMUJEUEhzQVNOK0gweTdvNXdHUWhqNkcrc0VqClBYcnV2RDNsMVBUTzVFNi9jczl3a0hvaXJOVjBHSjRDYXkwaFFaTjZVc3g0ZHN4UVFydXZEbE5TVDQzdHNUd0lINEVUUXZjRTd3STcKUEo4NmRUUDI2clQvbVZsLzMzUzQ5eHUvYVhJWGdEb2xad2VIOXNQYWx4bkZBR3FMbkc4TG5nVUEvV1ljQWVnL0FVQnBjN3ZvYUo5dwpkMXhBYjBFQUlvYjJ4d2JhNDRPbStCRFVrUmpvckl2RXhGZzZPVE5rNGtlN0JIQ010U2RuNjgzYklWUE9DblhsYlJBY3hNRUpIWktsClV4anQ0c3hkeklpSkh1N01Eblh6bzcyeXJlY1NNbER2bEJ0MXlkTXJPMHpVVUZ2b05CcjdvWVpOYVhOMzF0S1ZOVU1BbllPQUhzRUYKSFJUZGZaS25UM0FlNGgxOW5QMGdhM3VhSERtY0dENFNIMzRtTnZCTXBQL1plUC9SNU5DeHRQa0Z5WEZNc1AxT3RMNGsyVjhWcmE5eApvMit3bGpjRit4dUM1YmhrL1VQZSt1WUYreDh2T2QrNjdEeHh4WFB5R3JvdCt1Y0xhRVFIelVZVkF0NWkwRk1NdTByaDhXTElYd29ICnloRW9qRWJhR3lVS2NWVGpFbHgwcHpWOFI3WGdaaFFLYjBRam03SG9SaXkyRVl0dnhva04rRjJjQ0Jmam9VSU1Yb1ZIZUI2cmtQRnEKTWxxaFl0WEdydFNKTWttVXlHU0ZvdEFOL2lrbGFpdWxsS3FsY2VuNkxraEtUSTFrYWhTOVJhV3FGSHdDV1UwbnF0bDRoYzZVaVhTSgpoRklGTWwxTVFabFNObHVtcytVTVZVYmJSc0lYaUpTVDhWSXlXVXJSbFN4WnBPQUpWYUV5bFZTMm1zNVdVMHd0RFNXckJGVWhzaFdTCkxhUGdTYXFLSmpMUzVXUUdSVUJ3a0trazJDb0JOZjR1YnBQMUVwbnRXSG9yQ2pIL1pQVFIzOVBzOTR4aCttVzVEZlRzN2djdjU4YlgKUnVuVGp3bjlRT3A3Nmp4Q2F2UWc5MndMT0kxN0lIenJRcFY0TkNNNld2bzhGb0FhK21rTklQMEY2czIwOU5FRGFOZTZacFYrOWdZUQpyb1YrL3MwQTlJT243V1NvSHgyQWRnWjRqUFNqQUVpakh6MkFzSDQwQU5vOTh4WFVHRWpESUQxOTlQcXBBMmhjeWJ6b1V6TFVqeHBBCnUvWHpvd0tvYnFBbWdOeVBCU0NzbjNvZXBWUFgzVW9mWFBlK2Y4Mmo2YjJyTFFIMGw2dGV2SzVaM2NsdjNYdWpSNk1mUFlEMCt0RUMKeURYREtibG5lU1hQTEt1a3YxZFFxNHZrMVpmSzQxcGk2QllQUGM3ZGczYnVISzFKZlNOcENCOE0zK1VDQzR4OWdmN3NkdUwxR2YvUgphZi9oNjhHK2J3TGRVLzZ1eWZHdUM5NnV2S2NyNSs0U0VZREFOTzJaa2ZiVWNEc3gwQlk1MnhZODgxdi9WNzhaL3hMNnIrQlgrNUtECjdZSzFJK2N3VGJoTXNxT1RIbTFMOU8rTG45OGZPOThlNysrTTliZkh6M2VRQTUzcFlWUFdEQWFxTTJqTXhGdTdCRnUzNUlCNlpLY0oKclRpMmQrVWNVRTh6WUUxWHp0a2wydEdabkxXYkdldGl4N3BGKzhFSno0R0xucWVtZkgxWEF0Q2h5LzYrbkxzYkhCWSsyMDBOOTZSRwpEbVpHRDlHb3ZxejVNRHQ2VkxROUx6cVB5WTRYWmVkTE9kZkxzdXNWMmZHeVpJZGVaeXl2TTZOL1lDeHZNcU4vNUVmZmxpd244dFlUCkYyMG5wM3p2VExwUFRybmV1K3I5K0pydmI5ZTlYOHo0enQwSWZMM2dPNytBTGtBWVhQUVBMd2JNUzBITGN0aStHcld2eE56cnNmSDEKNlBoYUVFSURQT1ZFcUpJTUY0aG9nWWdWU1NCQ29reVI1UlNFOWx3c1VoQlJTS0tLUktLUWFKS0lodUxGYktLQUlqWWJrUnNacGVSbQpGa2NWYUJMRVUwcEI2WEk2VXdhdjBFZ25KVFpkemVJeU5Wb2RYV1hWTVRVT3gxVm9IRnZPS2srWVVnWStxaGtIMFdXUnFVaVFzTW55ClJZNHRzdGtDRGNFVCtKSGZZTEkxVVltdThsQzJBdS9paEJvdlZubXB3dWVyQWlSWEJiUTFlbzNudHlSK1cyQzNlSWplaGxpY1VCTWgKY1F2K3J1OGE1T0FlY254OU9Zc20vUzVST0QxOUdnRFNFV2Z2OVBUQjZjZUVjRnIzTk5PZitiZzEvdDNkN2xGcU5ZMmw4NUQyQksxNApWTGpCKzZnM3l4aW1KdzRPWDZhK1I3b3IySGVtdC9UYzBkZENQLzgyQU5Kc0hLWS9RWnVoZm5ZRFNEMjlaYWdmMUo3dTBlaEhEU0ROCnVoOEEwQjRHK2tINldPNTdjWWI2K2RjRDZJWmJCU0Jrb0VjQmtFby9QeE9BOU9JeDFJOEdRSHI2R0FESU9aTlJjczFtVlRGSzdqbFcKcVRXTUdLVlcyMmpvTjlNdzJGampEb2NMenZQcU1JRFVHVEpJK1RHeXdBYm5HZmRDOXZSdDR2OW0vY2V1KzQ1Y0F3Q2hIUmg2TG5uUgpwTktFQytNRHBOTEJXZ0JBSFJRQzBQN3cyWDNCTTIyQjAyQWdWT0EwSEVTZ2tSMm12Qk0wWThxT2duN2F5UDU5Wkg4NzBkK1I2Szl2CmNqblFtUjJxRCtUWXV0bkdiRlNQNk9xUjNiMDVEM1R3Z2xlcHJ4NG9CMEVuNysyVjNHandobmM5eFRsN09VZWY1RGs4NFQ4ODZUOXkKT1hqa1N2and0NkVqVS83RE9mZWhqT1ZBYk9DWjlDQjBMRHZ5RWpmNkNtK0JmaTlaaitlZGY3cGdlL3VpL2VTazQ5MXYzS2UrOVg1OApGZlczcTc3UHJubi9mdFg3NVRYUG1ldmVjM08rL3B2K2dUdisvdm5BeU4zNDhFSnM4QzZhMEJsYml0cVh3cTdvd2dJZ0FBQUpPMGxFClFWUUhFZTl5eExrVWRDK0hQU3NSMzBvNHNCcUJ3bXVSeUhvMHVFckVObEpFS1ozWUJOYWt5QkpOVmxpaXhDWExQRlZDSll0Y3FvQksKRjNrb1dSTGhwZnFyTEpRcDQyaXFMTzFVRXBYU1JWU21KR1hMOHU0eUVGMWhtQ3JMVlhpdUxFQnNpV2NxMnRpcUFER1ZuZGlxcU1SdApYV0NxZWFZcWM3VWN2eVdqblRGcXNvQWNJOWZMUTVscUxsMlJVMlVKNG9xaVVNM0J5V3hWaHZpdFBQcXhLTkpiRXppMkJ1VWdEaVZ4ClpZbXZ5RUpaRmlzNUhKd1A0YmN6TlpIZGttam9vVXcvbExML2tJVHRpZDNsY0VBaWRjQWpuUHdRYllLbVQwK2labHJpL05LZ28wNy8KZlRSZis5RmxvNE9PZHRseU0yTUE2UVo0bEJzU2FtWFRyREdscFVrTm5WM1cyU1p3bXN1NzlCNUtWdU5RcTh2ZFcvVmpBYWhWZXZycwozVThPSUZYNjhaNVc5TkVEQ0VOSFNTK2VSNlhQZlQvT3NqaXVUdU9la2UrOE9FUDlLQURTNmVleEFmVDVMU2NLSkhUREJYMDI1L3hzCnpnMHBFdnBremdVMUFlVCtwQjUrL3RkcEYvVFJEQXBqQ1BmeGRaZlM0d0lJUDJwNjkwcHJBTlVYTmF2RHVORWYwYWVuandHQWJETnAKSmZ0c1JzbUlSQ2ozRE1velN4dW1acEFHUTNvSkdYcElBWkJHUXVFN2pmUVMwbU1JQ2k1a0EvTVpBTkRYZDhpM1pnTXZYUGNldWU0Lwo5RzNnd05SNDc2U3Y1NktuT3c4NmNYYUw5bTdPMnNXT2RXYk1BQ0EwbVJVOTN4SDh1ajF3QmdJSndXTlhZckNIdFFKOUFFeTlzck9ICkhvUFQ5cEhuMm9sejdZbXpwc1M1THVKc2Q2b2YzY1NQR1Q3STJ2bzRPNXFCRXB4UFMrN0RzdWRJem50a3d2ZnNCUS8wM0lUbitRdGUKOUZqdnViejdhTTcxbk9SOFhuVCtEdUlkei9QMlk1THJwUW5mcTVQanIxME92UHF0LytYTHZ0ZW1mSzlmOHZ4dnpubWN0LzFSdHI2VgpHenQ1d2Y3ZWxQdlVaYzlIMzNnL3VSYjRZanJjd00ydHdNaWRzT1ZPeUxvUXNkK05RcmI3VWNkaTFQbGQxTE1ZOFMzRnhoL0V2TXN4Cjcybzg4Q0RoWDA2TXJ5Ykcxd24vV2p5NEZnMnRSc01yRUIxZFlXSnJkSHlkU2F6U3hGb1dTcTdUaWJWVWNvT2hObGw0SkRhNVpGRkkKRmlSeUU5UWlRNm1DQktVM3BkU0dpRXVXOHNtU0RGRkZHZnNHY0pNcENVeUJ3ZEhGblpnU202cnNLbDNsb0V5TlowbzB2SXFydXdmagpSc0lTTWdwWlJCMjRCS0pyRnpPVmlYUTVUMWR5RUh3Q1hSWWhoS29LWHgrTWtlbzE1Skdwc2ZVQkd4NmVxSitMVlJFU0tvSlE0Y1F5CkoxVjRxY3BDYkkzanRuaCtXNER3L2FueGM3aytHZ1JKTlE0U3Q5QkYydlZybE5BZTRQeERrZHNXMU1rUDBXWm4wcmFzU1UrZnZRR2sKR1RpQmZ4ZW5PYTZrUjhtVHBhZk00eVp1TTJMelBqMTY5L3pvQU5vOS9MTnJrOUZkRzQ1cTNhTU04T3lDam1HN1dMUGJQYTBBaFBXagpCcERlT29iOTBnQ2tTY3NkZlliNlVRRkk3eDVEL2JUaWpxRitOQURTbzBkTkgwTUE3UXo1N0hZUE5QcWREekl2K3BWR3ZodFgrcGNDCkNCbW9BYUJaNXlNQ1NLMmZlaDZsajY2NWxVNWQ4MzV3MWFQcC9Tc3RBZlRlVmUrN1Z6eWEvbEsvOHN2UVFFK3NIeTJBck5OSkpkc00KcGFUR0VPU1l5K0swSHBxam0yWFVlVzVrY2VyUm9GMFN1c1ZvOHQ5bTFla1lwQzIwd0VQSzgvQmRBZGM0WGdlUVp5RjlkcDU0ZTliLwo0clR2eUhYZm9hditweTc3RDZnQTFDTTVlbmdibW52S21ydlRJOTNrb0NsMnZpdHl6aFErMnhuNkdoNTd3dWQ2aU1FRG5QVUE2Q2Z2CjdNdTVudUp0Sm5Md0FORVBIWXlmTzB6MFAwc05IYzBPUDhlWWozR1dGMW56Qy96b2k0TGxaY242V3Q3eCs0dXUvNzdrL3A5SkQ3NVcKNlBnbCt4OG1IZENibHhxaGdic3A1NThuWFFDYWR5ZGRxTXVlRDY3NVA1b09mRHdYK3ZCRzROU2MvNjl6NDEvTUJjL2RDQTVNQjg3UApCYUhCRzJIem5kallmTncybjNBdGtON0ZwR2VKaE1hWENQOERNdkNBREQwZ29NZ0R3QTBSWENYRHkyUVVla0RGbGxPUmxWUjROUlZmCnBjQTA4ZlYwZkRPRFMrQVpxQlVodVNxbTFtVnFVMHh1Q00yNFpHT3VxcUVmMEF4VFJveFFobnd5emVoQ3ZaSU1aWXNTTGxNUW9mVG0KRG9BZ3RsaG5UWm1EOEJCUnVzVGdtaU5HYkJvK0g4VmtpdkFxSE9HeUZaNnVva0Vnd3pCcmNIZ3lDd2Z2d205SDc2Mkt5aEFSRW93cQpNSTFZWVNBMGE3YkZJOU5VT1FqamhrUExVeVI1UzVScUFxcE9IN25HeVhYWlFQdzJweEFFSDVHMytKMXFEQ1JWYWJHUzNmM25mT2VOCmVHTUhTQm43ZWRJTTlMTkhlb2c4YWN4alpYRFBaWHpqd1JiYzBSOXB0SjAxVE9lZVJvWTdqTlkzR2RVdVhzYnBXZFBBVFhORXh6QTkKZEZxbHB0S09maXF4eDlMUEx4WkFXdVhza2FGK21nRFN1OGRRUDNvQUtkQXgxSThDb0wzUlkwZ2Z0WDcwQU1MNlVRQ2twbzhDSUwxKwpNSUNNOVBPakE4aTVBNkM2Z2ZZR2tFNC9Qd2VBR3RlMDZ4ajBaUHJSQXNneVRVQmpNNlNtSm9OU21wd3pLTmRzMmpBTmd5RDlwRmlqCm16UzBONE4yR3doK1pQVU1VbU5vRjREdVpmd0xLZmZkZFA4OGVXSXU4TkxNK0pHWjhiN3JnWU4xQVBWZThQVG1YTDJ5ODREWUFGQTMKUGRxVE1mZFN3NzN4Z1o3SWVhZzdpam9RN1Q5SUR2ZHhOa1Nmdk92cENjOGh5ZGxORFQ5SERUK2ZHbmt4Wlg0bGJmazlQZllHN3pndQp1NC9uUFc5ZnNwMll0Sis4N1B6ekZiVEIyNm5aNEljM3d4L2Rpdno5cGgvNi9GYmd5enVocjI2SFR0OEpRMmZ1aE0vZkNRN2NEZzdQCmg4M3prWkU3WWNoOE56cDJuN0IrRjdNL0lHekxjZXVEbUgwcDRsdUtCaGVqNFhzUjMzM2dEakcrU0FhWHFQQjlNcnhJUk82VGlTWEsKdDB6NUgxQ0I1VlJvT1IxZXBrQTVZQjNFblRVcXNwWk9yR2FJRlpwWVlZbGxubGdWRXVzU3RjSWsxMWlRVFdKVGlHL3dpWFV4dVM0bAoxK1hVV2lhelFRTTRJS3FRVFc1bWlNSk9hTlZPa1UwV09XcVRwVGF5MUZvS3pzR2xOaHVsTnpJUXMwR2pOdGw2UEVSdmloQWFPbXBHCndtTkp4TUZMVEVHQzJLSU1qL2prN0lhQS9GU1c2WXBFMXhHVEtuTlVtWUdZSW1lWUdrQnFDZkZWQnEvK0VXcG9hUTVkWWJKbEdoNzUKY2g3aVNqbTJKS3BHakVTK2xCT0tPYm1ZeDBtRm5GaktpNVdKYkgzK3F6bHhKck5iRW9lMldaV2xhaDRTYTZycUUySHBtZ1NuMFZzNQovaUZLZkpnWDBXTk9xZ0drWkZ4dUt3L0p0UnlFK2FLWkJkdGpwQWVQR09sVFkwajlhVUtOTlF5UHV6eDZPdmY4aEFCU1E2ZlZjVDE5CmNQclZQTTAxUFZyNjFQV1QwZFBueVFDa0owNnlma0c3L21BckFDSDlWSXpYK2lRcVAvbGw4SzNTNDJidnRMNXBwajhUcDNWUFBiVEUKUjRjZVEvZnNyWjlXT1ZlMFYzc1o2a2RQbjcwQnBPZ0gwdE1IR3I2SDFnRHBBZFMvNERFRUVLRG5Kd0NRWXdkQXM4NVdBTks1Qi9YUgpOZWZQQmlDTmdmVG8yY005ZjVwRWR5UlJPbkZwcC84SDNrTDFVRTkrMXQ0QUFBQUFTVVZPUks1Q1lJST0'
}
];
x.__toStr = {}.toString;
null == ArrayBuffer.prototype.slice && (ArrayBuffer.prototype.slice = gw.sliceImpl);
var Vw = new Uint32Array(256);
N.__alpha16 = Vw;
for (var kj = 0; 256 > kj; ) {
var qk = kj++;
N.__alpha16[qk] = Math.ceil(257.00392156862745 * qk);
}
Vw = new Uint8Array(511);
N.__clamp = Vw;
for (kj = 0; 255 > kj; ) (qk = kj++), (N.__clamp[qk] = qk);
for (kj = 255; 511 > kj; ) (qk = kj++), (N.__clamp[qk] = 255);
$g.available = !1;
$g.enabled = !1;
Xa.level = 0;
'undefined' == typeof console && (console = {});
null == console.log && (console.log = function () {});
C.hitTestCanvas = Xg.get_supported() ? window.document.createElement('canvas') : null;
C.hitTestContext = Xg.get_supported() ? C.hitTestCanvas.getContext('2d') : null;
ue.maxTouchPoints = 2;
ue.supportedGestures = null;
ue.supportsGestureEvents = !1;
ue.inputMode = 2;
za.reloadListeners = [];
gb.stopped = !0;
gb.adBlock = !1;
yb.__meta__ = {
statics: { toNullVector: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
La.__meta__ = {
fields: {
__cairo: { SuppressWarnings: ['checkstyle:Dynamic'] },
addEventListener: { SuppressWarnings: ['checkstyle:Dynamic'] },
removeEventListener: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
La.__broadcastEvents = new qa();
La.__instanceCount = 0;
La.__tempStack = new ud(
function () {
return yb.toObjectVector(null);
},
function (a) {
a.set_length(0);
}
);
ya.logicalWidth = 0;
ya.logicalHeight = 0;
ya.windowWidth = 0;
ya.windowHeight = 0;
ya.leftInset = 0;
ya.topInset = 0;
ya.rightInset = 0;
ya.bottomInset = 0;
T.Element = 0;
T.PCData = 1;
T.CData = 2;
T.Comment = 3;
T.DocType = 4;
T.ProcessingInstruction = 5;
T.Document = 6;
P.pool = [];
P.pooli = 0;
Tb.VERTEX = 0;
Tb.FACE = 1;
z.b2_nullFeature = 255;
z.s_incidentEdge = z.makeClipPointVector();
z.s_clipPoints1 = z.makeClipPointVector();
z.s_clipPoints2 = z.makeClipPointVector();
z.s_edgeAO = [];
z.s_edgeBO = [];
z.s_localTangent = new P();
z.s_localNormal = new P();
z.s_planePoint = new P();
z.s_normal = new P();
z.s_tangent = new P();
z.s_tangent2 = new P();
z.s_v11 = new P();
z.s_v12 = new P();
z.b2CollidePolyTempVec = new P();
xe.s_simplex = new ra();
xe.s_saveA = [];
xe.s_saveB = [];
rj.currentID = 0;
lh.e_circles = 1;
lh.e_faceA = 2;
lh.e_faceB = 4;
hf.e_points = 1;
hf.e_faceA = 2;
hf.e_faceB = 4;
Jb.b2_toiCalls = 0;
Jb.b2_toiIters = 0;
Jb.b2_toiMaxIters = 0;
Jb.b2_toiRootIters = 0;
Jb.b2_toiMaxRootIters = 0;
Jb.s_cache = (function (a) {
a = new xk();
a.useCache = !0;
return a;
})(this);
Jb.s_distanceInput = new Jh();
Jb.s_xfA = new Xe();
Jb.s_xfB = new Xe();
Jb.s_fcn = new hf();
Jb.s_distanceOutput = new We();
Wb.initialized = !1;
Wb.distanceInput = new Jh();
Wb.proxyA = new Ng();
Wb.proxyB = new Ng();
Wb.simplexCache = new xk();
Wb.distanceOutput = new We();
Wb.e_unknownShape = -1;
Wb.e_circleShape = 0;
Wb.e_polygonShape = 1;
Wb.e_edgeShape = 2;
Wb.e_shapeTypeCount = 3;
Wb.e_hitCollide = 1;
Wb.e_missCollide = 0;
Wb.e_startsInsideCollide = -1;
Db.s_mat = new yc();
da.VERSION = '2.1alpha';
da.USHRT_MAX = 65535;
da.b2_pi = Math.PI;
da.b2_maxManifoldPoints = 2;
da.b2_aabbExtension = 0.1;
da.b2_aabbMultiplier = 2;
da.b2_linearSlop = 0.005;
da.b2_polygonRadius = 2 * da.b2_linearSlop;
da.b2_angularSlop = 0.011111111111111112 * da.b2_pi;
da.b2_toiSlop = 8 * da.b2_linearSlop;
da.b2_maxTOIContactsPerIsland = 32;
da.b2_maxTOIJointsPerIsland = 32;
da.b2_velocityThreshold = 1;
da.b2_maxLinearCorrection = 0.2;
da.b2_maxAngularCorrection = 0.044444444444444446 * da.b2_pi;
da.b2_maxTranslation = 2;
da.b2_maxTranslationSquared = da.b2_maxTranslation * da.b2_maxTranslation;
da.b2_maxRotation = 0.5 * da.b2_pi;
da.b2_maxRotationSquared = da.b2_maxRotation * da.b2_maxRotation;
da.b2_contactBaumgarte = 0.2;
da.b2_timeToSleep = 0.5;
da.b2_linearSleepTolerance = 0.01;
da.b2_angularSleepTolerance = 0.011111111111111112 * da.b2_pi;
S.b2Vec2_zero = new P(0, 0);
S.b2Mat22_identity = yc.fromVV(new P(1, 0), new P(0, 1));
S.b2Transform_identity = new Xe(S.b2Vec2_zero, S.b2Mat22_identity);
va.s_xf1 = new Xe();
va.e_islandFlag = 1;
va.e_awakeFlag = 2;
va.e_allowSleepFlag = 4;
va.e_bulletFlag = 8;
va.e_fixedRotationFlag = 16;
va.e_activeFlag = 32;
va.e_ignoreGravityFlag = 128;
va.e_alwaysActiveFlag = 256;
va.e_pausedFlag = 512;
va.b2_staticBody = 0;
va.b2_kinematicBody = 1;
va.b2_dynamicBody = 2;
uj.b2_defaultFilter = new uj();
Og.KEY_LOCK = 0;
Og.b2_defaultListener = new Og();
zk.s_evalCP = new ce();
He.e_shapeBit = 1;
He.e_jointBit = 2;
He.e_aabbBit = 4;
He.e_pairBit = 8;
He.e_centerOfMassBit = 16;
He.e_controllerBit = 32;
Hf.tempAABB1 = new ka();
Hf.tempAABB2 = new ka();
Lh.s_impulse = new Dn();
ec.s_timestep2 = new wj();
ec.s_xf = new Xe();
ec.s_backupA = new mh();
ec.s_backupB = new mh();
ec.s_timestep = new wj();
ec.s_queue = [];
ec.s_jointColor = new yk(0.5, 0.8, 0.8);
ec.m_warmStarting = !0;
ec.m_continuousPhysics = !1;
ec.e_newFixture = 1;
ec.e_locked = 2;
ab.e_sensorFlag = 1;
ab.e_continuousFlag = 2;
ab.e_islandFlag = 4;
ab.e_toiFlag = 8;
ab.e_touchingFlag = 16;
ab.e_enabledFlag = 32;
ab.e_filterFlag = 64;
ab.s_input = new Cn();
xj.circlePointA = new P();
xj.circlePointB = new P();
Ie.staticFix = da.b2_maxManifoldPoints;
Ie.s_worldManifold = new sj();
Ie.s_psm = new xj();
Qa.m_xf = new Xe();
Qa.q = new P();
Qa.p = new P();
Qa.e = new P();
Qa.temp1 = new P();
Qa.temp2 = new P();
Qa.m_centroidB = new P();
Qa.mat = new yc();
L.m_xf = new Xe();
L.temp = new P();
L.m_centroidB = new P();
L.m_lowerLimit = new P();
L.m_upperLimit = new P();
L.m_polygonB = new Hn();
L.edgeAxis = new Ek();
L.polygonAxis = new Ek();
L.perp = new P();
L.n = new P();
L.rf = new In();
L.mat = new yc();
L.temp1 = new P();
L.temp2 = new P();
L.ie = [new qh(), new qh()];
L.clipPoints1 = [new qh(), new qh()];
L.clipPoints2 = [new qh(), new qh()];
L.edge0 = new P();
L.edge1 = new P();
L.edge2 = new P();
L.m_normal = new P();
L.m_normal0 = new P();
L.m_normal1 = new P();
L.m_normal2 = new P();
Ub.e_unknownJoint = 0;
Ub.e_revoluteJoint = 1;
Ub.e_prismaticJoint = 2;
Ub.e_distanceJoint = 3;
Ub.e_pulleyJoint = 4;
Ub.e_mouseJoint = 5;
Ub.e_gearJoint = 6;
Ub.e_lineJoint = 7;
Ub.e_weldJoint = 8;
Ub.e_frictionJoint = 9;
Ub.e_inactiveLimit = 0;
Ub.e_atLowerLimit = 1;
Ub.e_atUpperLimit = 2;
Ub.e_equalLimits = 3;
Xc.CENTER = 'center';
wg.b2_minPulleyLength = 2;
bg.tImpulse = new P();
Rg.FPS_ONLY = !1;
Rg.GRAPH_WIDTH = 70;
Rg.XPOS = 69;
Rg.GRAPH_HEIGHT = 50;
Rg.TEXT_HEIGHT = 50;
xg.bg = 51;
xg.fps = 16776960;
xg.ms = 65280;
xg.mem = 65535;
xg.memmax = 16711792;
xg.bgCSS = '#000033';
xg.msCSS = '#00ff00';
xg.fpsCSS = '#ffff00';
xg.memCSS = '#00ffff';
xg.memmaxCSS = '#ff0070';
yg.androidAdmobAppID = '';
yg.whirlID = '';
yg.whirlID1 = '';
yg.iosAdmobAppID = '';
yg.ioswhirlID = '';
yg.ioswhirlID1 = '';
yg.cpmstarID = '';
yg.newgroundsID = '';
yg.newgroundsKey = '';
yg.androidPublicKey =
'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnt4A5BLBCVzy1JVgQwY7BkEGImhFPA2yFKOSX/cam9byQusmPQBzkLnXnLqQfRTroNNGNZ7kh3FR5zEvSbZeyygwxcuHZZTFafUjuF9v7Fpxhw1Q3by7s7Ro8DEmj93f5Bwc5bcuf6Fc9wjzAd4yMX6N6MZfvieVyGvOxZtDz5gjrT8P6NweAw68C9Nzmo7l0p+wqgjMIMR3+09AvAkhvXsW87Hfpdz5VVMqiNqrVQILJ+RgQ+yTlgjYnLZTIQk4Qx6kwpU8s6aFLBeE5q6sPc/TqjFxRo7nzb3K6PFBXK6cMmoT+KfgwtwO9sns16Wb+/MxZUOtlfjLkxBUyiCQHwIDAQAB';
aa.defines = (function (a) {
a = new qa();
a.h.web = '1';
a.h.verbose = '1';
a.h.utf16 = '1';
a.h.use_tilemap = '1';
a.h.unifill = '0.4.1';
a.h.tweenxcore = '1.0.4';
a.h['true'] = '1';
a.h.tools = '7.9.1';
a.h['target.utf16'] = 'true';
a.h['target.unicode'] = 'true';
a.h['target.name'] = 'js';
a.h.stencyl = '4.1.0';
a.h['source-header'] = 'Generated by Haxe 4.2.1+bf9ff69';
a.h.polygonal_ds = '2.1.1';
a.h['polygonal-ds'] = '2.1.1';
a.h.openfl_html5 = '1';
a.h.openfl_enable_handle_error = '1';
a.h['openfl-html5'] = '1';
a.h['openfl-enable-handle-error'] = '1';
a.h.openfl = '9.1.0';
a.h.no_traces = '1';
a.h.no_compilation = '1';
a.h['no-compilation'] = '1';
a.h.mbs = '0.2.1';
a.h.lime_webgl = '1';
a.h.lime_html5 = '1';
a.h.lime_howlerjs = '1';
a.h.lime_dom = '1';
a.h.lime_canvas = '1';
a.h['lime-webgl'] = '1';
a.h['lime-html5'] = '1';
a.h['lime-howlerjs'] = '1';
a.h['lime-dom'] = '1';
a.h['lime-canvas'] = '1';
a.h.lime = '7.9.1';
a.h.js_es5 = '1';
a.h.js_es = '5';
a.h['js-es5'] = '1';
a.h.js = '1';
a.h.html5 = '1';
a.h.hscript = '2.4.0';
a.h.howlerjs = '1';
a.h.haxe_ver = '4.201';
a.h.haxe4 = '1';
a.h.haxe3 = '1';
a.h.haxe = '4.2.1';
a.h.debug_console = '0.0.0';
a.h['debug-console'] = '0.0.0';
a.h.debug = '1';
a.h.dce = 'std';
a.h.cloner = '1.0.0';
a.h.canvas = '1';
a.h.box2d = '0.0.0';
a.h.actuate_manual_update = '1';
a.h.actuate_manual_time = '1';
return a;
})(this);
fd.TYPE_ADS = 1;
fd.TYPE_PURCHASES = 2;
fd.TYPE_GAMECENTER = 3;
fd.TYPE_KEYBOARD = 4;
k.__meta__ = {
fields: {
getLayer: { deprecated: ['Use getLayerById or getLayerByName'] }
}
};
k.DOODAD = '';
k.INTERNAL_SHIFT = 'iSHIFT';
k.INTERNAL_CTRL = 'iCTRL';
k.INTERNAL_COMMAND = 'iCOMMAND';
k.NO_PHYSICS = !1;
k.DEBUG_DRAW = !1;
k.IMG_BASE = '';
k.SCALE = 1;
k.checkedWideScreen = !1;
k.isStandardIOS = !1;
k.isExtendedIOS = !1;
k.isIPhone6 = !1;
k.isIPhone6Plus = !1;
k.isIPhoneX = !1;
k.isIPhoneXMax = !1;
k.isIPhoneXR = !1;
k.isTabletIOS = !1;
k.landscape = !1;
k.limitCameraToScene = !0;
k.paused = !1;
k.started = !1;
k.inFocus = !0;
k.events = new fd();
k.ITERATIONS = 3;
k.physicsScale = 10;
k.preservePadding = !1;
k.paddingLeft = 0;
k.paddingRight = 0;
k.paddingTop = 0;
k.paddingBottom = 0;
k.STEP_SIZE = 10;
k.MS_PER_SEC = 1e3;
k.elapsedTime = 0;
k.timeScale = 1;
k.totalElapsedTime = 0;
k.debug = !1;
D.mouseX = 0;
D.mouseY = 0;
D.mouseWheelDelta = 0;
D.multipleGamepadsEnabled = !1;
D._enabled = !1;
D._joySensitivity = 0.12;
D._joyState = new Za();
D._key = [];
D._controlsToReset = [];
D._controlMap = new qa();
D._keyInput = new Rn(new Za(), function (a) {
return a.keys;
});
D._joyInput = new Qn(new qa(), function (a) {
return a.buttons;
});
pe.DEVICE = 0;
pe.TYPE = 1;
pe.UP = 0;
pe.DOWN = 1;
pe.LEFT = 2;
pe.RIGHT = 3;
pe.AXIS = 0;
pe.HAT = 1;
pe.BUTTON = 2;
pe.BALL = 3;
pe.cacheFromID = new qa();
Na.ANY = -1;
Na.LEFT = 37;
Na.UP = 38;
Na.RIGHT = 39;
Na.DOWN = 40;
Na.ENTER = 13;
Na.CONTROL = 17;
Na.COMMAND = 15;
Na.SPACE = 32;
Na.SHIFT = 16;
Na.BACKSPACE = 8;
Na.CAPS_LOCK = 20;
Na.DELETE = 46;
Na.END = 35;
Na.ESCAPE = 27;
Na.HOME = 36;
Na.INSERT = 45;
Na.TAB = 9;
Na.PAGE_DOWN = 34;
Na.PAGE_UP = 33;
Na.LEFT_SQUARE_BRACKET = 219;
Na.RIGHT_SQUARE_BRACKET = 221;
Na.A = 97;
Na.B = 98;
Na.C = 99;
Na.D = 100;
Na.E = 101;
Na.F = 102;
Na.G = 103;
Na.H = 104;
Na.I = 105;
Na.J = 106;
Na.K = 107;
Na.L = 108;
Na.M = 109;
Na.N = 110;
Na.O = 111;
Na.P = 112;
Na.Q = 113;
Na.R = 114;
Na.S = 115;
Na.T = 116;
Na.U = 117;
Na.V = 118;
Na.W = 119;
Na.X = 120;
Na.Y = 121;
Na.Z = 122;
Na.F1 = 112;
Na.F2 = 113;
Na.F3 = 114;
Na.F4 = 115;
Na.F5 = 116;
Na.F6 = 117;
Na.F7 = 118;
Na.F8 = 119;
Na.F9 = 120;
Na.F10 = 121;
Na.F11 = 122;
Na.F12 = 123;
Na.F13 = 124;
Na.F14 = 125;
Na.F15 = 126;
Na.DIGIT_0 = 48;
Na.DIGIT_1 = 49;
Na.DIGIT_2 = 50;
Na.DIGIT_3 = 51;
Na.DIGIT_4 = 52;
Na.DIGIT_5 = 53;
Na.DIGIT_6 = 54;
Na.DIGIT_7 = 55;
Na.DIGIT_8 = 56;
Na.DIGIT_9 = 57;
Na.NUMPAD_0 = 96;
Na.NUMPAD_1 = 97;
Na.NUMPAD_2 = 98;
Na.NUMPAD_3 = 99;
Na.NUMPAD_4 = 100;
Na.NUMPAD_5 = 101;
Na.NUMPAD_6 = 102;
Na.NUMPAD_7 = 103;
Na.NUMPAD_8 = 104;
Na.NUMPAD_9 = 105;
Na.NUMPAD_ADD = 107;
Na.NUMPAD_DECIMAL = 110;
Na.NUMPAD_DIVIDE = 111;
Na.NUMPAD_ENTER = 108;
Na.NUMPAD_MULTIPLY = 106;
Na.NUMPAD_SUBTRACT = 109;
Na.keyboardNameMap = (function (a) {
a = new qa();
a.h.NUMBER_0 = 48;
a.h.NUMBER_1 = 49;
a.h.NUMBER_2 = 50;
a.h.NUMBER_3 = 51;
a.h.NUMBER_4 = 52;
a.h.NUMBER_5 = 53;
a.h.NUMBER_6 = 54;
a.h.NUMBER_7 = 55;
a.h.NUMBER_8 = 56;
a.h.NUMBER_9 = 57;
a.h.A = 65;
a.h.B = 66;
a.h.C = 67;
a.h.D = 68;
a.h.E = 69;
a.h.F = 70;
a.h.G = 71;
a.h.H = 72;
a.h.I = 73;
a.h.J = 74;
a.h.K = 75;
a.h.L = 76;
a.h.M = 77;
a.h.N = 78;
a.h.O = 79;
a.h.P = 80;
a.h.Q = 81;
a.h.R = 82;
a.h.S = 83;
a.h.T = 84;
a.h.U = 85;
a.h.V = 86;
a.h.W = 87;
a.h.X = 88;
a.h.Y = 89;
a.h.Z = 90;
a.h.NUMPAD_0 = 96;
a.h.NUMPAD_1 = 97;
a.h.NUMPAD_2 = 98;
a.h.NUMPAD_3 = 99;
a.h.NUMPAD_4 = 100;
a.h.NUMPAD_5 = 101;
a.h.NUMPAD_6 = 102;
a.h.NUMPAD_7 = 103;
a.h.NUMPAD_8 = 104;
a.h.NUMPAD_9 = 105;
a.h.NUMPAD_MULTIPLY = 106;
a.h.NUMPAD_ADD = 107;
a.h.NUMPAD_ENTER = 108;
a.h.NUMPAD_SUBTRACT = 109;
a.h.NUMPAD_DECIMAL = 110;
a.h.NUMPAD_DIVIDE = 111;
a.h.F1 = 112;
a.h.F2 = 113;
a.h.F3 = 114;
a.h.F4 = 115;
a.h.F5 = 116;
a.h.F6 = 117;
a.h.F7 = 118;
a.h.F8 = 119;
a.h.F9 = 120;
a.h.F10 = 121;
a.h.F11 = 122;
a.h.F12 = 123;
a.h.F13 = 124;
a.h.F14 = 125;
a.h.F15 = 126;
a.h.BACKSPACE = 8;
a.h.TAB = 9;
a.h.ALTERNATE = 18;
a.h.ENTER = 13;
a.h.COMMAND = 15;
a.h.SHIFT = 16;
a.h.CONTROL = 17;
a.h.BREAK = 19;
a.h.CAPS_LOCK = 20;
a.h.NUMPAD = 21;
a.h.ESCAPE = 27;
a.h.SPACE = 32;
a.h.PAGE_UP = 33;
a.h.PAGE_DOWN = 34;
a.h.END = 35;
a.h.HOME = 36;
a.h.LEFT = 37;
a.h.RIGHT = 39;
a.h.UP = 38;
a.h.DOWN = 40;
a.h.INSERT = 45;
a.h.DELETE = 46;
a.h.NUMLOCK = 144;
a.h.SEMICOLON = 186;
a.h.EQUAL = 187;
a.h.COMMA = 188;
a.h.MINUS = 189;
a.h.PERIOD = 190;
a.h.SLASH = 191;
a.h.BACKQUOTE = 192;
a.h.LEFTBRACKET = 219;
a.h.BACKSLASH = 220;
a.h.RIGHTBRACKET = 221;
a.h.QUOTE = 222;
return a;
})(this);
na.__pool = new ud(
function () {
return new na();
},
function (a) {
a.setTo(0, 0);
}
);
fa.__pool = new ud(
function () {
return new fa();
},
function (a) {
a.setTo(0, 0, 0, 0);
}
);
d.FRONT = 0;
d.MIDDLE = 1;
d.BACK = 2;
d.CHANNELS = 32;
d.mpx = 0;
d.mpy = 0;
d.mrx = 0;
d.mry = 0;
d.dummyVec = new P();
d.imageApiAutoscale = !0;
d.dummyRect = new fa(0, 0, 1, 1);
d.dummyPoint = new na(0, 0);
d.BASE_64_ENCODINGS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
d.BASE_64_PADDING = '=';
th.fieldMaps = new qa();
Uc.AD_USER_OPEN = 100;
Uc.AD_USER_CLOSE = 101;
Uc.AD_LOADED = 102;
Uc.AD_FAILED = 103;
Uc.AD_CLICKED = 104;
Uc.FULL_AD_USER_OPEN = 105;
Uc.FULL_AD_USER_CLOSE = 106;
Uc.FULL_AD_LOADED = 107;
Uc.FULL_AD_FAILED = 108;
Uc.FULL_AD_CLICKED = 109;
Uc.PURCHASE_READY = 200;
Uc.PURCHASE_SUCCESS = 201;
Uc.PURCHASE_FAIL = 202;
Uc.PURCHASE_RESTORE = 203;
Uc.PURCHASE_CANCEL = 204;
Uc.PURCHASE_PRODUCTS_VERIFIED = 205;
Uc.PURCHASE_PRODUCT_VALIDATED = 206;
Uc.GAME_CENTER_READY = 300;
Uc.GAME_CENTER_SCORE = 301;
Uc.GAME_CENTER_ACHIEVEMENT = 302;
Uc.GAME_CENTER_ACHIEVEMENT_RESET = 303;
Uc.GAME_CENTER_READY_FAIL = 304;
Uc.GAME_CENTER_SCORE_FAIL = 305;
Uc.GAME_CENTER_ACHIEVEMENT_FAIL = 306;
Uc.GAME_CENTER_ACHIEVEMENT_RESET_FAIL = 307;
Uc.KEYBOARD_EVENT = 400;
Uc.KEYBOARD_DONE = 401;
Uc.KEYBOARD_SHOW = 402;
Uc.KEYBOARD_HIDE = 403;
bb.TOUCH_POINT = 1;
bb.GESTURE = 2;
bb.GESTURE_CAPTURE = 3;
bb.PAN_X = 1;
bb.PAN_Y = 2;
bb.PAN_XY = 3;
bb.READY = 0;
bb.BEGIN = 1;
bb.TWO_FINGER_MOVE = 2;
bb.MOVE = 4;
bb.R2D = 180 / Math.PI;
bb.SWIPE_SCROLL_TIME = 2;
bb.SWIPE_SAMPLE_TIME = 0.2;
bb.VELOCITY_RATIO = 0.25;
bb.touchEvents =
'touchBegin touchEnd touchMove touchOver touchOut touchRollOver touchRollOut touchTap'.split(
' '
);
bb.mouseEvents =
'mouseDown mouseUp mouseMove mouseOver mouseOut rollOver rollOut click'.split(' ');
bb.geTouchEvents = ['touchBegin', 'touchEnd', 'touchMove', 'touchOut'];
bb.geMouseEvents = ['mouseDown', 'mouseUp', 'mouseMove', 'mouseOut'];
bb.initialized = !1;
bb.moveToleSqr = 1;
bb.MAP =
'mouseDown rox_touch_begin mouseUp rox_touch_end mouseMove rox_touch_move mouseOver rox_touch_over mouseOut rox_touch_out rollOver rox_touch_roll_over rollOut rox_touch_roll_in click rox_touch_tap touchBegin rox_touch_begin touchEnd rox_touch_end touchMove rox_touch_move touchOver rox_touch_over touchOut rox_touch_out touchRollOver rox_touch_roll_over touchRollOut rox_touch_roll_in touchTap rox_touch_tap'.split(
' '
);
bb.typeMap = (function (a) {
a = new qa();
for (var b = 0, c = bb.MAP.length >> 1; b < c; ) {
var d = b++;
a.h[bb.MAP[d << 1]] = bb.MAP[(d << 1) + 1];
}
return a;
})(this);
oa.ACTIVATE = 'activate';
oa.ADDED = 'added';
oa.ADDED_TO_STAGE = 'addedToStage';
oa.CANCEL = 'cancel';
oa.CHANGE = 'change';
oa.CLEAR = 'clear';
oa.CLOSE = 'close';
oa.COMPLETE = 'complete';
oa.CONNECT = 'connect';
oa.CONTEXT3D_CREATE = 'context3DCreate';
oa.COPY = 'copy';
oa.CUT = 'cut';
oa.DEACTIVATE = 'deactivate';
oa.ENTER_FRAME = 'enterFrame';
oa.EXIT_FRAME = 'exitFrame';
oa.FRAME_CONSTRUCTED = 'frameConstructed';
oa.FRAME_LABEL = 'frameLabel';
oa.FULLSCREEN = 'fullScreen';
oa.ID3 = 'id3';
oa.INIT = 'init';
oa.MOUSE_LEAVE = 'mouseLeave';
oa.OPEN = 'open';
oa.PASTE = 'paste';
oa.REMOVED = 'removed';
oa.REMOVED_FROM_STAGE = 'removedFromStage';
oa.RENDER = 'render';
oa.RESIZE = 'resize';
oa.SCROLL = 'scroll';
oa.SELECT = 'select';
oa.SELECT_ALL = 'selectAll';
oa.SOUND_COMPLETE = 'soundComplete';
oa.TAB_CHILDREN_CHANGE = 'tabChildrenChange';
oa.TAB_ENABLED_CHANGE = 'tabEnabledChange';
oa.TAB_INDEX_CHANGE = 'tabIndexChange';
oa.TEXTURE_READY = 'textureReady';
oa.UNLOAD = 'unload';
Yc.TOUCH_BEGIN = 'rox_touch_begin';
Yc.TOUCH_END = 'rox_touch_end';
Yc.TOUCH_MOVE = 'rox_touch_move';
Yc.TOUCH_OVER = 'rox_touch_over';
Yc.TOUCH_OUT = 'rox_touch_out';
Yc.TOUCH_ROLL_OVER = 'rox_touch_roll_over';
Yc.TOUCH_ROLL_OUT = 'rox_touch_roll_in';
Yc.TOUCH_TAP = 'rox_touch_tap';
Yc.GESTURE_TAP = 'rox_gesture_tap';
Yc.GESTURE_LONG_PRESS = 'rox_gesture_long_press';
Yc.GESTURE_PAN = 'rox_gesture_pan';
Yc.GESTURE_SWIPE = 'rox_gesture_swipe';
Yc.GESTURE_BEGIN = 'rox_gesture_begin';
Yc.GESTURE_PINCH = 'rox_gesture_pinch';
Yc.GESTURE_ROTATION = 'rox_gesture_rotation';
Yc.GESTURE_END = 'rox_gesture_end';
fl.stringBlendMap = (function (a) {
a = new qa();
a.h.add = 0;
a.h.alpha = 1;
a.h.darken = 2;
a.h.difference = 3;
a.h.erase = 4;
a.h.hardlight = 5;
a.h.invert = 6;
a.h.lighten = 8;
a.h.multiply = 9;
a.h.normal = 10;
a.h.overlay = 11;
a.h.screen = 12;
a.h.subtract = 14;
return a;
})(this);
W.drawnStringCache = new qa();
W.drawnStringCacheKeys = [];
gd.MAX_TEXTURE_CAP = 4096;
Gd._1X = new Gd(1);
Gd._1_5X = new Gd(1.5);
Gd._2X = new Gd(2);
Gd._3X = new Gd(3);
Gd._4X = new Gd(4);
zj.NO_SCALING = 0;
zj.FULLSCREEN = 1;
zj.STRETCH_TO_FIT = 2;
zj.SCALE_TO_FIT_LETTERBOX = 3;
zj.SCALE_TO_FIT_FILL = 4;
zj.SCALE_TO_FIT_FULLSCREEN = 5;
kf._storedFonts = new qa();
kf.ZERO_POINT = new na();
uh.fontData =
" 36000000000000000000!26101010001000\"46101010100000000000000000#66010100111110010100111110010100000000$56001000111011000001101110000100%66100100000100001000010000010010000000&66011000100000011010100100011010000000'26101000000000(36010100100100010000)36100010010010100000*46000010100100101000000000+46000001001110010000000000,36000000000000010100-46000000001110000000000000.26000000001000/66000010000100001000010000100000000000056011001001010010100100110000000156011000010000100001000010000000256111000001001100100001111000000356111000001001100000101110000000456100101001010010011100001000000556111101000011100000101110000000656011001000011100100100110000000756111000001000010001100001000000856011001001001100100100110000000956011001001010010011100001000000:26001000100000;26001000101000<46001001001000010000100000=46000011100000111000000000>46100001000010010010000000?56111000001001100000000100000000@66011100100010101110101010011100000000A56011001001010010111101001000000B56111001001011100100101110000000C56011001001010000100100110000000D56111001001010010100101110000000E56111101000011000100001111000000F56111101000010000110001000000000G56011001000010110100100111000000H56100101001011110100101001000000I26101010101000J56000100001000010100100110000000K56100101001010010111001001000000L46100010001000100011100000M66100010100010110110101010100010000000N56100101001011010101101001000000O56011001001010010100100110000000P56111001001010010111001000000000Q56011001001010010100100110000010R56111001001010010111001001000000S56011101000001100000101110000000T46111001000100010001000000U56100101001010010100100110000000V56100101001010010101000100000000W66100010100010101010110110100010000000X56100101001001100100101001000000Y56100101001010010011100001001100Z56111100001001100100001111000000[36110100100100110000}46110001000010010011000000]36110010010010110000^46010010100000000000000000_46000000000000000011110000'26101000000000a56000000111010010100100111000000b56100001110010010100101110000000c46000001101000100001100000d56000100111010010100100111000000e56000000110010110110000110000000f46011010001000110010000000g5700000011001001010010011100001001100h56100001110010010100101001000000i26100010101000j37010000010010010010100k56100001001010010111001001000000l26101010101000m66000000111100101010101010101010000000n56000001110010010100101001000000o56000000110010010100100110000000p5700000111001001010010111001000010000q5700000011101001010010011100001000010r46000010101100100010000000s56000000111011000001101110000000t46100011001000100001100000u56000001001010010100100111000000v56000001001010010101000100000000w66000000101010101010101010011110000000x56000001001010010011001001000000y5700000100101001010010011100001001100z56000001111000100010001111000000{46011001001000010001100000|26101010101000}46110001000010010011000000~56010101010000000000000000000000\\46111010101010101011100000";
Wn.LEFT = 1;
Wn.RIGHT = 2;
Wn.CENTER = 3;
qd.CONTEXT_LOST = 'glcontextlost';
qd.CONTEXT_RESTORED = 'glcontextrestored';
qd.vertexShader =
'\n#ifdef GL_ES\n\tprecision mediump float;\n#endif\n\nattribute vec4 aVertex;\n\nattribute vec2 aTexCoord;\nvarying vec2 vTexCoord;\n\nvoid main() {\n\tvTexCoord = aTexCoord;\n\tgl_Position = vec4(aVertex.x, aVertex.y, 0.0, 1.0);\n}';
ub.IN = 'in';
ub.OUT = 'out';
ub.THROUGH = 'through';
Pe.SLIDE_UP = 'up';
Pe.SLIDE_DOWN = 'down';
Pe.SLIDE_LEFT = 'left';
Pe.SLIDE_RIGHT = 'right';
G.BOOLEAN = new tf('boolean', 1);
G.INTEGER = new tf('integer', 4);
G.FLOAT = new tf('float', 4);
G.STRING = new tf('string', 4);
G.LIST = new tf('list', 4);
G.DYNAMIC = new tf('dynamic', 8);
G.NULL = new tf('null', 0);
Th.basicTypes = (function (a) {
a = [];
a.push(G.BOOLEAN);
a.push(G.INTEGER);
a.push(G.FLOAT);
a.push(G.STRING);
a.push(G.LIST);
a.push(G.DYNAMIC);
a.push(G.NULL);
vc.initializeType();
Oc.initializeType();
$c.initializeType();
a.push(vc.MBS_HEADER);
a.push(Oc.MBS_TYPE_INFO);
a.push($c.MBS_FIELD_INFO);
return a;
})(this);
tb.GROUP_OFFSET = 1e6;
tb.manifold = new sj();
Fa.INHERIT_ID = -1e3;
Fa.REGION_ID = -2;
Fa.PLAYER_ID = 0;
Fa.TERRAIN_ID = 1;
Fa.DOODAD_ID = 2;
Fa.ACTOR_ID = 3;
Ha.fixedCenter = 0;
Ha.showWherePressed = 1;
Ha.viewOffsetX = 0;
Ha.viewOffsetY = 0;
Ha.initialized = !1;
Mn.NORMAL_PHYSICS = 0;
Mn.SIMPLE_PHYSICS = 1;
Mn.MINIMAL_PHYSICS = 2;
pd.UNSET_ID = -1;
il.MAX_VERTICES = 200;
Xb.muted = !1;
Xb.masterVolume = 1;
Pg.UNSET_ID = -1;
se.allAnimations = [];
uc.recycledCollisions = [];
uc.collisionResponses = new Za();
Od.freedCollisionPoints = [];
Kf.WHITE = -1;
Kf.TRANSPARENT = -2;
Cf.infoArray = [];
Je.NO_AUTOTILE_DATA = 0;
Je.CORNER_TL = 1;
Je.CORNER_TR = 2;
Je.CORNER_BR = 4;
Je.CORNER_BL = 8;
Je.SIDE_L = 16;
Je.SIDE_T = 32;
Je.SIDE_R = 64;
Je.SIDE_B = 128;
Nc.dummyRect = new fa();
me.TILESET_CACHE_MULTIPLIER = 1e6;
me.cacheSource = new Za();
me.autotileFlagPointMap = (function (a) {
a = new Za();
var b = Je.CORNER_TL,
c = new na(-1, -1);
a.h[b] = c;
b = Je.CORNER_TR;
c = new na(1, -1);
a.h[b] = c;
b = Je.CORNER_BL;
c = new na(-1, 1);
a.h[b] = c;
b = Je.CORNER_BR;
c = new na(1, 1);
a.h[b] = c;
b = Je.SIDE_T;
c = new na(0, -1);
a.h[b] = c;
b = Je.SIDE_B;
c = new na(0, 1);
a.h[b] = c;
b = Je.SIDE_L;
c = new na(-1, 0);
a.h[b] = c;
b = Je.SIDE_R;
c = new na(1, 0);
a.h[b] = c;
return a;
})(this);
sf.temp = new fa();
Pc.BLACK = -16777216;
Pc.WHITE = -1;
Pc.RED = -65536;
Pc.GREEN = -16711936;
Pc.BLUE = -16776961;
Pc.CYAN = -16711681;
Pc.MAGENTA = -65281;
Pc.YELLOW = -256;
$a.LUMA_R = 0.212671;
$a.LUMA_G = 0.71516;
$a.LUMA_B = 0.072169;
$a.LUMA_R2 = 0.3086;
$a.LUMA_G2 = 0.6094;
$a.LUMA_B2 = 0.082;
$a.INV3 = 0.3333333333333333;
Id.BLACK = 0;
Id.WHITE = 16777215;
Id.RED = 16711680;
Id.GREEN = 65280;
Id.BLUE = 255;
Id.CYAN = 65535;
Id.MAGENTA = 16711935;
Id.YELLOW = 16776960;
lf.__meta__ = {
fields: { clone: { SuppressWarnings: ['checkstyle:FieldDocComment'] } }
};
Wh.__identity = new Wh();
Ia.__meta__ = {
fields: {
equals: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
to3DString: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
toMozString: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
}
};
Ia.__identity = new Ia();
Ia.__pool = new ud(
function () {
return new Ia();
},
function (a) {
a.identity();
}
);
Ia.__matrix3 = new Wh();
Kc.__pool = new ud(
function () {
return new Kc();
},
function (a) {
a.__identity();
}
);
X.INTEGER_MAX = 1e8;
X.NUMBER_MAX_VALUE = 1.79769313486231e308;
X.blackColor = -16777216;
X.rate = 1;
X.camera = new na();
X.cloner = new Ln();
X._bitmap = new qa();
X._seed = 0;
X._volume = 1;
X._pan = 0;
X._soundTransform = new lf();
X.DEG = 57.29577951308402;
X.RAD = 0.01745329251994278;
X.point = new na();
X.point2 = new na();
X.zero = new na();
X.rect = new fa();
X.matrix = new Ia();
X.sprite = new Ca();
X.collision = new uc();
J.linear = new Il();
J.sineIn = new Vl();
J.sineOut = new Xl();
J.sineInOut = new Wl();
J.sineOutIn = new Yl();
J.quadIn = new Jl();
J.quadOut = new Ll();
J.quadInOut = new Kl();
J.quadOutIn = new Ml();
J.cubicIn = new wl();
J.cubicOut = new yl();
J.cubicInOut = new xl();
J.cubicOutIn = new zl();
J.quartIn = new Nl();
J.quartOut = new Pl();
J.quartInOut = new Ol();
J.quartOutIn = new Ql();
J.quintIn = new Rl();
J.quintOut = new Tl();
J.quintInOut = new Sl();
J.quintOutIn = new Ul();
J.expoIn = new El();
J.expoOut = new Gl();
J.expoInOut = new Fl();
J.expoOutIn = new Hl();
J.circIn = new sl();
J.circOut = new ul();
J.circInOut = new tl();
J.circOutIn = new vl();
J.bounceIn = new ol();
J.bounceOut = new ql();
J.bounceInOut = new pl();
J.bounceOutIn = new rl();
J.backIn = new kl();
J.backOut = new ml();
J.backInOut = new ll();
J.backOutIn = new nl();
J.elasticIn = new Al();
J.elasticOut = new Cl();
J.elasticInOut = new Bl();
J.elasticOutIn = new Dl();
J.warpOut = new am();
J.warpIn = new Zl();
J.warpInOut = new $l();
J.warpOutIn = new bm();
Xh.PI = 3.141592653589793;
Xh.PI_H = 1.5707963267948966;
Xh.LN_2 = 0.6931471805599453;
Xh.LN_2_10 = 6.931471805599453;
Xh.overshoot = 1.70158;
Xh.amplitude = 1;
Xh.period = 3e-4;
vb.activeObjects = [];
vb.finishedObjects = [];
Be.USE_CACHE = !1;
Be.USE_ENUM_INDEX = !1;
Be.BASE64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:';
Ke.DEFAULT_RESOLVER = new dm();
Ke.BASE64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:';
zh.CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
zh.BYTES = hb.ofString(zh.CHARS);
Zd.i64tmp = new cb(0, 0);
Zd.helper = new DataView(new ArrayBuffer(8));
kh.escapes = (function (a) {
a = new qa();
a.h.lt = '<';
a.h.gt = '>';
a.h.amp = '&';
a.h.quot = '"';
a.h.apos = "'";
return a;
})(this);
Ce.LEN_EXTRA_BITS_TBL = [
0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, -1,
-1
];
Ce.LEN_BASE_VAL_TBL = [
3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115,
131, 163, 195, 227, 258
];
Ce.DIST_EXTRA_BITS_TBL = [
0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12,
13, 13, -1, -1
];
Ce.DIST_BASE_VAL_TBL = [
1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537,
2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577
];
Ce.CODE_LENGTHS_POS = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
Ua.OPTION_REVOKE_URL = 1;
Ua.activeRequests = 0;
Ua.requestLimit = 17;
Ua.requestQueue = new K();
pb.dummyCharacter = '\u007f';
pb.windowID = 0;
Qf.DICTIONARY = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'.split('');
Qf.EXTENDED_DICTIONARY = (function (a) {
a = [];
for (var b = 0, c = Qf.DICTIONARY; b < c.length; ) {
var d = c[b];
++b;
for (var f = 0, g = Qf.DICTIONARY; f < g.length; ) {
var k = g[f];
++f;
a.push(d + k);
}
}
return a;
})(this);
af.MUL_TABLE = [
1, 171, 205, 293, 57, 373, 79, 137, 241, 27, 391, 357, 41, 19, 283, 265, 497, 469, 443, 421,
25, 191, 365, 349, 335, 161, 155, 149, 9, 278, 269, 261, 505, 245, 475, 231, 449, 437, 213,
415, 405, 395, 193, 377, 369, 361, 353, 345, 169, 331, 325, 319, 313, 307, 301, 37, 145,
285, 281, 69, 271, 267, 263, 259, 509, 501, 493, 243, 479, 118, 465, 459, 113, 446, 55, 435,
429, 423, 209, 413, 51, 403, 199, 393, 97, 3, 379, 375, 371, 367, 363, 359, 355, 351, 347,
43, 85, 337, 333, 165, 327, 323, 5, 317, 157, 311, 77, 305, 303, 75, 297, 294, 73, 289, 287,
71, 141, 279, 277, 275, 68, 135, 67, 133, 33, 262, 260, 129, 511, 507, 503, 499, 495, 491,
61, 121, 481, 477, 237, 235, 467, 232, 115, 457, 227, 451, 7, 445, 221, 439, 218, 433, 215,
427, 425, 211, 419, 417, 207, 411, 409, 203, 202, 401, 399, 396, 197, 49, 389, 387, 385,
383, 95, 189, 47, 187, 93, 185, 23, 183, 91, 181, 45, 179, 89, 177, 11, 175, 87, 173, 345,
343, 341, 339, 337, 21, 167, 83, 331, 329, 327, 163, 81, 323, 321, 319, 159, 79, 315, 313,
39, 155, 309, 307, 153, 305, 303, 151, 75, 299, 149, 37, 295, 147, 73, 291, 145, 289, 287,
143, 285, 71, 141, 281, 35, 279, 139, 69, 275, 137, 273, 17, 271, 135, 269, 267, 133, 265,
33, 263, 131, 261, 130, 259, 129, 257, 1
];
af.SHG_TABLE = [
0, 9, 10, 11, 9, 12, 10, 11, 12, 9, 13, 13, 10, 9, 13, 13, 14, 14, 14, 14, 10, 13, 14, 14,
14, 13, 13, 13, 9, 14, 14, 14, 15, 14, 15, 14, 15, 15, 14, 15, 15, 15, 14, 15, 15, 15, 15,
15, 14, 15, 15, 15, 15, 15, 15, 12, 14, 15, 15, 13, 15, 15, 15, 15, 16, 16, 16, 15, 16, 14,
16, 16, 14, 16, 13, 16, 16, 16, 15, 16, 13, 16, 15, 16, 14, 9, 16, 16, 16, 16, 16, 16, 16,
16, 16, 13, 14, 16, 16, 15, 16, 16, 10, 16, 15, 16, 14, 16, 16, 14, 16, 16, 14, 16, 16, 14,
15, 16, 16, 16, 14, 15, 14, 15, 13, 16, 16, 15, 17, 17, 17, 17, 17, 17, 14, 15, 17, 17, 16,
16, 17, 16, 15, 17, 16, 17, 11, 17, 16, 17, 16, 17, 16, 17, 17, 16, 17, 17, 16, 17, 17, 16,
16, 17, 17, 17, 16, 14, 17, 17, 17, 17, 15, 16, 14, 16, 15, 16, 13, 16, 15, 16, 14, 16, 15,
16, 12, 16, 15, 16, 17, 17, 17, 17, 17, 13, 16, 15, 17, 17, 17, 16, 15, 17, 17, 17, 16, 15,
17, 17, 14, 16, 17, 17, 16, 17, 17, 16, 15, 17, 16, 14, 17, 16, 15, 17, 16, 17, 17, 16, 17,
15, 16, 17, 14, 17, 16, 15, 17, 16, 17, 13, 17, 16, 17, 17, 16, 17, 14, 17, 16, 17, 16, 17,
16, 17, 9
];
Sf.minCodePoint = 0;
Sf.maxCodePoint = 1114111;
Sf.minHighSurrogate = 55296;
Sf.maxHighSurrogate = 56319;
Sf.minLowSurrogate = 56320;
Sf.maxLowSurrogate = 57343;
t.DEPTH_BUFFER_BIT = 256;
t.STENCIL_BUFFER_BIT = 1024;
t.COLOR_BUFFER_BIT = 16384;
t.POINTS = 0;
t.LINES = 1;
t.LINE_LOOP = 2;
t.LINE_STRIP = 3;
t.TRIANGLES = 4;
t.TRIANGLE_STRIP = 5;
t.TRIANGLE_FAN = 6;
t.ZERO = 0;
t.ONE = 1;
t.SRC_COLOR = 768;
t.ONE_MINUS_SRC_COLOR = 769;
t.SRC_ALPHA = 770;
t.ONE_MINUS_SRC_ALPHA = 771;
t.DST_ALPHA = 772;
t.ONE_MINUS_DST_ALPHA = 773;
t.DST_COLOR = 774;
t.ONE_MINUS_DST_COLOR = 775;
t.SRC_ALPHA_SATURATE = 776;
t.FUNC_ADD = 32774;
t.BLEND_EQUATION = 32777;
t.BLEND_EQUATION_RGB = 32777;
t.BLEND_EQUATION_ALPHA = 34877;
t.FUNC_SUBTRACT = 32778;
t.FUNC_REVERSE_SUBTRACT = 32779;
t.BLEND_DST_RGB = 32968;
t.BLEND_SRC_RGB = 32969;
t.BLEND_DST_ALPHA = 32970;
t.BLEND_SRC_ALPHA = 32971;
t.CONSTANT_COLOR = 32769;
t.ONE_MINUS_CONSTANT_COLOR = 32770;
t.CONSTANT_ALPHA = 32771;
t.ONE_MINUS_CONSTANT_ALPHA = 32772;
t.BLEND_COLOR = 32773;
t.ARRAY_BUFFER = 34962;
t.ELEMENT_ARRAY_BUFFER = 34963;
t.ARRAY_BUFFER_BINDING = 34964;
t.ELEMENT_ARRAY_BUFFER_BINDING = 34965;
t.STREAM_DRAW = 35040;
t.STATIC_DRAW = 35044;
t.DYNAMIC_DRAW = 35048;
t.BUFFER_SIZE = 34660;
t.BUFFER_USAGE = 34661;
t.CURRENT_VERTEX_ATTRIB = 34342;
t.FRONT = 1028;
t.BACK = 1029;
t.FRONT_AND_BACK = 1032;
t.CULL_FACE = 2884;
t.BLEND = 3042;
t.DITHER = 3024;
t.STENCIL_TEST = 2960;
t.DEPTH_TEST = 2929;
t.SCISSOR_TEST = 3089;
t.POLYGON_OFFSET_FILL = 32823;
t.SAMPLE_ALPHA_TO_COVERAGE = 32926;
t.SAMPLE_COVERAGE = 32928;
t.NO_ERROR = 0;
t.INVALID_ENUM = 1280;
t.INVALID_VALUE = 1281;
t.INVALID_OPERATION = 1282;
t.OUT_OF_MEMORY = 1285;
t.CW = 2304;
t.CCW = 2305;
t.LINE_WIDTH = 2849;
t.ALIASED_POINT_SIZE_RANGE = 33901;
t.ALIASED_LINE_WIDTH_RANGE = 33902;
t.CULL_FACE_MODE = 2885;
t.FRONT_FACE = 2886;
t.DEPTH_RANGE = 2928;
t.DEPTH_WRITEMASK = 2930;
t.DEPTH_CLEAR_VALUE = 2931;
t.DEPTH_FUNC = 2932;
t.STENCIL_CLEAR_VALUE = 2961;
t.STENCIL_FUNC = 2962;
t.STENCIL_FAIL = 2964;
t.STENCIL_PASS_DEPTH_FAIL = 2965;
t.STENCIL_PASS_DEPTH_PASS = 2966;
t.STENCIL_REF = 2967;
t.STENCIL_VALUE_MASK = 2963;
t.STENCIL_WRITEMASK = 2968;
t.STENCIL_BACK_FUNC = 34816;
t.STENCIL_BACK_FAIL = 34817;
t.STENCIL_BACK_PASS_DEPTH_FAIL = 34818;
t.STENCIL_BACK_PASS_DEPTH_PASS = 34819;
t.STENCIL_BACK_REF = 36003;
t.STENCIL_BACK_VALUE_MASK = 36004;
t.STENCIL_BACK_WRITEMASK = 36005;
t.VIEWPORT = 2978;
t.SCISSOR_BOX = 3088;
t.COLOR_CLEAR_VALUE = 3106;
t.COLOR_WRITEMASK = 3107;
t.UNPACK_ALIGNMENT = 3317;
t.PACK_ALIGNMENT = 3333;
t.MAX_TEXTURE_SIZE = 3379;
t.MAX_VIEWPORT_DIMS = 3386;
t.SUBPIXEL_BITS = 3408;
t.RED_BITS = 3410;
t.GREEN_BITS = 3411;
t.BLUE_BITS = 3412;
t.ALPHA_BITS = 3413;
t.DEPTH_BITS = 3414;
t.STENCIL_BITS = 3415;
t.POLYGON_OFFSET_UNITS = 10752;
t.POLYGON_OFFSET_FACTOR = 32824;
t.TEXTURE_BINDING_2D = 32873;
t.SAMPLE_BUFFERS = 32936;
t.SAMPLES = 32937;
t.SAMPLE_COVERAGE_VALUE = 32938;
t.SAMPLE_COVERAGE_INVERT = 32939;
t.NUM_COMPRESSED_TEXTURE_FORMATS = 34466;
t.COMPRESSED_TEXTURE_FORMATS = 34467;
t.DONT_CARE = 4352;
t.FASTEST = 4353;
t.NICEST = 4354;
t.GENERATE_MIPMAP_HINT = 33170;
t.BYTE = 5120;
t.UNSIGNED_BYTE = 5121;
t.SHORT = 5122;
t.UNSIGNED_SHORT = 5123;
t.INT = 5124;
t.UNSIGNED_INT = 5125;
t.FLOAT = 5126;
t.DEPTH_COMPONENT = 6402;
t.ALPHA = 6406;
t.RGB = 6407;
t.RGBA = 6408;
t.LUMINANCE = 6409;
t.LUMINANCE_ALPHA = 6410;
t.UNSIGNED_SHORT_4_4_4_4 = 32819;
t.UNSIGNED_SHORT_5_5_5_1 = 32820;
t.UNSIGNED_SHORT_5_6_5 = 33635;
t.FRAGMENT_SHADER = 35632;
t.VERTEX_SHADER = 35633;
t.MAX_VERTEX_ATTRIBS = 34921;
t.MAX_VERTEX_UNIFORM_VECTORS = 36347;
t.MAX_VARYING_VECTORS = 36348;
t.MAX_COMBINED_TEXTURE_IMAGE_UNITS = 35661;
t.MAX_VERTEX_TEXTURE_IMAGE_UNITS = 35660;
t.MAX_TEXTURE_IMAGE_UNITS = 34930;
t.MAX_FRAGMENT_UNIFORM_VECTORS = 36349;
t.SHADER_TYPE = 35663;
t.DELETE_STATUS = 35712;
t.LINK_STATUS = 35714;
t.VALIDATE_STATUS = 35715;
t.ATTACHED_SHADERS = 35717;
t.ACTIVE_UNIFORMS = 35718;
t.ACTIVE_ATTRIBUTES = 35721;
t.SHADING_LANGUAGE_VERSION = 35724;
t.CURRENT_PROGRAM = 35725;
t.NEVER = 512;
t.LESS = 513;
t.EQUAL = 514;
t.LEQUAL = 515;
t.GREATER = 516;
t.NOTEQUAL = 517;
t.GEQUAL = 518;
t.ALWAYS = 519;
t.KEEP = 7680;
t.REPLACE = 7681;
t.INCR = 7682;
t.DECR = 7683;
t.INVERT = 5386;
t.INCR_WRAP = 34055;
t.DECR_WRAP = 34056;
t.VENDOR = 7936;
t.RENDERER = 7937;
t.VERSION = 7938;
t.EXTENSIONS = 7939;
t.NEAREST = 9728;
t.LINEAR = 9729;
t.NEAREST_MIPMAP_NEAREST = 9984;
t.LINEAR_MIPMAP_NEAREST = 9985;
t.NEAREST_MIPMAP_LINEAR = 9986;
t.LINEAR_MIPMAP_LINEAR = 9987;
t.TEXTURE_MAG_FILTER = 10240;
t.TEXTURE_MIN_FILTER = 10241;
t.TEXTURE_WRAP_S = 10242;
t.TEXTURE_WRAP_T = 10243;
t.TEXTURE_2D = 3553;
t.TEXTURE = 5890;
t.TEXTURE_CUBE_MAP = 34067;
t.TEXTURE_BINDING_CUBE_MAP = 34068;
t.TEXTURE_CUBE_MAP_POSITIVE_X = 34069;
t.TEXTURE_CUBE_MAP_NEGATIVE_X = 34070;
t.TEXTURE_CUBE_MAP_POSITIVE_Y = 34071;
t.TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072;
t.TEXTURE_CUBE_MAP_POSITIVE_Z = 34073;
t.TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074;
t.MAX_CUBE_MAP_TEXTURE_SIZE = 34076;
t.TEXTURE0 = 33984;
t.TEXTURE1 = 33985;
t.TEXTURE2 = 33986;
t.TEXTURE3 = 33987;
t.TEXTURE4 = 33988;
t.TEXTURE5 = 33989;
t.TEXTURE6 = 33990;
t.TEXTURE7 = 33991;
t.TEXTURE8 = 33992;
t.TEXTURE9 = 33993;
t.TEXTURE10 = 33994;
t.TEXTURE11 = 33995;
t.TEXTURE12 = 33996;
t.TEXTURE13 = 33997;
t.TEXTURE14 = 33998;
t.TEXTURE15 = 33999;
t.TEXTURE16 = 34e3;
t.TEXTURE17 = 34001;
t.TEXTURE18 = 34002;
t.TEXTURE19 = 34003;
t.TEXTURE20 = 34004;
t.TEXTURE21 = 34005;
t.TEXTURE22 = 34006;
t.TEXTURE23 = 34007;
t.TEXTURE24 = 34008;
t.TEXTURE25 = 34009;
t.TEXTURE26 = 34010;
t.TEXTURE27 = 34011;
t.TEXTURE28 = 34012;
t.TEXTURE29 = 34013;
t.TEXTURE30 = 34014;
t.TEXTURE31 = 34015;
t.ACTIVE_TEXTURE = 34016;
t.REPEAT = 10497;
t.CLAMP_TO_EDGE = 33071;
t.MIRRORED_REPEAT = 33648;
t.FLOAT_VEC2 = 35664;
t.FLOAT_VEC3 = 35665;
t.FLOAT_VEC4 = 35666;
t.INT_VEC2 = 35667;
t.INT_VEC3 = 35668;
t.INT_VEC4 = 35669;
t.BOOL = 35670;
t.BOOL_VEC2 = 35671;
t.BOOL_VEC3 = 35672;
t.BOOL_VEC4 = 35673;
t.FLOAT_MAT2 = 35674;
t.FLOAT_MAT3 = 35675;
t.FLOAT_MAT4 = 35676;
t.SAMPLER_2D = 35678;
t.SAMPLER_CUBE = 35680;
t.VERTEX_ATTRIB_ARRAY_ENABLED = 34338;
t.VERTEX_ATTRIB_ARRAY_SIZE = 34339;
t.VERTEX_ATTRIB_ARRAY_STRIDE = 34340;
t.VERTEX_ATTRIB_ARRAY_TYPE = 34341;
t.VERTEX_ATTRIB_ARRAY_NORMALIZED = 34922;
t.VERTEX_ATTRIB_ARRAY_POINTER = 34373;
t.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 34975;
t.IMPLEMENTATION_COLOR_READ_TYPE = 35738;
t.IMPLEMENTATION_COLOR_READ_FORMAT = 35739;
t.VERTEX_PROGRAM_POINT_SIZE = 34370;
t.POINT_SPRITE = 34913;
t.COMPILE_STATUS = 35713;
t.LOW_FLOAT = 36336;
t.MEDIUM_FLOAT = 36337;
t.HIGH_FLOAT = 36338;
t.LOW_INT = 36339;
t.MEDIUM_INT = 36340;
t.HIGH_INT = 36341;
t.FRAMEBUFFER = 36160;
t.RENDERBUFFER = 36161;
t.RGBA4 = 32854;
t.RGB5_A1 = 32855;
t.RGB565 = 36194;
t.DEPTH_COMPONENT16 = 33189;
t.STENCIL_INDEX = 6401;
t.STENCIL_INDEX8 = 36168;
t.DEPTH_STENCIL = 34041;
t.RENDERBUFFER_WIDTH = 36162;
t.RENDERBUFFER_HEIGHT = 36163;
t.RENDERBUFFER_INTERNAL_FORMAT = 36164;
t.RENDERBUFFER_RED_SIZE = 36176;
t.RENDERBUFFER_GREEN_SIZE = 36177;
t.RENDERBUFFER_BLUE_SIZE = 36178;
t.RENDERBUFFER_ALPHA_SIZE = 36179;
t.RENDERBUFFER_DEPTH_SIZE = 36180;
t.RENDERBUFFER_STENCIL_SIZE = 36181;
t.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 36048;
t.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 36049;
t.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 36050;
t.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 36051;
t.COLOR_ATTACHMENT0 = 36064;
t.DEPTH_ATTACHMENT = 36096;
t.STENCIL_ATTACHMENT = 36128;
t.DEPTH_STENCIL_ATTACHMENT = 33306;
t.NONE = 0;
t.FRAMEBUFFER_COMPLETE = 36053;
t.FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 36054;
t.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 36055;
t.FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 36057;
t.FRAMEBUFFER_UNSUPPORTED = 36061;
t.FRAMEBUFFER_BINDING = 36006;
t.RENDERBUFFER_BINDING = 36007;
t.MAX_RENDERBUFFER_SIZE = 34024;
t.INVALID_FRAMEBUFFER_OPERATION = 1286;
t.UNPACK_FLIP_Y_WEBGL = 37440;
t.UNPACK_PREMULTIPLY_ALPHA_WEBGL = 37441;
t.CONTEXT_LOST_WEBGL = 37442;
t.UNPACK_COLORSPACE_CONVERSION_WEBGL = 37443;
t.BROWSER_DEFAULT_WEBGL = 37444;
t.READ_BUFFER = 3074;
t.UNPACK_ROW_LENGTH = 3314;
t.UNPACK_SKIP_ROWS = 3315;
t.UNPACK_SKIP_PIXELS = 3316;
t.PACK_ROW_LENGTH = 3330;
t.PACK_SKIP_ROWS = 3331;
t.PACK_SKIP_PIXELS = 3332;
t.TEXTURE_BINDING_3D = 32874;
t.UNPACK_SKIP_IMAGES = 32877;
t.UNPACK_IMAGE_HEIGHT = 32878;
t.MAX_3D_TEXTURE_SIZE = 32883;
t.MAX_ELEMENTS_VERTICES = 33e3;
t.MAX_ELEMENTS_INDICES = 33001;
t.MAX_TEXTURE_LOD_BIAS = 34045;
t.MAX_FRAGMENT_UNIFORM_COMPONENTS = 35657;
t.MAX_VERTEX_UNIFORM_COMPONENTS = 35658;
t.MAX_ARRAY_TEXTURE_LAYERS = 35071;
t.MIN_PROGRAM_TEXEL_OFFSET = 35076;
t.MAX_PROGRAM_TEXEL_OFFSET = 35077;
t.MAX_VARYING_COMPONENTS = 35659;
t.FRAGMENT_SHADER_DERIVATIVE_HINT = 35723;
t.RASTERIZER_DISCARD = 35977;
t.VERTEX_ARRAY_BINDING = 34229;
t.MAX_VERTEX_OUTPUT_COMPONENTS = 37154;
t.MAX_FRAGMENT_INPUT_COMPONENTS = 37157;
t.MAX_SERVER_WAIT_TIMEOUT = 37137;
t.MAX_ELEMENT_INDEX = 36203;
t.RED = 6403;
t.RGB8 = 32849;
t.RGBA8 = 32856;
t.RGB10_A2 = 32857;
t.TEXTURE_3D = 32879;
t.TEXTURE_WRAP_R = 32882;
t.TEXTURE_MIN_LOD = 33082;
t.TEXTURE_MAX_LOD = 33083;
t.TEXTURE_BASE_LEVEL = 33084;
t.TEXTURE_MAX_LEVEL = 33085;
t.TEXTURE_COMPARE_MODE = 34892;
t.TEXTURE_COMPARE_FUNC = 34893;
t.SRGB = 35904;
t.SRGB8 = 35905;
t.SRGB8_ALPHA8 = 35907;
t.COMPARE_REF_TO_TEXTURE = 34894;
t.RGBA32F = 34836;
t.RGB32F = 34837;
t.RGBA16F = 34842;
t.RGB16F = 34843;
t.TEXTURE_2D_ARRAY = 35866;
t.TEXTURE_BINDING_2D_ARRAY = 35869;
t.R11F_G11F_B10F = 35898;
t.RGB9_E5 = 35901;
t.RGBA32UI = 36208;
t.RGB32UI = 36209;
t.RGBA16UI = 36214;
t.RGB16UI = 36215;
t.RGBA8UI = 36220;
t.RGB8UI = 36221;
t.RGBA32I = 36226;
t.RGB32I = 36227;
t.RGBA16I = 36232;
t.RGB16I = 36233;
t.RGBA8I = 36238;
t.RGB8I = 36239;
t.RED_INTEGER = 36244;
t.RGB_INTEGER = 36248;
t.RGBA_INTEGER = 36249;
t.R8 = 33321;
t.RG8 = 33323;
t.R16F = 33325;
t.R32F = 33326;
t.RG16F = 33327;
t.RG32F = 33328;
t.R8I = 33329;
t.R8UI = 33330;
t.R16I = 33331;
t.R16UI = 33332;
t.R32I = 33333;
t.R32UI = 33334;
t.RG8I = 33335;
t.RG8UI = 33336;
t.RG16I = 33337;
t.RG16UI = 33338;
t.RG32I = 33339;
t.RG32UI = 33340;
t.R8_SNORM = 36756;
t.RG8_SNORM = 36757;
t.RGB8_SNORM = 36758;
t.RGBA8_SNORM = 36759;
t.RGB10_A2UI = 36975;
t.TEXTURE_IMMUTABLE_FORMAT = 37167;
t.TEXTURE_IMMUTABLE_LEVELS = 33503;
t.UNSIGNED_INT_2_10_10_10_REV = 33640;
t.UNSIGNED_INT_10F_11F_11F_REV = 35899;
t.UNSIGNED_INT_5_9_9_9_REV = 35902;
t.FLOAT_32_UNSIGNED_INT_24_8_REV = 36269;
t.UNSIGNED_INT_24_8 = 34042;
t.HALF_FLOAT = 5131;
t.RG = 33319;
t.RG_INTEGER = 33320;
t.INT_2_10_10_10_REV = 36255;
t.CURRENT_QUERY = 34917;
t.QUERY_RESULT = 34918;
t.QUERY_RESULT_AVAILABLE = 34919;
t.ANY_SAMPLES_PASSED = 35887;
t.ANY_SAMPLES_PASSED_CONSERVATIVE = 36202;
t.MAX_DRAW_BUFFERS = 34852;
t.DRAW_BUFFER0 = 34853;
t.DRAW_BUFFER1 = 34854;
t.DRAW_BUFFER2 = 34855;
t.DRAW_BUFFER3 = 34856;
t.DRAW_BUFFER4 = 34857;
t.DRAW_BUFFER5 = 34858;
t.DRAW_BUFFER6 = 34859;
t.DRAW_BUFFER7 = 34860;
t.DRAW_BUFFER8 = 34861;
t.DRAW_BUFFER9 = 34862;
t.DRAW_BUFFER10 = 34863;
t.DRAW_BUFFER11 = 34864;
t.DRAW_BUFFER12 = 34865;
t.DRAW_BUFFER13 = 34866;
t.DRAW_BUFFER14 = 34867;
t.DRAW_BUFFER15 = 34868;
t.MAX_COLOR_ATTACHMENTS = 36063;
t.COLOR_ATTACHMENT1 = 36065;
t.COLOR_ATTACHMENT2 = 36066;
t.COLOR_ATTACHMENT3 = 36067;
t.COLOR_ATTACHMENT4 = 36068;
t.COLOR_ATTACHMENT5 = 36069;
t.COLOR_ATTACHMENT6 = 36070;
t.COLOR_ATTACHMENT7 = 36071;
t.COLOR_ATTACHMENT8 = 36072;
t.COLOR_ATTACHMENT9 = 36073;
t.COLOR_ATTACHMENT10 = 36074;
t.COLOR_ATTACHMENT11 = 36075;
t.COLOR_ATTACHMENT12 = 36076;
t.COLOR_ATTACHMENT13 = 36077;
t.COLOR_ATTACHMENT14 = 36078;
t.COLOR_ATTACHMENT15 = 36079;
t.SAMPLER_3D = 35679;
t.SAMPLER_2D_SHADOW = 35682;
t.SAMPLER_2D_ARRAY = 36289;
t.SAMPLER_2D_ARRAY_SHADOW = 36292;
t.SAMPLER_CUBE_SHADOW = 36293;
t.INT_SAMPLER_2D = 36298;
t.INT_SAMPLER_3D = 36299;
t.INT_SAMPLER_CUBE = 36300;
t.INT_SAMPLER_2D_ARRAY = 36303;
t.UNSIGNED_INT_SAMPLER_2D = 36306;
t.UNSIGNED_INT_SAMPLER_3D = 36307;
t.UNSIGNED_INT_SAMPLER_CUBE = 36308;
t.UNSIGNED_INT_SAMPLER_2D_ARRAY = 36311;
t.MAX_SAMPLES = 36183;
t.SAMPLER_BINDING = 35097;
t.PIXEL_PACK_BUFFER = 35051;
t.PIXEL_UNPACK_BUFFER = 35052;
t.PIXEL_PACK_BUFFER_BINDING = 35053;
t.PIXEL_UNPACK_BUFFER_BINDING = 35055;
t.COPY_READ_BUFFER = 36662;
t.COPY_WRITE_BUFFER = 36663;
t.COPY_READ_BUFFER_BINDING = 36662;
t.COPY_WRITE_BUFFER_BINDING = 36663;
t.FLOAT_MAT2x3 = 35685;
t.FLOAT_MAT2x4 = 35686;
t.FLOAT_MAT3x2 = 35687;
t.FLOAT_MAT3x4 = 35688;
t.FLOAT_MAT4x2 = 35689;
t.FLOAT_MAT4x3 = 35690;
t.UNSIGNED_INT_VEC2 = 36294;
t.UNSIGNED_INT_VEC3 = 36295;
t.UNSIGNED_INT_VEC4 = 36296;
t.UNSIGNED_NORMALIZED = 35863;
t.SIGNED_NORMALIZED = 36764;
t.VERTEX_ATTRIB_ARRAY_INTEGER = 35069;
t.VERTEX_ATTRIB_ARRAY_DIVISOR = 35070;
t.TRANSFORM_FEEDBACK_BUFFER_MODE = 35967;
t.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 35968;
t.TRANSFORM_FEEDBACK_VARYINGS = 35971;
t.TRANSFORM_FEEDBACK_BUFFER_START = 35972;
t.TRANSFORM_FEEDBACK_BUFFER_SIZE = 35973;
t.TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 35976;
t.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 35978;
t.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 35979;
t.INTERLEAVED_ATTRIBS = 35980;
t.SEPARATE_ATTRIBS = 35981;
t.TRANSFORM_FEEDBACK_BUFFER = 35982;
t.TRANSFORM_FEEDBACK_BUFFER_BINDING = 35983;
t.TRANSFORM_FEEDBACK = 36386;
t.TRANSFORM_FEEDBACK_PAUSED = 36387;
t.TRANSFORM_FEEDBACK_ACTIVE = 36388;
t.TRANSFORM_FEEDBACK_BINDING = 36389;
t.FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 33296;
t.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 33297;
t.FRAMEBUFFER_ATTACHMENT_RED_SIZE = 33298;
t.FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 33299;
t.FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 33300;
t.FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 33301;
t.FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 33302;
t.FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 33303;
t.FRAMEBUFFER_DEFAULT = 33304;
t.DEPTH24_STENCIL8 = 35056;
t.DRAW_FRAMEBUFFER_BINDING = 36006;
t.READ_FRAMEBUFFER = 36008;
t.DRAW_FRAMEBUFFER = 36009;
t.READ_FRAMEBUFFER_BINDING = 36010;
t.RENDERBUFFER_SAMPLES = 36011;
t.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 36052;
t.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 36182;
t.UNIFORM_BUFFER = 35345;
t.UNIFORM_BUFFER_BINDING = 35368;
t.UNIFORM_BUFFER_START = 35369;
t.UNIFORM_BUFFER_SIZE = 35370;
t.MAX_VERTEX_UNIFORM_BLOCKS = 35371;
t.MAX_FRAGMENT_UNIFORM_BLOCKS = 35373;
t.MAX_COMBINED_UNIFORM_BLOCKS = 35374;
t.MAX_UNIFORM_BUFFER_BINDINGS = 35375;
t.MAX_UNIFORM_BLOCK_SIZE = 35376;
t.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 35377;
t.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 35379;
t.UNIFORM_BUFFER_OFFSET_ALIGNMENT = 35380;
t.ACTIVE_UNIFORM_BLOCKS = 35382;
t.UNIFORM_TYPE = 35383;
t.UNIFORM_SIZE = 35384;
t.UNIFORM_BLOCK_INDEX = 35386;
t.UNIFORM_OFFSET = 35387;
t.UNIFORM_ARRAY_STRIDE = 35388;
t.UNIFORM_MATRIX_STRIDE = 35389;
t.UNIFORM_IS_ROW_MAJOR = 35390;
t.UNIFORM_BLOCK_BINDING = 35391;
t.UNIFORM_BLOCK_DATA_SIZE = 35392;
t.UNIFORM_BLOCK_ACTIVE_UNIFORMS = 35394;
t.UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 35395;
t.UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 35396;
t.UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 35398;
t.OBJECT_TYPE = 37138;
t.SYNC_CONDITION = 37139;
t.SYNC_STATUS = 37140;
t.SYNC_FLAGS = 37141;
t.SYNC_FENCE = 37142;
t.SYNC_GPU_COMMANDS_COMPLETE = 37143;
t.UNSIGNALED = 37144;
t.SIGNALED = 37145;
t.ALREADY_SIGNALED = 37146;
t.TIMEOUT_EXPIRED = 37147;
t.CONDITION_SATISFIED = 37148;
t.WAIT_FAILED = 37149;
t.SYNC_FLUSH_COMMANDS_BIT = 1;
t.COLOR = 6144;
t.DEPTH = 6145;
t.STENCIL = 6146;
t.MIN = 32775;
t.MAX = 32776;
t.DEPTH_COMPONENT24 = 33190;
t.STREAM_READ = 35041;
t.STREAM_COPY = 35042;
t.STATIC_READ = 35045;
t.STATIC_COPY = 35046;
t.DYNAMIC_READ = 35049;
t.DYNAMIC_COPY = 35050;
t.DEPTH_COMPONENT32F = 36012;
t.DEPTH32F_STENCIL8 = 36013;
t.INVALID_INDEX = -1;
t.TIMEOUT_IGNORED = -1;
t.MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 37447;
Kd.__identity = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0];
ta.__identity = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];
xc.audioSources = [];
xc.sourcesToRemove = [];
Uj.ID = 0;
F.NONE = 0;
F.FALSE = 0;
F.TRUE = 1;
F.SOURCE_RELATIVE = 514;
F.CONE_INNER_ANGLE = 4097;
F.CONE_OUTER_ANGLE = 4098;
F.PITCH = 4099;
F.POSITION = 4100;
F.DIRECTION = 4101;
F.VELOCITY = 4102;
F.LOOPING = 4103;
F.BUFFER = 4105;
F.GAIN = 4106;
F.MIN_GAIN = 4109;
F.MAX_GAIN = 4110;
F.ORIENTATION = 4111;
F.SOURCE_STATE = 4112;
F.INITIAL = 4113;
F.PLAYING = 4114;
F.PAUSED = 4115;
F.STOPPED = 4116;
F.BUFFERS_QUEUED = 4117;
F.BUFFERS_PROCESSED = 4118;
F.REFERENCE_DISTANCE = 4128;
F.ROLLOFF_FACTOR = 4129;
F.CONE_OUTER_GAIN = 4130;
F.MAX_DISTANCE = 4131;
F.SEC_OFFSET = 4132;
F.SAMPLE_OFFSET = 4133;
F.BYTE_OFFSET = 4134;
F.SOURCE_TYPE = 4135;
F.STATIC = 4136;
F.STREAMING = 4137;
F.UNDETERMINED = 4144;
F.FORMAT_MONO8 = 4352;
F.FORMAT_MONO16 = 4353;
F.FORMAT_STEREO8 = 4354;
F.FORMAT_STEREO16 = 4355;
F.FREQUENCY = 8193;
F.BITS = 8194;
F.CHANNELS = 8195;
F.SIZE = 8196;
F.NO_ERROR = 0;
F.INVALID_NAME = 40961;
F.INVALID_ENUM = 40962;
F.INVALID_VALUE = 40963;
F.INVALID_OPERATION = 40964;
F.OUT_OF_MEMORY = 40965;
F.VENDOR = 45057;
F.VERSION = 45058;
F.RENDERER = 45059;
F.EXTENSIONS = 45060;
F.DOPPLER_FACTOR = 49152;
F.SPEED_OF_SOUND = 49155;
F.DOPPLER_VELOCITY = 49153;
F.DISTANCE_MODEL = 53248;
F.INVERSE_DISTANCE = 53249;
F.INVERSE_DISTANCE_CLAMPED = 53250;
F.LINEAR_DISTANCE = 53251;
F.LINEAR_DISTANCE_CLAMPED = 53252;
F.EXPONENT_DISTANCE = 53253;
F.EXPONENT_DISTANCE_CLAMPED = 53254;
F.METERS_PER_UNIT = 131076;
F.DIRECT_FILTER = 131077;
F.AUXILIARY_SEND_FILTER = 131078;
F.AIR_ABSORPTION_FACTOR = 131079;
F.ROOM_ROLLOFF_FACTOR = 131080;
F.CONE_OUTER_GAINHF = 131081;
F.DIRECT_FILTER_GAINHF_AUTO = 131082;
F.AUXILIARY_SEND_FILTER_GAIN_AUTO = 131083;
F.AUXILIARY_SEND_FILTER_GAINHF_AUTO = 131084;
F.REVERB_DENSITY = 1;
F.REVERB_DIFFUSION = 2;
F.REVERB_GAIN = 3;
F.REVERB_GAINHF = 4;
F.REVERB_DECAY_TIME = 5;
F.REVERB_DECAY_HFRATIO = 6;
F.REVERB_REFLECTIONS_GAIN = 7;
F.REVERB_REFLECTIONS_DELAY = 8;
F.REVERB_LATE_REVERB_GAIN = 9;
F.REVERB_LATE_REVERB_DELAY = 10;
F.REVERB_AIR_ABSORPTION_GAINHF = 11;
F.REVERB_ROOM_ROLLOFF_FACTOR = 12;
F.REVERB_DECAY_HFLIMIT = 13;
F.EAXREVERB_DENSITY = 1;
F.EAXREVERB_DIFFUSION = 2;
F.EAXREVERB_GAIN = 3;
F.EAXREVERB_GAINHF = 4;
F.EAXREVERB_GAINLF = 5;
F.EAXREVERB_DECAY_TIME = 6;
F.EAXREVERB_DECAY_HFRATIO = 7;
F.EAXREVERB_DECAY_LFRATIO = 8;
F.EAXREVERB_REFLECTIONS_GAIN = 9;
F.EAXREVERB_REFLECTIONS_DELAY = 10;
F.EAXREVERB_REFLECTIONS_PAN = 11;
F.EAXREVERB_LATE_REVERB_GAIN = 12;
F.EAXREVERB_LATE_REVERB_DELAY = 13;
F.EAXREVERB_LATE_REVERB_PAN = 14;
F.EAXREVERB_ECHO_TIME = 15;
F.EAXREVERB_ECHO_DEPTH = 16;
F.EAXREVERB_MODULATION_TIME = 17;
F.EAXREVERB_MODULATION_DEPTH = 18;
F.EAXREVERB_AIR_ABSORPTION_GAINHF = 19;
F.EAXREVERB_HFREFERENCE = 20;
F.EAXREVERB_LFREFERENCE = 21;
F.EAXREVERB_ROOM_ROLLOFF_FACTOR = 22;
F.EAXREVERB_DECAY_HFLIMIT = 23;
F.CHORUS_WAVEFORM = 1;
F.CHORUS_PHASE = 2;
F.CHORUS_RATE = 3;
F.CHORUS_DEPTH = 4;
F.CHORUS_FEEDBACK = 5;
F.CHORUS_DELAY = 6;
F.DISTORTION_EDGE = 1;
F.DISTORTION_GAIN = 2;
F.DISTORTION_LOWPASS_CUTOFF = 3;
F.DISTORTION_EQCENTER = 4;
F.DISTORTION_EQBANDWIDTH = 5;
F.ECHO_DELAY = 1;
F.ECHO_LRDELAY = 2;
F.ECHO_DAMPING = 3;
F.ECHO_FEEDBACK = 4;
F.ECHO_SPREAD = 5;
F.FLANGER_WAVEFORM = 1;
F.FLANGER_PHASE = 2;
F.FLANGER_RATE = 3;
F.FLANGER_DEPTH = 4;
F.FLANGER_FEEDBACK = 5;
F.FLANGER_DELAY = 6;
F.FREQUENCY_SHIFTER_FREQUENCY = 1;
F.FREQUENCY_SHIFTER_LEFT_DIRECTION = 2;
F.FREQUENCY_SHIFTER_RIGHT_DIRECTION = 3;
F.VOCAL_MORPHER_PHONEMEA = 1;
F.VOCAL_MORPHER_PHONEMEA_COARSE_TUNING = 2;
F.VOCAL_MORPHER_PHONEMEB = 3;
F.VOCAL_MORPHER_PHONEMEB_COARSE_TUNING = 4;
F.VOCAL_MORPHER_WAVEFORM = 5;
F.VOCAL_MORPHER_RATE = 6;
F.PITCH_SHIFTER_COARSE_TUNE = 1;
F.PITCH_SHIFTER_FINE_TUNE = 2;
F.RING_MODULATOR_FREQUENCY = 1;
F.RING_MODULATOR_HIGHPASS_CUTOFF = 2;
F.RING_MODULATOR_WAVEFORM = 3;
F.AUTOWAH_ATTACK_TIME = 1;
F.AUTOWAH_RELEASE_TIME = 2;
F.AUTOWAH_RESONANCE = 3;
F.AUTOWAH_PEAK_GAIN = 4;
F.COMPRESSOR_ONOFF = 1;
F.EQUALIZER_LOW_GAIN = 1;
F.EQUALIZER_LOW_CUTOFF = 2;
F.EQUALIZER_MID1_GAIN = 3;
F.EQUALIZER_MID1_CENTER = 4;
F.EQUALIZER_MID1_WIDTH = 5;
F.EQUALIZER_MID2_GAIN = 6;
F.EQUALIZER_MID2_CENTER = 7;
F.EQUALIZER_MID2_WIDTH = 8;
F.EQUALIZER_HIGH_GAIN = 9;
F.EQUALIZER_HIGH_CUTOFF = 10;
F.EFFECT_FIRST_PARAMETER = 0;
F.EFFECT_LAST_PARAMETER = 32768;
F.EFFECT_TYPE = 32769;
F.EFFECT_NULL = 0;
F.EFFECT_EAXREVERB = 32768;
F.EFFECT_REVERB = 1;
F.EFFECT_CHORUS = 2;
F.EFFECT_DISTORTION = 3;
F.EFFECT_ECHO = 4;
F.EFFECT_FLANGER = 5;
F.EFFECT_FREQUENCY_SHIFTER = 6;
F.EFFECT_VOCAL_MORPHER = 7;
F.EFFECT_PITCH_SHIFTER = 8;
F.EFFECT_RING_MODULATOR = 9;
F.FFECT_AUTOWAH = 10;
F.EFFECT_COMPRESSOR = 11;
F.EFFECT_EQUALIZER = 12;
F.EFFECTSLOT_EFFECT = 1;
F.EFFECTSLOT_GAIN = 2;
F.EFFECTSLOT_AUXILIARY_SEND_AUTO = 3;
F.LOWPASS_GAIN = 1;
F.LOWPASS_GAINHF = 2;
F.HIGHPASS_GAIN = 1;
F.HIGHPASS_GAINLF = 2;
F.BANDPASS_GAIN = 1;
F.BANDPASS_GAINLF = 2;
F.BANDPASS_GAINHF = 3;
F.FILTER_FIRST_PARAMETER = 0;
F.FILTER_LAST_PARAMETER = 32768;
F.FILTER_TYPE = 32769;
F.FILTER_NULL = 0;
F.FILTER_LOWPASS = 1;
F.FILTER_HIGHPASS = 2;
F.FILTER_BANDPASS = 3;
Gb.FALSE = 0;
Gb.TRUE = 1;
Gb.FREQUENCY = 4103;
Gb.REFRESH = 4104;
Gb.SYNC = 4105;
Gb.MONO_SOURCES = 4112;
Gb.STEREO_SOURCES = 4113;
Gb.NO_ERROR = 0;
Gb.INVALID_DEVICE = 40961;
Gb.INVALID_CONTEXT = 40962;
Gb.INVALID_ENUM = 40963;
Gb.INVALID_VALUE = 40964;
Gb.OUT_OF_MEMORY = 40965;
Gb.ATTRIBUTES_SIZE = 4098;
Gb.ALL_ATTRIBUTES = 4099;
Gb.DEFAULT_DEVICE_SPECIFIER = 4100;
Gb.DEVICE_SPECIFIER = 4101;
Gb.EXTENSIONS = 4102;
Gb.ENUMERATE_ALL_EXT = 1;
Gb.DEFAULT_ALL_DEVICES_SPECIFIER = 4114;
Gb.ALL_DEVICES_SPECIFIER = 4115;
je.onUpdate = new Ld();
we.alreadyCreated = new qa();
we.initialized = !1;
Pf.sensorByID = new Za();
Pf.sensors = [];
Wa.__directories = new Za();
Jd.devices = new Za();
Jd.onConnect = new Mo();
zc.devices = new Za();
zc.onConnect = new No();
eg.CENTER = 0;
eg.DOWN = 4;
eg.LEFT = 8;
eg.RIGHT = 2;
eg.UP = 1;
eg.DOWN_LEFT = 12;
eg.DOWN_RIGHT = 6;
eg.UP_LEFT = 9;
eg.UP_RIGHT = 3;
Bb.NONE = 0;
Bb.LEFT_SHIFT = 1;
Bb.RIGHT_SHIFT = 2;
Bb.LEFT_CTRL = 64;
Bb.RIGHT_CTRL = 128;
Bb.LEFT_ALT = 256;
Bb.RIGHT_ALT = 512;
Bb.LEFT_META = 1024;
Bb.RIGHT_META = 2048;
Bb.NUM_LOCK = 4096;
Bb.CAPS_LOCK = 8192;
Bb.MODE = 16384;
Bb.CTRL = 192;
Bb.SHIFT = 3;
Bb.ALT = 768;
Bb.META = 3072;
nd.onCancel = new Ni();
nd.onEnd = new Ni();
nd.onMove = new Ni();
nd.onStart = new Ni();
wa.cache = new Uo();
wa.onChange = new Ld();
wa.bundlePaths = new qa();
wa.libraries = new qa();
wa.libraryPaths = new qa();
Yg.BYTES_PER_ELEMENT = 4;
Xa.throwErrors = !0;
Sw.VERSION = 2;
Ma.__lastTimerID = 0;
Ma.__sentWarnings = new qa();
Ma.__timers = new Za();
ah.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Df.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: { toJSON: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
Ff.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: {
toJSON: { SuppressWarnings: ['checkstyle:Dynamic'] },
_: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
Gf.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: { toJSON: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
Ef.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: { toJSON: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
rf.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: {
concat: { SuppressWarnings: ['checkstyle:Dynamic'] },
toJSON: { SuppressWarnings: ['checkstyle:Dynamic'] },
_: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
lj.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
ja.__meta__ = {
fields: {
image: { SuppressWarnings: ['checkstyle:Dynamic'] },
__framebufferContext: { SuppressWarnings: ['checkstyle:Dynamic'] },
__indexBufferContext: { SuppressWarnings: ['checkstyle:Dynamic'] },
__surface: { SuppressWarnings: ['checkstyle:Dynamic'] },
__textureContext: { SuppressWarnings: ['checkstyle:Dynamic'] },
__vertexBufferContext: { SuppressWarnings: ['checkstyle:Dynamic'] },
compare: { SuppressWarnings: ['checkstyle:Dynamic'] },
getSurface: { SuppressWarnings: ['checkstyle:Dynamic'] },
__fromImage: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
ja.VERTEX_BUFFER_STRIDE = 14;
ja.__tempVector = new Xd();
Te.__meta__ = {
fields: {
__context: { SuppressWarnings: ['checkstyle:Dynamic'] },
__type: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
Dm.__meta__ = {
fields: {
cairo: { SuppressWarnings: ['checkstyle:Dynamic'] },
__matrix3: { SuppressWarnings: ['checkstyle:Dynamic'] },
applyMatrix: { SuppressWarnings: ['checkstyle:Dynamic'] },
__setBlendModeCairo: { SuppressWarnings: ['checkstyle:Dynamic'] },
_: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
Cg.__meta__ = {
fields: {
context: { SuppressWarnings: ['checkstyle:Dynamic'] },
applySmoothing: { SuppressWarnings: ['checkstyle:Dynamic'] },
setTransform: { SuppressWarnings: ['checkstyle:Dynamic'] },
__setBlendModeContext: { SuppressWarnings: ['checkstyle:Dynamic'] },
_: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
Bw.NONE = 0;
Bw.ROUND = 1;
Bw.SQUARE = 2;
Hm.__meta__ = {
fields: {
__element: { SuppressWarnings: ['checkstyle:Dynamic'] },
_: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
Qi.__meta__ = {
fields: {
element: { SuppressWarnings: ['checkstyle:Dynamic'] },
applyStyle: { SuppressWarnings: ['checkstyle:Dynamic'] },
clearStyle: { SuppressWarnings: ['checkstyle:Dynamic'] },
_: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
df.__meta__ = {
fields: { glProgram: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
Ve.__meta__ = {
fields: {
overrideBlendMode: {
SuppressWarnings: ['checkstyle:FieldDocComment']
}
}
};
Si.SIN45 = 0.7071067811865476;
Si.TAN22 = 0.41421356237309503;
Ew.BEVEL = 0;
Ew.MITER = 1;
Ew.ROUND = 2;
Gj.__meta__ = {
fields: {
BitmapData_onError: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
fg.__meta__ = {
statics: {
create: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
},
fields: { parameters: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
fg.__rootURL = Xg.get_supported() ? window.document.URL : '';
Hb.__meta__ = {
fields: {
gl: { SuppressWarnings: ['checkstyle:Dynamic'] },
__gl: { SuppressWarnings: ['checkstyle:Dynamic'] },
__matrix: { SuppressWarnings: ['checkstyle:Dynamic'] },
__projection: { SuppressWarnings: ['checkstyle:Dynamic'] },
__projectionFlipped: { SuppressWarnings: ['checkstyle:Dynamic'] },
getMatrix: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
Hb.__alphaValue = [1];
Hb.__colorMultipliersValue = [0, 0, 0, 0];
Hb.__colorOffsetsValue = [0, 0, 0, 0];
Hb.__defaultColorMultipliersValue = [1, 1, 1, 1];
Hb.__emptyColorValue = [0, 0, 0, 0];
Hb.__emptyAlphaValue = [1];
Hb.__hasColorTransformValue = [!1];
Hb.__scissorRectangle = new fa();
Hb.__textureSizeValue = [0, 0];
ap.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: { onComplete: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
Xm.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Km.__meta__ = {
fields: {
index: { SuppressWarnings: ['checkstyle:Dynamic'] },
name: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
}
};
Ri.__meta__ = {
fields: {
index: { SuppressWarnings: ['checkstyle:Dynamic'] },
name: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
}
};
Vi.__meta__ = {
fields: {
__broadcastEvent: { SuppressWarnings: ['checkstyle:Dynamic'] },
__dispatchEvent: {
SuppressWarnings: [['checkstyle:Dynamic', 'checkstyle:LeftCurly']]
},
__dispatchStack: {
SuppressWarnings: [['checkstyle:Dynamic', 'checkstyle:LeftCurly']]
},
__dispatchTarget: { SuppressWarnings: ['checkstyle:Dynamic'] },
__handleError: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
ig.__meta__ = {
fields: { data: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
Ym.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Zj.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: { _: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
Yi.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Zm.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
$m.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
an.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
bn.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
cn.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
gi.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
statics: {
renderTileContainer: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
Pi.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Dh.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
De.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: { o: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
De.empty = new De();
C.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
statics: {
windingRule: { SuppressWarnings: ['checkstyle:Dynamic'] },
createBitmapFill: { SuppressWarnings: ['checkstyle:Dynamic'] },
createGradientPattern: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
C.SIN45 = 0.7071067811865476;
C.TAN22 = 0.41421356237309503;
C.fillCommands = new De();
C.strokeCommands = new De();
Jw.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
V.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Vf.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
statics: {
renderTileContainer: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
bi.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
vf.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Fh.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Fh.MAX_INDEX_BUFFER_LENGTH = 65535;
Fh.MAX_QUADS_PER_INDEX_BUFFER = 10922;
Fh.MAX_QUAD_INDEX_BUFFER_LENGTH = 65532;
ch.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Qc.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Qc.blankBitmapData = new ja(1, 1, !1, 0);
Qc.tempColorTransform = new Kc(1, 1, 1, 1, 0, 0, 0, 0);
ci.opaqueBitmapData = new ja(1, 1, !1, 0);
$f.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
dh.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
ea.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
wf.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
wf.__textureSizeValue = [0, 0];
Rc.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Wf.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
pf.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
cc.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
cc.__regexColor = new Ja('color=("#([^"]+)"|\'#([^\']+)\')', 'i');
cc.__regexFace = new Ja('face=("([^"]+)"|\'([^\']+)\')', 'i');
cc.__regexFont = new Ja(']+)>', 'gi');
cc.__regexCloseFont = new Ja('', 'gi');
cc.__regexSize = new Ja('size=("([^"]+)"|\'([^\']+)\')', 'i');
Dg.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
bh.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Xf.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: { obj: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
Gh.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
hi.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
hi.alphaColorTransform = new Kc();
hi.bitmap = new Mc();
hi.destPoint = new na();
hi.sourceRect = new fa();
ai.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
statics: { P: { SuppressWarnings: ['checkstyle:ConstantName'] } }
};
ai.P = [
151, 160, 137, 91, 90, 15, 131, 13, 201, 95, 96, 53, 194, 233, 7, 225, 140, 36, 103, 30, 69,
142, 8, 99, 37, 240, 21, 10, 23, 190, 6, 148, 247, 120, 234, 75, 0, 26, 197, 62, 94, 252,
219, 203, 117, 35, 11, 32, 57, 177, 33, 88, 237, 149, 56, 87, 174, 20, 125, 136, 171, 168,
68, 175, 74, 165, 71, 134, 139, 48, 27, 166, 77, 146, 158, 231, 83, 111, 229, 122, 60, 211,
133, 230, 220, 105, 92, 41, 55, 46, 245, 40, 244, 102, 143, 54, 65, 25, 63, 161, 1, 216, 80,
73, 209, 76, 132, 187, 208, 89, 18, 169, 200, 196, 135, 130, 116, 188, 159, 86, 164, 100,
109, 198, 173, 186, 3, 64, 52, 217, 226, 250, 124, 123, 5, 202, 38, 147, 118, 126, 255, 82,
85, 212, 207, 206, 59, 227, 47, 16, 58, 17, 182, 189, 28, 42, 223, 183, 170, 213, 119, 248,
152, 2, 44, 154, 163, 70, 221, 153, 101, 155, 167, 43, 172, 9, 129, 22, 39, 253, 19, 98,
108, 110, 79, 113, 224, 232, 178, 185, 112, 104, 218, 246, 97, 228, 251, 34, 242, 193, 238,
210, 144, 12, 191, 179, 162, 241, 81, 51, 145, 235, 249, 14, 239, 107, 49, 192, 214, 31,
181, 199, 106, 157, 184, 84, 204, 176, 115, 121, 50, 45, 127, 4, 150, 254, 138, 236, 205,
93, 222, 114, 67, 29, 24, 72, 243, 141, 128, 195, 78, 66, 215, 61, 156, 180, 151, 160, 137,
91, 90, 15, 131, 13, 201, 95, 96, 53, 194, 233, 7, 225, 140, 36, 103, 30, 69, 142, 8, 99,
37, 240, 21, 10, 23, 190, 6, 148, 247, 120, 234, 75, 0, 26, 197, 62, 94, 252, 219, 203, 117,
35, 11, 32, 57, 177, 33, 88, 237, 149, 56, 87, 174, 20, 125, 136, 171, 168, 68, 175, 74,
165, 71, 134, 139, 48, 27, 166, 77, 146, 158, 231, 83, 111, 229, 122, 60, 211, 133, 230,
220, 105, 92, 41, 55, 46, 245, 40, 244, 102, 143, 54, 65, 25, 63, 161, 1, 216, 80, 73, 209,
76, 132, 187, 208, 89, 18, 169, 200, 196, 135, 130, 116, 188, 159, 86, 164, 100, 109, 198,
173, 186, 3, 64, 52, 217, 226, 250, 124, 123, 5, 202, 38, 147, 118, 126, 255, 82, 85, 212,
207, 206, 59, 227, 47, 16, 58, 17, 182, 189, 28, 42, 223, 183, 170, 213, 119, 248, 152, 2,
44, 154, 163, 70, 221, 153, 101, 155, 167, 43, 172, 9, 129, 22, 39, 253, 19, 98, 108, 110,
79, 113, 224, 232, 178, 185, 112, 104, 218, 246, 97, 228, 251, 34, 242, 193, 238, 210, 144,
12, 191, 179, 162, 241, 81, 51, 145, 235, 249, 14, 239, 107, 49, 192, 214, 31, 181, 199,
106, 157, 184, 84, 204, 176, 115, 121, 50, 45, 127, 4, 150, 254, 138, 236, 205, 93, 222,
114, 67, 29, 24, 72, 243, 141, 128, 195, 78, 66, 215, 61, 156, 180
];
Ug.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Mm.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: {
overrideIntValues: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
$b.supportsVideoTexture = !0;
$b.__glDepthStencil = -1;
$b.__glMaxTextureMaxAnisotropy = -1;
$b.__glMaxViewportDims = -1;
$b.__glMemoryCurrentAvailable = -1;
$b.__glMemoryTotalAvailable = -1;
$b.__glTextureMaxAnisotropy = -1;
Kw.DYNAMIC_DRAW = 0;
Kw.STATIC_DRAW = 1;
Lw.FRAGMENT = 0;
Lw.VERTEX = 1;
dk.BGR_PACKED = 0;
dk.BGRA = 1;
dk.BGRA_PACKED = 2;
dk.COMPRESSED = 3;
dk.COMPRESSED_ALPHA = 4;
dk.RGBA_HALF_FLOAT = 5;
fn.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
ek.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Ee.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Ee.limitedProfile = !0;
$i.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
gn.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
aj.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
ji.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
fk.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
bk.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
dc.__meta__ = {
fields: {
__textureContext: { SuppressWarnings: ['checkstyle:Dynamic'] },
__getGLFramebuffer: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
ii.__lowMemoryMode = !1;
dd.DEFAULT_TO_STRING = 'Error';
gh.ACTIVITY = 'activity';
ef.LINK = 'link';
ef.TEXT_INPUT = 'textInput';
Ue.ERROR = 'error';
nj.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
mj.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Zf.FOCUS_IN = 'focusIn';
Zf.FOCUS_OUT = 'focusOut';
Zf.KEY_FOCUS_CHANGE = 'keyFocusChange';
Zf.MOUSE_FOCUS_CHANGE = 'mouseFocusChange';
eh.FULL_SCREEN = 'fullScreen';
eh.FULL_SCREEN_INTERACTIVE_ACCEPTED = 'fullScreenInteractiveAccepted';
Gg.DEVICE_ADDED = 'deviceAdded';
Gg.DEVICE_REMOVED = 'deviceRemoved';
Gg.DEVICE_UNUSABLE = 'deviceUnusable';
ki.HTTP_RESPONSE_STATUS = 'httpResponseStatus';
ki.HTTP_STATUS = 'httpStatus';
qg.IO_ERROR = 'ioError';
ei.KEY_DOWN = 'keyDown';
ei.KEY_UP = 'keyUp';
Lb.CLICK = 'click';
Lb.DOUBLE_CLICK = 'doubleClick';
Lb.MIDDLE_CLICK = 'middleClick';
Lb.MIDDLE_MOUSE_DOWN = 'middleMouseDown';
Lb.MIDDLE_MOUSE_UP = 'middleMouseUp';
Lb.MOUSE_DOWN = 'mouseDown';
Lb.MOUSE_MOVE = 'mouseMove';
Lb.MOUSE_OUT = 'mouseOut';
Lb.MOUSE_OVER = 'mouseOver';
Lb.MOUSE_UP = 'mouseUp';
Lb.MOUSE_WHEEL = 'mouseWheel';
Lb.RELEASE_OUTSIDE = 'releaseOutside';
Lb.RIGHT_CLICK = 'rightClick';
Lb.RIGHT_MOUSE_DOWN = 'rightMouseDown';
Lb.RIGHT_MOUSE_UP = 'rightMouseUp';
Lb.ROLL_OUT = 'rollOut';
Lb.ROLL_OVER = 'rollOver';
li.NET_STATUS = 'netStatus';
Eg.PROGRESS = 'progress';
Eg.SOCKET_DATA = 'socketData';
ug.CLEAR_DOM = 'clearDOM';
ug.RENDER_CAIRO = 'renderCairo';
ug.RENDER_CANVAS = 'renderCanvas';
ug.RENDER_DOM = 'renderDOM';
ug.RENDER_OPENGL = 'renderOpenGL';
cj.SECURITY_ERROR = 'securityError';
Vd.__meta__ = {
fields: { delta: { SuppressWarnings: ['checkstyle:FieldDocComment'] } }
};
Vd.TOUCH_BEGIN = 'touchBegin';
Vd.TOUCH_END = 'touchEnd';
Vd.TOUCH_MOVE = 'touchMove';
Vd.TOUCH_OUT = 'touchOut';
Vd.TOUCH_OVER = 'touchOver';
Vd.TOUCH_ROLL_OUT = 'touchRollOut';
Vd.TOUCH_ROLL_OVER = 'touchRollOver';
Vd.TOUCH_TAP = 'touchTap';
Wi.UNCAUGHT_ERROR = 'uncaughtError';
gk.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
hg.__colorMatrixShader = new gk();
be.__meta__ = {
statics: {
create2D: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
createABCD: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
createOrtho: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
}
};
sd.MAX_ACTIVE_CHANNELS = 32;
sd.__soundChannels = [];
sd.__soundTransform = new lf();
jn.VERTEX_BUFFER_STRIDE = 5;
hk.__meta__ = {
statics: {
CONNECT_SUCCESS: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
}
};
hk.CONNECT_SUCCESS = 'NetConnection.Connect.Success';
kn.__meta__ = {
fields: {
audioCodec: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
decodedFrames: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
speed: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
requestVideoStatus: {
SuppressWarnings: ['checkstyle:FieldDocComment']
}
}
};
ld.defaultObjectEncoding = 10;
Hh.followRedirects = !0;
Hh.idleTimeout = 0;
Hh.manageCookies = !1;
Ti.currentDomain = new Ti(null);
wc.avHardwareDisable = !0;
wc.hasAccessibility = !1;
wc.hasAudio = !0;
wc.hasAudioEncoder = !1;
wc.hasEmbeddedVideo = !1;
wc.hasIME = !1;
wc.hasMP3 = !1;
wc.hasPrinting = !0;
wc.hasScreenBroadcast = !1;
wc.hasScreenPlayback = !1;
wc.hasStreamingAudio = !1;
wc.hasStreamingVideo = !1;
wc.hasTLS = !0;
wc.hasVideoEncoder = !0;
wc.isDebugger = !0;
wc.isEmbeddedInAcrobat = !1;
wc.localFileReadDisable = !0;
wc.maxLevelIDC = 0;
wc.playerType = 'PlugIn';
wc.screenColor = 'color';
wc.serverString = '';
wc.supports32BitProcesses = !1;
wc.supports64BitProcesses = !1;
wc.touchscreenType = 0;
wc.__standardDensities = [120, 160, 240, 320, 480, 640, 800, 960];
ik.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:UnnecessaryConstructor'] }
};
ik.currentDomain = new ik();
cg.useCodePage = !1;
Sc.__fontByName = new qa();
Sc.__registeredFonts = [];
Ze.__missingFontWarning = new qa();
Qg.__meta__ = {
fields: { clone: { SuppressWarnings: ['checkstyle:FieldDocComment'] } }
};
jk.CENTER = 0;
jk.END = 1;
jk.JUSTIFY = 2;
jk.LEFT = 3;
jk.RIGHT = 4;
jk.START = 5;
kp.__meta__ = {
obj: {
SuppressWarnings: [['checkstyle:FieldDocComment', 'checkstyle:Dynamic']]
}
};
xb.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
xb.__regexAlign = new Ja('align\\s?=\\s?("([^"]+)"|\'([^\']+)\')', 'i');
xb.__regexBreakTag = new Ja('
', 'gi');
xb.__regexBlockIndent = new Ja('blockindent\\s?=\\s?("([^"]+)"|\'([^\']+)\')', 'i');
xb.__regexColor = new Ja('color\\s?=\\s?("#([^"]+)"|\'#([^\']+)\')', 'i');
xb.__regexEntities = [
new Ja('"', 'g'),
new Ja(''', 'g'),
new Ja('&', 'g'),
new Ja('<', 'g'),
new Ja('>', 'g'),
new Ja(' ', 'g')
];
xb.__regexFace = new Ja('face\\s?=\\s?("([^"]+)"|\'([^\']+)\')', 'i');
xb.__regexHTMLTag = new Ja('<.*?>', 'g');
xb.__regexHref = new Ja('href\\s?=\\s?("([^"]+)"|\'([^\']+)\')', 'i');
xb.__regexIndent = new Ja(' indent\\s?=\\s?("([^"]+)"|\'([^\']+)\')', 'i');
xb.__regexLeading = new Ja('leading\\s?=\\s?("([^"]+)"|\'([^\']+)\')', 'i');
xb.__regexLeftMargin = new Ja('leftmargin\\s?=\\s?("([^"]+)"|\'([^\']+)\')', 'i');
xb.__regexRightMargin = new Ja('rightmargin\\s?=\\s?("([^"]+)"|\'([^\']+)\')', 'i');
xb.__regexSize = new Ja('size\\s?=\\s?("([^"]+)"|\'([^\']+)\')', 'i');
xb.__regexTabStops = new Ja('tabstops\\s?=\\s?("([^"]+)"|\'([^\']+)\')', 'i');
Sb.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: { __cairoFont: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
Sb.GUTTER = 2;
Sb.UTF8_TAB = 9;
Sb.UTF8_ENDLINE = 10;
Sb.UTF8_SPACE = 32;
Sb.UTF8_HYPHEN = 45;
Sb.__defaultFonts = new qa();
Td.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: {
glyphs: { SuppressWarnings: ['checkstyle:Dynamic'] },
__handle: { SuppressWarnings: ['checkstyle:Dynamic'] },
__hbBuffer: { SuppressWarnings: ['checkstyle:Dynamic'] },
__hbFont: { SuppressWarnings: ['checkstyle:Dynamic'] },
get_glyphs: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
Td.FT_LOAD_DEFAULT = 0;
Td.FT_LOAD_NO_SCALE = 1;
Td.FT_LOAD_NO_HINTING = 2;
Td.FT_LOAD_RENDER = 4;
Td.FT_LOAD_NO_BITMAP = 8;
Td.FT_LOAD_VERTICAL_LAYOUT = 16;
Td.FT_LOAD_FORCE_AUTOHINT = 32;
Td.FT_LOAD_CROP_BITMAP = 64;
Td.FT_LOAD_PEDANTIC = 128;
Td.FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH = 256;
Td.FT_LOAD_NO_RECURSE = 512;
Td.FT_LOAD_IGNORE_TRANSFORM = 1024;
Td.FT_LOAD_MONOCHROME = 2048;
Td.FT_LOAD_LINEAR_DESIGN = 4096;
Td.FT_LOAD_NO_AUTOHINT = 8192;
Td.FT_LOAD_COLOR = 16384;
Td.FT_LOAD_COMPUTE_METRICS = 32768;
Td.FT_LOAD_BITMAP_METRICS_ONLY = 65536;
Td.FT_LOAD_TARGET_NORMAL = 0;
Td.FT_LOAD_TARGET_LIGHT = 0;
ln.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Zb.__meta__ = {
fields: {
addEventListener: { SuppressWarnings: ['checkstyle:Dynamic'] }
}
};
Zb.isSupported = !0;
Zb.numDevices = 0;
Zb.__deviceList = [];
Zb.__instances = [];
Zb.__devices = new Jc();
mn.MAX_BUFFER_SIZE = 32e3;
Ga.__meta__ = {
statics: {
BREAK: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
NUMLOCK: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
}
};
Ga.NUMBER_0 = 48;
Ga.NUMBER_1 = 49;
Ga.NUMBER_2 = 50;
Ga.NUMBER_3 = 51;
Ga.NUMBER_4 = 52;
Ga.NUMBER_5 = 53;
Ga.NUMBER_6 = 54;
Ga.NUMBER_7 = 55;
Ga.NUMBER_8 = 56;
Ga.NUMBER_9 = 57;
Ga.A = 65;
Ga.B = 66;
Ga.C = 67;
Ga.D = 68;
Ga.E = 69;
Ga.F = 70;
Ga.G = 71;
Ga.H = 72;
Ga.I = 73;
Ga.J = 74;
Ga.K = 75;
Ga.L = 76;
Ga.M = 77;
Ga.N = 78;
Ga.O = 79;
Ga.P = 80;
Ga.Q = 81;
Ga.R = 82;
Ga.S = 83;
Ga.T = 84;
Ga.U = 85;
Ga.V = 86;
Ga.W = 87;
Ga.X = 88;
Ga.Y = 89;
Ga.Z = 90;
Ga.NUMPAD_0 = 96;
Ga.NUMPAD_1 = 97;
Ga.NUMPAD_2 = 98;
Ga.NUMPAD_3 = 99;
Ga.NUMPAD_4 = 100;
Ga.NUMPAD_5 = 101;
Ga.NUMPAD_6 = 102;
Ga.NUMPAD_7 = 103;
Ga.NUMPAD_8 = 104;
Ga.NUMPAD_9 = 105;
Ga.NUMPAD_MULTIPLY = 106;
Ga.NUMPAD_ADD = 107;
Ga.NUMPAD_ENTER = 108;
Ga.NUMPAD_SUBTRACT = 109;
Ga.NUMPAD_DECIMAL = 110;
Ga.NUMPAD_DIVIDE = 111;
Ga.F1 = 112;
Ga.F2 = 113;
Ga.F3 = 114;
Ga.F4 = 115;
Ga.F5 = 116;
Ga.F6 = 117;
Ga.F7 = 118;
Ga.F8 = 119;
Ga.F9 = 120;
Ga.F10 = 121;
Ga.F11 = 122;
Ga.F12 = 123;
Ga.F13 = 124;
Ga.F14 = 125;
Ga.F15 = 126;
Ga.BACKSPACE = 8;
Ga.TAB = 9;
Ga.ALTERNATE = 18;
Ga.ENTER = 13;
Ga.COMMAND = 15;
Ga.SHIFT = 16;
Ga.CONTROL = 17;
Ga.BREAK = 19;
Ga.CAPS_LOCK = 20;
Ga.NUMPAD = 21;
Ga.ESCAPE = 27;
Ga.SPACE = 32;
Ga.PAGE_UP = 33;
Ga.PAGE_DOWN = 34;
Ga.END = 35;
Ga.HOME = 36;
Ga.LEFT = 37;
Ga.RIGHT = 39;
Ga.UP = 38;
Ga.DOWN = 40;
Ga.INSERT = 45;
Ga.DELETE = 46;
Ga.NUMLOCK = 144;
Ga.SEMICOLON = 186;
Ga.EQUAL = 187;
Ga.COMMA = 188;
Ga.MINUS = 189;
Ga.PERIOD = 190;
Ga.SLASH = 191;
Ga.BACKQUOTE = 192;
Ga.LEFTBRACKET = 219;
Ga.BACKSLASH = 220;
Ga.RIGHTBRACKET = 221;
Ga.QUOTE = 222;
qe.supportsCursor = !0;
qe.supportsNativeCursor = !0;
qe.__cursor = 'auto';
xf.ARROW = 'arrow';
xf.AUTO = 'auto';
xf.BUTTON = 'button';
xf.HAND = 'hand';
xf.IBEAM = 'ibeam';
xf.__CROSSHAIR = 'crosshair';
xf.__CUSTOM = 'custom';
xf.__MOVE = 'move';
xf.__RESIZE_NESW = 'resize_nesw';
xf.__RESIZE_NS = 'resize_ns';
xf.__RESIZE_NWSE = 'resize_nwse';
xf.__RESIZE_WE = 'resize_we';
xf.__WAIT = 'wait';
xf.__WAIT_ARROW = 'waitarrow';
Y.__meta__ = {
obj: {
SuppressWarnings: [['checkstyle:ConstantName', 'checkstyle:FieldDocComment']]
}
};
Y.OPMAP = new qa();
Y.REGMAP = new qa();
Y.SAMPLEMAP = new qa();
Y.MAX_NESTING = 4;
Y.MAX_OPCODES = 4096;
Y.FRAGMENT = 'fragment';
Y.VERTEX = 'vertex';
Y.SAMPLER_TYPE_SHIFT = 8;
Y.SAMPLER_DIM_SHIFT = 12;
Y.SAMPLER_SPECIAL_SHIFT = 16;
Y.SAMPLER_REPEAT_SHIFT = 20;
Y.SAMPLER_MIPMAP_SHIFT = 24;
Y.SAMPLER_FILTER_SHIFT = 28;
Y.REG_WRITE = 1;
Y.REG_READ = 2;
Y.REG_FRAG = 32;
Y.REG_VERT = 64;
Y.OP_SCALAR = 1;
Y.OP_SPECIAL_TEX = 8;
Y.OP_SPECIAL_MATRIX = 16;
Y.OP_FRAG_ONLY = 32;
Y.OP_VERT_ONLY = 64;
Y.OP_NO_DEST = 128;
Y.OP_VERSION2 = 256;
Y.OP_INCNEST = 512;
Y.OP_DECNEST = 1024;
Y.MOV = 'mov';
Y.ADD = 'add';
Y.SUB = 'sub';
Y.MUL = 'mul';
Y.DIV = 'div';
Y.RCP = 'rcp';
Y.MIN = 'min';
Y.MAX = 'max';
Y.FRC = 'frc';
Y.SQT = 'sqt';
Y.RSQ = 'rsq';
Y.POW = 'pow';
Y.LOG = 'log';
Y.EXP = 'exp';
Y.NRM = 'nrm';
Y.SIN = 'sin';
Y.COS = 'cos';
Y.CRS = 'crs';
Y.DP3 = 'dp3';
Y.DP4 = 'dp4';
Y.ABS = 'abs';
Y.NEG = 'neg';
Y.SAT = 'sat';
Y.M33 = 'm33';
Y.M44 = 'm44';
Y.M34 = 'm34';
Y.DDX = 'ddx';
Y.DDY = 'ddy';
Y.IFE = 'ife';
Y.INE = 'ine';
Y.IFG = 'ifg';
Y.IFL = 'ifl';
Y.IEG = 'ieg';
Y.IEL = 'iel';
Y.ELS = 'els';
Y.EIF = 'eif';
Y.TED = 'ted';
Y.KIL = 'kil';
Y.TEX = 'tex';
Y.SGE = 'sge';
Y.SLT = 'slt';
Y.SGN = 'sgn';
Y.SEQ = 'seq';
Y.SNE = 'sne';
Y.VA = 'va';
Y.VC = 'vc';
Y.VT = 'vt';
Y.VO = 'vo';
Y.VI = 'vi';
Y.FC = 'fc';
Y.FT = 'ft';
Y.FS = 'fs';
Y.FO = 'fo';
Y.FD = 'fd';
Y.IID = 'iid';
Y.D2 = '2d';
Y.D3 = '3d';
Y.CUBE = 'cube';
Y.MIPNEAREST = 'mipnearest';
Y.MIPLINEAR = 'miplinear';
Y.MIPNONE = 'mipnone';
Y.NOMIP = 'nomip';
Y.NEAREST = 'nearest';
Y.LINEAR = 'linear';
Y.ANISOTROPIC2X = 'anisotropic2x';
Y.ANISOTROPIC4X = 'anisotropic4x';
Y.ANISOTROPIC8X = 'anisotropic8x';
Y.ANISOTROPIC16X = 'anisotropic16x';
Y.CENTROID = 'centroid';
Y.SINGLE = 'single';
Y.IGNORESAMPLER = 'ignoresampler';
Y.REPEAT = 'repeat';
Y.WRAP = 'wrap';
Y.CLAMP = 'clamp';
Y.REPEAT_U_CLAMP_V = 'repeat_u_clamp_v';
Y.CLAMP_U_REPEAT_V = 'clamp_u_repeat_v';
Y.RGBA = 'rgba';
Y.COMPRESSED = 'compressed';
Y.COMPRESSEDALPHA = 'compressedalpha';
Y.DXT1 = 'dxt1';
Y.DXT5 = 'dxt5';
Y.VIDEO = 'video';
Y.initialized = !1;
ac.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
qf.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Zc.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Da.cache = new on();
Da.dispatcher = new db();
zb.__bytePointer = new Uf(null, 0);
pc.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
pc.defaultObjectEncoding = 10;
hj.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
fj.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
gj.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Tw.BIG_ENDIAN = 0;
Tw.LITTLE_ENDIAN = 1;
rn.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
sn.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] }
};
Dc.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
statics: {
notImplemented: {
SuppressWarnings: ['checkstyle:NullableParameter']
}
}
};
Dc.__sentWarnings = new qa();
fi.__meta__ = {
obj: { SuppressWarnings: ['checkstyle:FieldDocComment'] },
fields: { touch: { SuppressWarnings: ['checkstyle:Dynamic'] } }
};
fi.__pool = new ud(
function () {
return new fi();
},
function (a) {
a.reset();
}
);
Jg.VAL_ABSENT = -2147483648;
Jg.EMPTY_SLOT = -1;
Jg.NULL_POINTER = -1;
tg.KEY_ABSENT = -2147483648;
tg.VAL_ABSENT = -2147483648;
tg.EMPTY_SLOT = -1;
tg.NULL_POINTER = -1;
fb.DEFAULT_PRECISION = 6;
fb.DEFAULT_NUM_EXP_DIGITS = 2;
fb._initialized = !1;
fb.PAD_0 = 0;
fb.PAD_SPACE = 20;
Hg.FIXED = 0;
Hg.MILD = -1;
Hg.NORMAL = -2;
Hg.DOUBLE = -3;
Ib.PI = 3.141592653589793;
Ib.PI_H = 1.5707963267948966;
Ib.LN_2 = 0.6931471805599453;
Ib.LN_2_10 = 6.931471805599453;
Ib.overshoot = 1.70158;
Ib.amplitude = 1;
Ib.period = 3e-4;
za.main();
})(
'undefined' != typeof y
? y
: 'undefined' != typeof window
? window
: 'undefined' != typeof self
? self
: this,
'undefined' != typeof window
? window
: 'undefined' != typeof O
? O
: 'undefined' != typeof self
? self
: this
);
};
ba.lime.embed = function (R) {
var O = {},
Q = ba.lime.$scripts[R];
if (!Q) throw Error('Cannot find project name "' + R + '"');
Q(O, y);
for (var ha in O) ba[ha] = ba[ha] || O[ha];
(Q = O.lime || window.lime) && Q.embed && this != Q.embed && Q.embed.apply(Q, arguments);
return O;
};
'function' == typeof define &&
define.amd &&
(define([], function () {
return ba.lime;
}),
(define.__amd = define.amd),
(define.amd = null));
})(
'undefined' != typeof exports
? exports
: 'function' == typeof define && define.amd
? {}
: 'undefined' != typeof window
? window
: 'undefined' != typeof self
? self
: this,
'undefined' != typeof window
? window
: 'undefined' != typeof global
? global
: 'undefined' != typeof self
? self
: this
);
!(function () {
var ba = function () {
this.init();
};
ba.prototype = {
init: function () {
var h = this || y;
return (
(h._counter = 1e3),
(h._html5AudioPool = []),
(h.html5PoolSize = 10),
(h._codecs = {}),
(h._howls = []),
(h._muted = !1),
(h._volume = 1),
(h._canPlayEvent = 'canplaythrough'),
(h._navigator = 'undefined' != typeof window && window.navigator ? window.navigator : null),
(h.masterGain = null),
(h.noAudio = !1),
(h.usingWebAudio = !0),
(h.autoSuspend = !0),
(h.ctx = null),
(h.autoUnlock = !0),
h._setup(),
h
);
},
volume: function (q) {
var r = this || y;
if (((q = parseFloat(q)), r.ctx || h(), void 0 !== q && 0 <= q && 1 >= q)) {
if (((r._volume = q), r._muted)) return r;
r.usingWebAudio && r.masterGain.gain.setValueAtTime(q, y.ctx.currentTime);
for (var w = 0; w < r._howls.length; w++)
if (!r._howls[w]._webAudio)
for (var za = r._howls[w]._getSoundIds(), Ja = 0; Ja < za.length; Ja++) {
var A = r._howls[w]._soundById(za[Ja]);
A && A._node && (A._node.volume = A._volume * q);
}
return r;
}
return r._volume;
},
mute: function (q) {
var r = this || y;
r.ctx || h();
r._muted = q;
r.usingWebAudio && r.masterGain.gain.setValueAtTime(q ? 0 : r._volume, y.ctx.currentTime);
for (var w = 0; w < r._howls.length; w++)
if (!r._howls[w]._webAudio)
for (var za = r._howls[w]._getSoundIds(), Ja = 0; Ja < za.length; Ja++) {
var A = r._howls[w]._soundById(za[Ja]);
A && A._node && (A._node.muted = !!q || A._muted);
}
return r;
},
unload: function () {
for (var q = this || y, r = q._howls.length - 1; 0 <= r; r--) q._howls[r].unload();
return (
q.usingWebAudio && q.ctx && void 0 !== q.ctx.close && (q.ctx.close(), (q.ctx = null), h()),
q
);
},
codecs: function (h) {
return (this || y)._codecs[h.replace(/^x-/, '')];
},
_setup: function () {
var h = this || y;
if (
((h.state = h.ctx ? h.ctx.state || 'suspended' : 'suspended'),
h._autoSuspend(),
!h.usingWebAudio)
)
if ('undefined' != typeof Audio)
try {
var q = new Audio();
void 0 === q.oncanplaythrough && (h._canPlayEvent = 'canplay');
} catch (I) {
h.noAudio = !0;
}
else h.noAudio = !0;
try {
(q = new Audio()), q.muted && (h.noAudio = !0);
} catch (I) {}
return h.noAudio || h._setupCodecs(), h;
},
_setupCodecs: function () {
var h = this || y,
q = null;
try {
q = 'undefined' != typeof Audio ? new Audio() : null;
} catch (Ja) {
return h;
}
if (!q || 'function' != typeof q.canPlayType) return h;
var r = q.canPlayType('audio/mpeg;').replace(/^no$/, ''),
za = h._navigator && h._navigator.userAgent.match(/OPR\/([0-6].)/g);
za = za && 33 > parseInt(za[0].split('/')[1], 10);
return (
(h._codecs = {
mp3: !(za || (!r && !q.canPlayType('audio/mp3;').replace(/^no$/, ''))),
mpeg: !!r,
opus: !!q.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/, ''),
ogg: !!q.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, ''),
oga: !!q.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, ''),
wav: !!q.canPlayType('audio/wav; codecs="1"').replace(/^no$/, ''),
aac: !!q.canPlayType('audio/aac;').replace(/^no$/, ''),
caf: !!q.canPlayType('audio/x-caf;').replace(/^no$/, ''),
m4a: !!(
q.canPlayType('audio/x-m4a;') ||
q.canPlayType('audio/m4a;') ||
q.canPlayType('audio/aac;')
).replace(/^no$/, ''),
mp4: !!(
q.canPlayType('audio/x-mp4;') ||
q.canPlayType('audio/mp4;') ||
q.canPlayType('audio/aac;')
).replace(/^no$/, ''),
weba: !!q.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/, ''),
webm: !!q.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/, ''),
dolby: !!q.canPlayType('audio/mp4; codecs="ec-3"').replace(/^no$/, ''),
flac: !!(q.canPlayType('audio/x-flac;') || q.canPlayType('audio/flac;')).replace(
/^no$/,
''
)
}),
h
);
},
_unlockAudio: function () {
var h = this || y,
q = /iPhone|iPad|iPod|Android|BlackBerry|BB10|Silk|Mobi|Chrome|Safari/i.test(
h._navigator && h._navigator.userAgent
);
if (!h._audioUnlocked && h.ctx && q) {
h._audioUnlocked = !1;
h.autoUnlock = !1;
h._mobileUnloaded || 44100 === h.ctx.sampleRate || ((h._mobileUnloaded = !0), h.unload());
h._scratchBuffer = h.ctx.createBuffer(1, 1, 22050);
var r = function (q) {
for (q = 0; q < h.html5PoolSize; q++) {
var w = new Audio();
w._unlocked = !0;
h._releaseHtml5Audio(w);
}
for (q = 0; q < h._howls.length; q++)
if (!h._howls[q]._webAudio) {
w = h._howls[q]._getSoundIds();
for (var E = 0; E < w.length; E++) {
var I = h._howls[q]._soundById(w[E]);
I && I._node && !I._node._unlocked && ((I._node._unlocked = !0), I._node.load());
}
}
h._autoResume();
var y = h.ctx.createBufferSource();
y.buffer = h._scratchBuffer;
y.connect(h.ctx.destination);
void 0 === y.start ? y.noteOn(0) : y.start(0);
'function' == typeof h.ctx.resume && h.ctx.resume();
y.onended = function () {
y.disconnect(0);
h._audioUnlocked = !0;
document.removeEventListener('touchstart', r, !0);
document.removeEventListener('touchend', r, !0);
document.removeEventListener('click', r, !0);
for (var q = 0; q < h._howls.length; q++) h._howls[q]._emit('unlock');
};
};
return (
document.addEventListener('touchstart', r, !0),
document.addEventListener('touchend', r, !0),
document.addEventListener('click', r, !0),
h
);
}
},
_obtainHtml5Audio: function () {
var h = this || y;
if (h._html5AudioPool.length) return h._html5AudioPool.pop();
h = new Audio().play();
return (
h &&
'undefined' != typeof Promise &&
(h instanceof Promise || 'function' == typeof h.then) &&
h.catch(function () {
console.warn('HTML5 Audio pool exhausted, returning potentially locked audio object.');
}),
new Audio()
);
},
_releaseHtml5Audio: function (h) {
var q = this || y;
return h._unlocked && q._html5AudioPool.push(h), q;
},
_autoSuspend: function () {
var h = this;
if (h.autoSuspend && h.ctx && void 0 !== h.ctx.suspend && y.usingWebAudio) {
for (var q = 0; q < h._howls.length; q++)
if (h._howls[q]._webAudio)
for (var r = 0; r < h._howls[q]._sounds.length; r++)
if (!h._howls[q]._sounds[r]._paused) return h;
return (
h._suspendTimer && clearTimeout(h._suspendTimer),
(h._suspendTimer = setTimeout(function () {
h.autoSuspend &&
((h._suspendTimer = null),
(h.state = 'suspending'),
h.ctx.suspend().then(function () {
h.state = 'suspended';
h._resumeAfterSuspend && (delete h._resumeAfterSuspend, h._autoResume());
}));
}, 3e4)),
h
);
}
},
_autoResume: function () {
var h = this;
if (h.ctx && void 0 !== h.ctx.resume && y.usingWebAudio)
return (
'running' === h.state && h._suspendTimer
? (clearTimeout(h._suspendTimer), (h._suspendTimer = null))
: 'suspended' === h.state
? (h.ctx.resume().then(function () {
h.state = 'running';
for (var q = 0; q < h._howls.length; q++) h._howls[q]._emit('resume');
}),
h._suspendTimer && (clearTimeout(h._suspendTimer), (h._suspendTimer = null)))
: 'suspending' === h.state && (h._resumeAfterSuspend = !0),
h
);
}
};
var y = new ba(),
R = function (h) {
if (!h.src || 0 === h.src.length)
return void console.error('An array of source files must be passed with any new Howl.');
this.init(h);
};
R.prototype = {
init: function (q) {
var r = this;
return (
y.ctx || h(),
(r._autoplay = q.autoplay || !1),
(r._format = 'string' != typeof q.format ? q.format : [q.format]),
(r._html5 = q.html5 || !1),
(r._muted = q.mute || !1),
(r._loop = q.loop || !1),
(r._pool = q.pool || 5),
(r._preload = 'boolean' != typeof q.preload || q.preload),
(r._rate = q.rate || 1),
(r._sprite = q.sprite || {}),
(r._src = 'string' != typeof q.src ? q.src : [q.src]),
(r._volume = void 0 !== q.volume ? q.volume : 1),
(r._xhrWithCredentials = q.xhrWithCredentials || !1),
(r._duration = 0),
(r._state = 'unloaded'),
(r._sounds = []),
(r._endTimers = {}),
(r._queue = []),
(r._playLock = !1),
(r._onend = q.onend ? [{ fn: q.onend }] : []),
(r._onfade = q.onfade ? [{ fn: q.onfade }] : []),
(r._onload = q.onload ? [{ fn: q.onload }] : []),
(r._onloaderror = q.onloaderror ? [{ fn: q.onloaderror }] : []),
(r._onplayerror = q.onplayerror ? [{ fn: q.onplayerror }] : []),
(r._onpause = q.onpause ? [{ fn: q.onpause }] : []),
(r._onplay = q.onplay ? [{ fn: q.onplay }] : []),
(r._onstop = q.onstop ? [{ fn: q.onstop }] : []),
(r._onmute = q.onmute ? [{ fn: q.onmute }] : []),
(r._onvolume = q.onvolume ? [{ fn: q.onvolume }] : []),
(r._onrate = q.onrate ? [{ fn: q.onrate }] : []),
(r._onseek = q.onseek ? [{ fn: q.onseek }] : []),
(r._onunlock = q.onunlock ? [{ fn: q.onunlock }] : []),
(r._onresume = []),
(r._webAudio = y.usingWebAudio && !r._html5),
void 0 !== y.ctx && y.ctx && y.autoUnlock && y._unlockAudio(),
y._howls.push(r),
r._autoplay &&
r._queue.push({
event: 'play',
action: function () {
r.play();
}
}),
r._preload && r.load(),
r
);
},
load: function () {
var h = null;
if (y.noAudio) return void this._emit('loaderror', null, 'No audio support.');
'string' == typeof this._src && (this._src = [this._src]);
for (var q = 0; q < this._src.length; q++) {
var r;
if (this._format && this._format[q]) var za = this._format[q];
else {
if ('string' != typeof (r = this._src[q])) {
this._emit('loaderror', null, 'Non-string found in selected audio sources - ignoring.');
continue;
}
(za = /^data:audio\/([^;,]+);/i.exec(r)) || (za = /\.([^.]+)$/.exec(r.split('?', 1)[0]));
za && (za = za[1].toLowerCase());
}
if (
(za ||
console.warn(
'No file extension was found. Consider using the "format" property or specify an extension.'
),
za && y.codecs(za))
) {
h = this._src[q];
break;
}
}
return h
? ((this._src = h),
(this._state = 'loading'),
'https:' === window.location.protocol &&
'http:' === h.slice(0, 5) &&
((this._html5 = !0), (this._webAudio = !1)),
new O(this),
this._webAudio && ha(this),
this)
: void this._emit('loaderror', null, 'No codec support for selected audio sources.');
},
play: function (h, q) {
var r = this,
w = null;
if ('number' == typeof h) (w = h), (h = null);
else {
if ('string' == typeof h && 'loaded' === r._state && !r._sprite[h]) return null;
if (void 0 === h && ((h = '__default'), !r._playLock)) {
for (var E = 0, A = 0; A < r._sounds.length; A++)
r._sounds[A]._paused && !r._sounds[A]._ended && (E++, (w = r._sounds[A]._id));
1 === E ? (h = null) : (w = null);
}
}
var Q = w ? r._soundById(w) : r._inactiveSound();
if (!Q) return null;
if ((w && !h && (h = Q._sprite || '__default'), 'loaded' !== r._state)) {
Q._sprite = h;
Q._ended = !1;
var R = Q._id;
return (
r._queue.push({
event: 'play',
action: function () {
r.play(R);
}
}),
R
);
}
if (w && !Q._paused) return q || r._loadQueue('play'), Q._id;
r._webAudio && y._autoResume();
var O = Math.max(0, 0 < Q._seek ? Q._seek : r._sprite[h][0] / 1e3),
Z = Math.max(0, (r._sprite[h][0] + r._sprite[h][1]) / 1e3 - O),
ba = (1e3 * Z) / Math.abs(Q._rate),
B = r._sprite[h][0] / 1e3,
ha = (r._sprite[h][0] + r._sprite[h][1]) / 1e3,
Ka = !(!Q._loop && !r._sprite[h][2]);
Q._sprite = h;
Q._ended = !1;
var Sa = function () {
Q._paused = !1;
Q._seek = O;
Q._start = B;
Q._stop = ha;
Q._loop = Ka;
};
if (O >= ha) return void r._ended(Q);
var U = Q._node;
if (r._webAudio)
(w = function () {
r._playLock = !1;
Sa();
r._refreshBuffer(Q);
U.gain.setValueAtTime(Q._muted || r._muted ? 0 : Q._volume, y.ctx.currentTime);
Q._playStart = y.ctx.currentTime;
void 0 === U.bufferSource.start
? Q._loop
? U.bufferSource.noteGrainOn(0, O, 86400)
: U.bufferSource.noteGrainOn(0, O, Z)
: Q._loop
? U.bufferSource.start(0, O, 86400)
: U.bufferSource.start(0, O, Z);
ba !== 1 / 0 && (r._endTimers[Q._id] = setTimeout(r._ended.bind(r, Q), ba));
q ||
setTimeout(function () {
r._emit('play', Q._id);
r._loadQueue();
}, 0);
}),
'running' === y.state
? w()
: ((r._playLock = !0), r.once('resume', w), r._clearTimer(Q._id));
else {
var sb = function () {
U.currentTime = O;
U.muted = Q._muted || r._muted || y._muted || U.muted;
U.volume = Q._volume * y.volume();
U.playbackRate = Q._rate;
try {
var w = U.play();
if (
(w &&
'undefined' != typeof Promise &&
(w instanceof Promise || 'function' == typeof w.then)
? ((r._playLock = !0),
Sa(),
w
.then(function () {
r._playLock = !1;
U._unlocked = !0;
q || (r._emit('play', Q._id), r._loadQueue());
})
.catch(function () {
r._playLock = !1;
r._emit(
'playerror',
Q._id,
'Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction.'
);
Q._ended = !0;
Q._paused = !0;
}))
: q || ((r._playLock = !1), Sa(), r._emit('play', Q._id), r._loadQueue()),
(U.playbackRate = Q._rate),
U.paused)
)
return void r._emit(
'playerror',
Q._id,
'Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction.'
);
'__default' !== h || Q._loop
? (r._endTimers[Q._id] = setTimeout(r._ended.bind(r, Q), ba))
: ((r._endTimers[Q._id] = function () {
r._ended(Q);
U.removeEventListener('ended', r._endTimers[Q._id], !1);
}),
U.addEventListener('ended', r._endTimers[Q._id], !1));
} catch (ne) {
r._emit('playerror', Q._id, ne);
}
};
w = (window && window.ejecta) || (!U.readyState && y._navigator.isCocoonJS);
if (3 <= U.readyState || w) sb();
else {
r._playLock = !0;
var ma = function () {
sb();
U.removeEventListener(y._canPlayEvent, ma, !1);
};
U.addEventListener(y._canPlayEvent, ma, !1);
r._clearTimer(Q._id);
}
}
return Q._id;
},
pause: function (h, q) {
var r = this;
if ('loaded' !== r._state || r._playLock)
return (
r._queue.push({
event: 'pause',
action: function () {
r.pause(h);
}
}),
r
);
for (var w = r._getSoundIds(h), E = 0; E < w.length; E++) {
r._clearTimer(w[E]);
var A = r._soundById(w[E]);
if (
A &&
!A._paused &&
((A._seek = r.seek(w[E])),
(A._rateSeek = 0),
(A._paused = !0),
r._stopFade(w[E]),
A._node)
)
if (r._webAudio) {
if (!A._node.bufferSource) continue;
void 0 === A._node.bufferSource.stop
? A._node.bufferSource.noteOff(0)
: A._node.bufferSource.stop(0);
r._cleanBuffer(A._node);
} else (isNaN(A._node.duration) && A._node.duration !== 1 / 0) || A._node.pause();
q || r._emit('pause', A ? A._id : null);
}
return r;
},
stop: function (h, q) {
var r = this;
if ('loaded' !== r._state || r._playLock)
return (
r._queue.push({
event: 'stop',
action: function () {
r.stop(h);
}
}),
r
);
for (var w = r._getSoundIds(h), E = 0; E < w.length; E++) {
r._clearTimer(w[E]);
var A = r._soundById(w[E]);
A &&
((A._seek = A._start || 0),
(A._rateSeek = 0),
(A._paused = !0),
(A._ended = !0),
r._stopFade(w[E]),
A._node &&
(r._webAudio
? A._node.bufferSource &&
(void 0 === A._node.bufferSource.stop
? A._node.bufferSource.noteOff(0)
: A._node.bufferSource.stop(0),
r._cleanBuffer(A._node))
: (isNaN(A._node.duration) && A._node.duration !== 1 / 0) ||
((A._node.currentTime = A._start || 0), A._node.pause())),
q || r._emit('stop', A._id));
}
return r;
},
mute: function (h, q) {
var r = this;
if ('loaded' !== r._state || r._playLock)
return (
r._queue.push({
event: 'mute',
action: function () {
r.mute(h, q);
}
}),
r
);
if (void 0 === q) {
if ('boolean' != typeof h) return r._muted;
r._muted = h;
}
for (var w = r._getSoundIds(q), E = 0; E < w.length; E++) {
var A = r._soundById(w[E]);
A &&
((A._muted = h),
A._interval && r._stopFade(A._id),
r._webAudio && A._node
? A._node.gain.setValueAtTime(h ? 0 : A._volume, y.ctx.currentTime)
: A._node && (A._node.muted = !!y._muted || h),
r._emit('mute', A._id));
}
return r;
},
volume: function () {
var h,
q,
r = this,
Q = arguments;
if (0 === Q.length) return r._volume;
1 === Q.length || (2 === Q.length && void 0 === Q[1])
? 0 <= r._getSoundIds().indexOf(Q[0])
? (q = parseInt(Q[0], 10))
: (h = parseFloat(Q[0]))
: 2 <= Q.length && ((h = parseFloat(Q[0])), (q = parseInt(Q[1], 10)));
var Ja;
if (!(void 0 !== h && 0 <= h && 1 >= h))
return (Ja = q ? r._soundById(q) : r._sounds[0]), Ja ? Ja._volume : 0;
if ('loaded' !== r._state || r._playLock)
return (
r._queue.push({
event: 'volume',
action: function () {
r.volume.apply(r, Q);
}
}),
r
);
void 0 === q && (r._volume = h);
q = r._getSoundIds(q);
for (var A = 0; A < q.length; A++)
(Ja = r._soundById(q[A])) &&
((Ja._volume = h),
Q[2] || r._stopFade(q[A]),
r._webAudio && Ja._node && !Ja._muted
? Ja._node.gain.setValueAtTime(h, y.ctx.currentTime)
: Ja._node && !Ja._muted && (Ja._node.volume = h * y.volume()),
r._emit('volume', Ja._id));
return r;
},
fade: function (h, q, r, Q) {
var w = this;
if ('loaded' !== w._state || w._playLock)
return (
w._queue.push({
event: 'fade',
action: function () {
w.fade(h, q, r, Q);
}
}),
w
);
h = parseFloat(h);
q = parseFloat(q);
r = parseFloat(r);
w.volume(h, Q);
for (var E = w._getSoundIds(Q), I = 0; I < E.length; I++) {
var za = w._soundById(E[I]);
if (za) {
if ((Q || w._stopFade(E[I]), w._webAudio && !za._muted)) {
var O = y.ctx.currentTime,
Z = O + r / 1e3;
za._volume = h;
za._node.gain.setValueAtTime(h, O);
za._node.gain.linearRampToValueAtTime(q, Z);
}
w._startFadeInterval(za, h, q, r, E[I], void 0 === Q);
}
}
return w;
},
_startFadeInterval: function (h, q, r, y, Q, A) {
var w = this,
E = q,
I = r - q;
Q = Math.abs(I / 0.01);
Q = Math.max(4, 0 < Q ? y / Q : y);
var Z = Date.now();
h._fadeTo = r;
h._interval = setInterval(function () {
var Q = (Date.now() - Z) / y;
Z = Date.now();
E += I * Q;
E = Math.max(0, E);
E = Math.min(1, E);
E = Math.round(100 * E) / 100;
w._webAudio ? (h._volume = E) : w.volume(E, h._id, !0);
A && (w._volume = E);
((r < q && E <= r) || (r > q && E >= r)) &&
(clearInterval(h._interval),
(h._interval = null),
(h._fadeTo = null),
w.volume(r, h._id),
w._emit('fade', h._id));
}, Q);
},
_stopFade: function (h) {
var q = this._soundById(h);
return (
q &&
q._interval &&
(this._webAudio && q._node.gain.cancelScheduledValues(y.ctx.currentTime),
clearInterval(q._interval),
(q._interval = null),
this.volume(q._fadeTo, h),
(q._fadeTo = null),
this._emit('fade', h)),
this
);
},
loop: function () {
var h,
q,
r,
y = arguments;
if (0 === y.length) return this._loop;
if (1 === y.length) {
if ('boolean' != typeof y[0]) return !!(r = this._soundById(parseInt(y[0], 10))) && r._loop;
this._loop = h = y[0];
} else 2 === y.length && ((h = y[0]), (q = parseInt(y[1], 10)));
q = this._getSoundIds(q);
for (y = 0; y < q.length; y++)
(r = this._soundById(q[y])) &&
((r._loop = h),
this._webAudio &&
r._node &&
r._node.bufferSource &&
((r._node.bufferSource.loop = h),
h &&
((r._node.bufferSource.loopStart = r._start || 0),
(r._node.bufferSource.loopEnd = r._stop))));
return this;
},
rate: function () {
var h,
q,
r = this,
Q = arguments;
0 === Q.length
? (q = r._sounds[0]._id)
: 1 === Q.length
? 0 <= r._getSoundIds().indexOf(Q[0])
? (q = parseInt(Q[0], 10))
: (h = parseFloat(Q[0]))
: 2 === Q.length && ((h = parseFloat(Q[0])), (q = parseInt(Q[1], 10)));
var O;
if ('number' != typeof h) return (O = r._soundById(q)), O ? O._rate : r._rate;
if ('loaded' !== r._state || r._playLock)
return (
r._queue.push({
event: 'rate',
action: function () {
r.rate.apply(r, Q);
}
}),
r
);
void 0 === q && (r._rate = h);
q = r._getSoundIds(q);
for (var A = 0; A < q.length; A++)
if ((O = r._soundById(q[A]))) {
r.playing(q[A]) &&
((O._rateSeek = r.seek(q[A])),
(O._playStart = r._webAudio ? y.ctx.currentTime : O._playStart));
O._rate = h;
r._webAudio && O._node && O._node.bufferSource
? O._node.bufferSource.playbackRate.setValueAtTime(h, y.ctx.currentTime)
: O._node && (O._node.playbackRate = h);
var R = r.seek(q[A]);
R =
(1e3 * ((r._sprite[O._sprite][0] + r._sprite[O._sprite][1]) / 1e3 - R)) /
Math.abs(O._rate);
(!r._endTimers[q[A]] && O._paused) ||
(r._clearTimer(q[A]), (r._endTimers[q[A]] = setTimeout(r._ended.bind(r, O), R)));
r._emit('rate', O._id);
}
return r;
},
seek: function () {
var h,
q,
r = this,
Q = arguments;
0 === Q.length
? (q = r._sounds[0]._id)
: 1 === Q.length
? 0 <= r._getSoundIds().indexOf(Q[0])
? (q = parseInt(Q[0], 10))
: r._sounds.length && ((q = r._sounds[0]._id), (h = parseFloat(Q[0])))
: 2 === Q.length && ((h = parseFloat(Q[0])), (q = parseInt(Q[1], 10)));
if (void 0 === q) return r;
if ('loaded' !== r._state || r._playLock)
return (
r._queue.push({
event: 'seek',
action: function () {
r.seek.apply(r, Q);
}
}),
r
);
var O = r._soundById(q);
if (O) {
if (!('number' == typeof h && 0 <= h))
return r._webAudio
? ((h = r.playing(q) ? y.ctx.currentTime - O._playStart : 0),
O._seek + ((O._rateSeek ? O._rateSeek - O._seek : 0) + h * Math.abs(O._rate)))
: O._node.currentTime;
var A = r.playing(q);
A && r.pause(q, !0);
O._seek = h;
O._ended = !1;
r._clearTimer(q);
r._webAudio || !O._node || isNaN(O._node.duration) || (O._node.currentTime = h);
var R = function () {
r._emit('seek', q);
A && r.play(q, !0);
};
if (A && !r._webAudio) {
var ba = function () {
r._playLock ? setTimeout(ba, 0) : R();
};
setTimeout(ba, 0);
} else R();
}
return r;
},
playing: function (h) {
if ('number' == typeof h) return (h = this._soundById(h)), !!h && !h._paused;
for (h = 0; h < this._sounds.length; h++) if (!this._sounds[h]._paused) return !0;
return !1;
},
duration: function (h) {
var q = this._duration;
h = this._soundById(h);
return h && (q = this._sprite[h._sprite][1] / 1e3), q;
},
state: function () {
return this._state;
},
unload: function () {
for (var h = this._sounds, q = 0; q < h.length; q++)
(h[q]._paused || this.stop(h[q]._id), this._webAudio) ||
(/MSIE |Trident\//.test(y._navigator && y._navigator.userAgent) ||
(h[q]._node.src =
'data:audio/wav;base64,UklGRigAAABXQVZFZm10IBIAAAABAAEARKwAAIhYAQACABAAAABkYXRhAgAAAAEA'),
h[q]._node.removeEventListener('error', h[q]._errorFn, !1),
h[q]._node.removeEventListener(y._canPlayEvent, h[q]._loadFn, !1),
y._releaseHtml5Audio(h[q]._node)),
delete h[q]._node,
this._clearTimer(h[q]._id);
q = y._howls.indexOf(this);
0 <= q && y._howls.splice(q, 1);
h = !0;
for (q = 0; q < y._howls.length; q++)
if (y._howls[q]._src === this._src || 0 <= this._src.indexOf(y._howls[q]._src)) {
h = !1;
break;
}
return (
Q && h && delete Q[this._src],
(y.noAudio = !1),
(this._state = 'unloaded'),
(this._sounds = []),
null
);
},
on: function (h, q, r, y) {
h = this['_on' + h];
return (
'function' == typeof q && h.push(y ? { id: r, fn: q, once: y } : { id: r, fn: q }), this
);
},
off: function (h, q, r) {
var w = this['_on' + h];
if (('number' == typeof q && ((r = q), (q = null)), q || r))
for (h = 0; h < w.length; h++) {
var E = r === w[h].id;
if ((q === w[h].fn && E) || (!q && E)) {
w.splice(h, 1);
break;
}
}
else if (h) this['_on' + h] = [];
else
for (q = Object.keys(this), h = 0; h < q.length; h++)
0 === q[h].indexOf('_on') && Array.isArray(this[q[h]]) && (this[q[h]] = []);
return this;
},
once: function (h, q, r) {
return this.on(h, q, r, 1), this;
},
_emit: function (h, q, r) {
for (var w = this['_on' + h], E = w.length - 1; 0 <= E; E--)
(w[E].id && w[E].id !== q && 'load' !== h) ||
(setTimeout(
function (h) {
h.call(this, q, r);
}.bind(this, w[E].fn),
0
),
w[E].once && this.off(h, w[E].fn, w[E].id));
return this._loadQueue(h), this;
},
_loadQueue: function (h) {
if (0 < this._queue.length) {
var q = this._queue[0];
q.event === h && (this._queue.shift(), this._loadQueue());
h || q.action();
}
return this;
},
_ended: function (h) {
var q = h._sprite;
if (
!this._webAudio &&
h._node &&
!h._node.paused &&
!h._node.ended &&
h._node.currentTime < h._stop
)
return setTimeout(this._ended.bind(this, h), 100), this;
q = !(!h._loop && !this._sprite[q][2]);
if (
(this._emit('end', h._id),
!this._webAudio && q && this.stop(h._id, !0).play(h._id),
this._webAudio && q)
) {
this._emit('play', h._id);
h._seek = h._start || 0;
h._rateSeek = 0;
h._playStart = y.ctx.currentTime;
var r = (1e3 * (h._stop - h._start)) / Math.abs(h._rate);
this._endTimers[h._id] = setTimeout(this._ended.bind(this, h), r);
}
return (
this._webAudio &&
!q &&
((h._paused = !0),
(h._ended = !0),
(h._seek = h._start || 0),
(h._rateSeek = 0),
this._clearTimer(h._id),
this._cleanBuffer(h._node),
y._autoSuspend()),
this._webAudio || q || this.stop(h._id, !0),
this
);
},
_clearTimer: function (h) {
if (this._endTimers[h]) {
if ('function' != typeof this._endTimers[h]) clearTimeout(this._endTimers[h]);
else {
var q = this._soundById(h);
q && q._node && q._node.removeEventListener('ended', this._endTimers[h], !1);
}
delete this._endTimers[h];
}
return this;
},
_soundById: function (h) {
for (var q = 0; q < this._sounds.length; q++)
if (h === this._sounds[q]._id) return this._sounds[q];
return null;
},
_inactiveSound: function () {
this._drain();
for (var h = 0; h < this._sounds.length; h++)
if (this._sounds[h]._ended) return this._sounds[h].reset();
return new O(this);
},
_drain: function () {
var h = this._pool,
q = 0,
r;
if (!(this._sounds.length < h)) {
for (r = 0; r < this._sounds.length; r++) this._sounds[r]._ended && q++;
for (r = this._sounds.length - 1; 0 <= r && !(q <= h); r--)
this._sounds[r]._ended &&
(this._webAudio && this._sounds[r]._node && this._sounds[r]._node.disconnect(0),
this._sounds.splice(r, 1),
q--);
}
},
_getSoundIds: function (h) {
if (void 0 === h) {
h = [];
for (var q = 0; q < this._sounds.length; q++) h.push(this._sounds[q]._id);
return h;
}
return [h];
},
_refreshBuffer: function (h) {
return (
(h._node.bufferSource = y.ctx.createBufferSource()),
(h._node.bufferSource.buffer = Q[this._src]),
h._panner ? h._node.bufferSource.connect(h._panner) : h._node.bufferSource.connect(h._node),
(h._node.bufferSource.loop = h._loop),
h._loop &&
((h._node.bufferSource.loopStart = h._start || 0),
(h._node.bufferSource.loopEnd = h._stop || 0)),
h._node.bufferSource.playbackRate.setValueAtTime(h._rate, y.ctx.currentTime),
this
);
},
_cleanBuffer: function (h) {
var q = y._navigator && 0 <= y._navigator.vendor.indexOf('Apple');
if (
y._scratchBuffer &&
h.bufferSource &&
((h.bufferSource.onended = null), h.bufferSource.disconnect(0), q)
)
try {
h.bufferSource.buffer = y._scratchBuffer;
} catch (I) {}
return (h.bufferSource = null), this;
}
};
var O = function (h) {
this._parent = h;
this.init();
};
O.prototype = {
init: function () {
var h = this._parent;
return (
(this._muted = h._muted),
(this._loop = h._loop),
(this._volume = h._volume),
(this._rate = h._rate),
(this._seek = 0),
(this._paused = !0),
(this._ended = !0),
(this._sprite = '__default'),
(this._id = ++y._counter),
h._sounds.push(this),
this.create(),
this
);
},
create: function () {
var h = this._parent,
q = y._muted || this._muted || this._parent._muted ? 0 : this._volume;
return (
h._webAudio
? ((this._node =
void 0 === y.ctx.createGain ? y.ctx.createGainNode() : y.ctx.createGain()),
this._node.gain.setValueAtTime(q, y.ctx.currentTime),
(this._node.paused = !0),
this._node.connect(y.masterGain))
: ((this._node = y._obtainHtml5Audio()),
(this._errorFn = this._errorListener.bind(this)),
this._node.addEventListener('error', this._errorFn, !1),
(this._loadFn = this._loadListener.bind(this)),
this._node.addEventListener(y._canPlayEvent, this._loadFn, !1),
(this._node.src = h._src),
(this._node.preload = 'auto'),
(this._node.volume = q * y.volume()),
this._node.load()),
this
);
},
reset: function () {
var h = this._parent;
return (
(this._muted = h._muted),
(this._loop = h._loop),
(this._volume = h._volume),
(this._rate = h._rate),
(this._seek = 0),
(this._rateSeek = 0),
(this._paused = !0),
(this._ended = !0),
(this._sprite = '__default'),
(this._id = ++y._counter),
this
);
},
_errorListener: function () {
this._parent._emit('loaderror', this._id, this._node.error ? this._node.error.code : 0);
this._node.removeEventListener('error', this._errorFn, !1);
},
_loadListener: function () {
var h = this._parent;
h._duration = Math.ceil(10 * this._node.duration) / 10;
0 === Object.keys(h._sprite).length && (h._sprite = { __default: [0, 1e3 * h._duration] });
'loaded' !== h._state && ((h._state = 'loaded'), h._emit('load'), h._loadQueue());
this._node.removeEventListener(y._canPlayEvent, this._loadFn, !1);
}
};
var Q = {},
ha = function (h) {
var w = h._src;
if (Q[w]) return (h._duration = Q[w].duration), void q(h);
if (/^data:[^;]+;base64,/.test(w)) {
for (var y = atob(w.split(',')[1]), O = new Uint8Array(y.length), R = 0; R < y.length; ++R)
O[R] = y.charCodeAt(R);
Ka(O.buffer, h);
} else {
var A = new XMLHttpRequest();
A.open('GET', w, !0);
A.withCredentials = h._xhrWithCredentials;
A.responseType = 'arraybuffer';
A.onload = function () {
var q = (A.status + '')[0];
if ('0' !== q && '2' !== q && '3' !== q)
return void h._emit(
'loaderror',
null,
'Failed loading audio file with status: ' + A.status + '.'
);
Ka(A.response, h);
};
A.onerror = function () {
h._webAudio &&
((h._html5 = !0), (h._webAudio = !1), (h._sounds = []), delete Q[w], h.load());
};
r(A);
}
},
r = function (h) {
try {
h.send();
} catch (E) {
h.onerror();
}
},
Ka = function (h, r) {
var w = function () {
r._emit('loaderror', null, 'Decoding audio data failed.');
},
E = function (h) {
h && 0 < r._sounds.length ? ((Q[r._src] = h), q(r, h)) : w();
};
'undefined' != typeof Promise && 1 === y.ctx.decodeAudioData.length
? y.ctx.decodeAudioData(h).then(E).catch(w)
: y.ctx.decodeAudioData(h, E, w);
},
q = function (h, q) {
q && !h._duration && (h._duration = q.duration);
0 === Object.keys(h._sprite).length && (h._sprite = { __default: [0, 1e3 * h._duration] });
'loaded' !== h._state && ((h._state = 'loaded'), h._emit('load'), h._loadQueue());
},
h = function () {
if (y.usingWebAudio) {
try {
'undefined' != typeof AudioContext
? (y.ctx = new AudioContext())
: 'undefined' != typeof webkitAudioContext
? (y.ctx = new webkitAudioContext())
: (y.usingWebAudio = !1);
} catch (I) {
y.usingWebAudio = !1;
}
y.ctx || (y.usingWebAudio = !1);
var h = /iP(hone|od|ad)/.test(y._navigator && y._navigator.platform),
q = y._navigator && y._navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/);
q = q ? parseInt(q[1], 10) : null;
h &&
q &&
9 > q &&
((h = /safari/.test(y._navigator && y._navigator.userAgent.toLowerCase())),
((y._navigator && y._navigator.standalone && !h) ||
(y._navigator && !y._navigator.standalone && !h)) &&
(y.usingWebAudio = !1));
y.usingWebAudio &&
((y.masterGain =
void 0 === y.ctx.createGain ? y.ctx.createGainNode() : y.ctx.createGain()),
y.masterGain.gain.setValueAtTime(y._muted ? 0 : 1, y.ctx.currentTime),
y.masterGain.connect(y.ctx.destination));
y._setup();
}
};
'function' == typeof define &&
define.amd &&
define([], function () {
return { Howler: y, Howl: R };
});
'undefined' != typeof exports && ((exports.Howler = y), (exports.Howl = R));
'undefined' != typeof window
? ((window.HowlerGlobal = ba), (window.Howler = y), (window.Howl = R), (window.Sound = O))
: 'undefined' != typeof global &&
((global.HowlerGlobal = ba), (global.Howler = y), (global.Howl = R), (global.Sound = O));
})();
!(function () {
HowlerGlobal.prototype._pos = [0, 0, 0];
HowlerGlobal.prototype._orientation = [0, 0, -1, 0, 1, 0];
HowlerGlobal.prototype.stereo = function (y) {
if (!this.ctx || !this.ctx.listener) return this;
for (var R = this._howls.length - 1; 0 <= R; R--) this._howls[R].stereo(y);
return this;
};
HowlerGlobal.prototype.pos = function (y, R, O) {
return this.ctx && this.ctx.listener
? ((R = 'number' != typeof R ? this._pos[1] : R),
(O = 'number' != typeof O ? this._pos[2] : O),
'number' != typeof y
? this._pos
: ((this._pos = [y, R, O]),
void 0 !== this.ctx.listener.positionX
? (this.ctx.listener.positionX.setTargetAtTime(
this._pos[0],
Howler.ctx.currentTime,
0.1
),
this.ctx.listener.positionY.setTargetAtTime(
this._pos[1],
Howler.ctx.currentTime,
0.1
),
this.ctx.listener.positionZ.setTargetAtTime(
this._pos[2],
Howler.ctx.currentTime,
0.1
))
: this.ctx.listener.setPosition(this._pos[0], this._pos[1], this._pos[2]),
this))
: this;
};
HowlerGlobal.prototype.orientation = function (y, R, O, Q, ba, r) {
if (!this.ctx || !this.ctx.listener) return this;
var ha = this._orientation;
return (
(R = 'number' != typeof R ? ha[1] : R),
(O = 'number' != typeof O ? ha[2] : O),
(Q = 'number' != typeof Q ? ha[3] : Q),
(ba = 'number' != typeof ba ? ha[4] : ba),
(r = 'number' != typeof r ? ha[5] : r),
'number' != typeof y
? ha
: ((this._orientation = [y, R, O, Q, ba, r]),
void 0 !== this.ctx.listener.forwardX
? (this.ctx.listener.forwardX.setTargetAtTime(y, Howler.ctx.currentTime, 0.1),
this.ctx.listener.forwardY.setTargetAtTime(R, Howler.ctx.currentTime, 0.1),
this.ctx.listener.forwardZ.setTargetAtTime(O, Howler.ctx.currentTime, 0.1),
this.ctx.listener.upX.setTargetAtTime(y, Howler.ctx.currentTime, 0.1),
this.ctx.listener.upY.setTargetAtTime(R, Howler.ctx.currentTime, 0.1),
this.ctx.listener.upZ.setTargetAtTime(O, Howler.ctx.currentTime, 0.1))
: this.ctx.listener.setOrientation(y, R, O, Q, ba, r),
this)
);
};
Howl.prototype.init = (function (y) {
return function (R) {
return (
(this._orientation = R.orientation || [1, 0, 0]),
(this._stereo = R.stereo || null),
(this._pos = R.pos || null),
(this._pannerAttr = {
coneInnerAngle: void 0 !== R.coneInnerAngle ? R.coneInnerAngle : 360,
coneOuterAngle: void 0 !== R.coneOuterAngle ? R.coneOuterAngle : 360,
coneOuterGain: void 0 !== R.coneOuterGain ? R.coneOuterGain : 0,
distanceModel: void 0 !== R.distanceModel ? R.distanceModel : 'inverse',
maxDistance: void 0 !== R.maxDistance ? R.maxDistance : 1e4,
panningModel: void 0 !== R.panningModel ? R.panningModel : 'HRTF',
refDistance: void 0 !== R.refDistance ? R.refDistance : 1,
rolloffFactor: void 0 !== R.rolloffFactor ? R.rolloffFactor : 1
}),
(this._onstereo = R.onstereo ? [{ fn: R.onstereo }] : []),
(this._onpos = R.onpos ? [{ fn: R.onpos }] : []),
(this._onorientation = R.onorientation ? [{ fn: R.onorientation }] : []),
y.call(this, R)
);
};
})(Howl.prototype.init);
Howl.prototype.stereo = function (y, R) {
var O = this;
if (!O._webAudio) return O;
if ('loaded' !== O._state)
return (
O._queue.push({
event: 'stereo',
action: function () {
O.stereo(y, R);
}
}),
O
);
var Q = void 0 === Howler.ctx.createStereoPanner ? 'spatial' : 'stereo';
if (void 0 === R) {
if ('number' != typeof y) return O._stereo;
O._stereo = y;
O._pos = [y, 0, 0];
}
for (var ha = O._getSoundIds(R), r = 0; r < ha.length; r++) {
var Ka = O._soundById(ha[r]);
if (Ka) {
if ('number' != typeof y) return Ka._stereo;
Ka._stereo = y;
Ka._pos = [y, 0, 0];
Ka._node &&
((Ka._pannerAttr.panningModel = 'equalpower'),
(Ka._panner && Ka._panner.pan) || ba(Ka, Q),
'spatial' === Q
? void 0 !== Ka._panner.positionX
? (Ka._panner.positionX.setValueAtTime(y, Howler.ctx.currentTime),
Ka._panner.positionY.setValueAtTime(0, Howler.ctx.currentTime),
Ka._panner.positionZ.setValueAtTime(0, Howler.ctx.currentTime))
: Ka._panner.setPosition(y, 0, 0)
: Ka._panner.pan.setValueAtTime(y, Howler.ctx.currentTime));
O._emit('stereo', Ka._id);
}
}
return O;
};
Howl.prototype.pos = function (y, R, O, Q) {
var ha = this;
if (!ha._webAudio) return ha;
if ('loaded' !== ha._state)
return (
ha._queue.push({
event: 'pos',
action: function () {
ha.pos(y, R, O, Q);
}
}),
ha
);
if (((R = 'number' != typeof R ? 0 : R), (O = 'number' != typeof O ? -0.5 : O), void 0 === Q)) {
if ('number' != typeof y) return ha._pos;
ha._pos = [y, R, O];
}
for (var r = ha._getSoundIds(Q), Ka = 0; Ka < r.length; Ka++) {
var q = ha._soundById(r[Ka]);
if (q) {
if ('number' != typeof y) return q._pos;
q._pos = [y, R, O];
q._node &&
((q._panner && !q._panner.pan) || ba(q, 'spatial'),
void 0 !== q._panner.positionX
? (q._panner.positionX.setValueAtTime(y, Howler.ctx.currentTime),
q._panner.positionY.setValueAtTime(R, Howler.ctx.currentTime),
q._panner.positionZ.setValueAtTime(O, Howler.ctx.currentTime))
: q._panner.setPosition(y, R, O));
ha._emit('pos', q._id);
}
}
return ha;
};
Howl.prototype.orientation = function (y, R, O, Q) {
var ha = this;
if (!ha._webAudio) return ha;
if ('loaded' !== ha._state)
return (
ha._queue.push({
event: 'orientation',
action: function () {
ha.orientation(y, R, O, Q);
}
}),
ha
);
if (
((R = 'number' != typeof R ? ha._orientation[1] : R),
(O = 'number' != typeof O ? ha._orientation[2] : O),
void 0 === Q)
) {
if ('number' != typeof y) return ha._orientation;
ha._orientation = [y, R, O];
}
for (var r = ha._getSoundIds(Q), Ka = 0; Ka < r.length; Ka++) {
var q = ha._soundById(r[Ka]);
if (q) {
if ('number' != typeof y) return q._orientation;
q._orientation = [y, R, O];
q._node &&
(q._panner || (q._pos || (q._pos = ha._pos || [0, 0, -0.5]), ba(q, 'spatial')),
void 0 !== q._panner.orientationX
? (q._panner.orientationX.setValueAtTime(y, Howler.ctx.currentTime),
q._panner.orientationY.setValueAtTime(R, Howler.ctx.currentTime),
q._panner.orientationZ.setValueAtTime(O, Howler.ctx.currentTime))
: q._panner.setOrientation(y, R, O));
ha._emit('orientation', q._id);
}
}
return ha;
};
Howl.prototype.pannerAttr = function () {
var y,
R,
O = arguments;
if (!this._webAudio) return this;
if (0 === O.length) return this._pannerAttr;
if (1 === O.length) {
if ('object' != typeof O[0])
return (R = this._soundById(parseInt(O[0], 10))), R ? R._pannerAttr : this._pannerAttr;
var Q = O[0];
void 0 === y &&
(Q.pannerAttr ||
(Q.pannerAttr = {
coneInnerAngle: Q.coneInnerAngle,
coneOuterAngle: Q.coneOuterAngle,
coneOuterGain: Q.coneOuterGain,
distanceModel: Q.distanceModel,
maxDistance: Q.maxDistance,
refDistance: Q.refDistance,
rolloffFactor: Q.rolloffFactor,
panningModel: Q.panningModel
}),
(this._pannerAttr = {
coneInnerAngle:
void 0 !== Q.pannerAttr.coneInnerAngle
? Q.pannerAttr.coneInnerAngle
: this._coneInnerAngle,
coneOuterAngle:
void 0 !== Q.pannerAttr.coneOuterAngle
? Q.pannerAttr.coneOuterAngle
: this._coneOuterAngle,
coneOuterGain:
void 0 !== Q.pannerAttr.coneOuterGain
? Q.pannerAttr.coneOuterGain
: this._coneOuterGain,
distanceModel:
void 0 !== Q.pannerAttr.distanceModel
? Q.pannerAttr.distanceModel
: this._distanceModel,
maxDistance:
void 0 !== Q.pannerAttr.maxDistance ? Q.pannerAttr.maxDistance : this._maxDistance,
refDistance:
void 0 !== Q.pannerAttr.refDistance ? Q.pannerAttr.refDistance : this._refDistance,
rolloffFactor:
void 0 !== Q.pannerAttr.rolloffFactor
? Q.pannerAttr.rolloffFactor
: this._rolloffFactor,
panningModel:
void 0 !== Q.pannerAttr.panningModel ? Q.pannerAttr.panningModel : this._panningModel
}));
} else 2 === O.length && ((Q = O[0]), (y = parseInt(O[1], 10)));
y = this._getSoundIds(y);
for (O = 0; O < y.length; O++)
if ((R = this._soundById(y[O]))) {
var ha = R._pannerAttr;
ha = {
coneInnerAngle: void 0 !== Q.coneInnerAngle ? Q.coneInnerAngle : ha.coneInnerAngle,
coneOuterAngle: void 0 !== Q.coneOuterAngle ? Q.coneOuterAngle : ha.coneOuterAngle,
coneOuterGain: void 0 !== Q.coneOuterGain ? Q.coneOuterGain : ha.coneOuterGain,
distanceModel: void 0 !== Q.distanceModel ? Q.distanceModel : ha.distanceModel,
maxDistance: void 0 !== Q.maxDistance ? Q.maxDistance : ha.maxDistance,
refDistance: void 0 !== Q.refDistance ? Q.refDistance : ha.refDistance,
rolloffFactor: void 0 !== Q.rolloffFactor ? Q.rolloffFactor : ha.rolloffFactor,
panningModel: void 0 !== Q.panningModel ? Q.panningModel : ha.panningModel
};
var r = R._panner;
r
? ((r.coneInnerAngle = ha.coneInnerAngle),
(r.coneOuterAngle = ha.coneOuterAngle),
(r.coneOuterGain = ha.coneOuterGain),
(r.distanceModel = ha.distanceModel),
(r.maxDistance = ha.maxDistance),
(r.refDistance = ha.refDistance),
(r.rolloffFactor = ha.rolloffFactor),
(r.panningModel = ha.panningModel))
: (R._pos || (R._pos = this._pos || [0, 0, -0.5]), ba(R, 'spatial'));
}
return this;
};
Sound.prototype.init = (function (y) {
return function () {
var R = this._parent;
this._orientation = R._orientation;
this._stereo = R._stereo;
this._pos = R._pos;
this._pannerAttr = R._pannerAttr;
y.call(this);
this._stereo
? R.stereo(this._stereo)
: this._pos && R.pos(this._pos[0], this._pos[1], this._pos[2], this._id);
};
})(Sound.prototype.init);
Sound.prototype.reset = (function (y) {
return function () {
var R = this._parent;
return (
(this._orientation = R._orientation),
(this._stereo = R._stereo),
(this._pos = R._pos),
(this._pannerAttr = R._pannerAttr),
this._stereo
? R.stereo(this._stereo)
: this._pos
? R.pos(this._pos[0], this._pos[1], this._pos[2], this._id)
: this._panner &&
(this._panner.disconnect(0), (this._panner = void 0), R._refreshBuffer(this)),
y.call(this)
);
};
})(Sound.prototype.reset);
var ba = function (y, R) {
'spatial' === (R || 'spatial')
? ((y._panner = Howler.ctx.createPanner()),
(y._panner.coneInnerAngle = y._pannerAttr.coneInnerAngle),
(y._panner.coneOuterAngle = y._pannerAttr.coneOuterAngle),
(y._panner.coneOuterGain = y._pannerAttr.coneOuterGain),
(y._panner.distanceModel = y._pannerAttr.distanceModel),
(y._panner.maxDistance = y._pannerAttr.maxDistance),
(y._panner.refDistance = y._pannerAttr.refDistance),
(y._panner.rolloffFactor = y._pannerAttr.rolloffFactor),
(y._panner.panningModel = y._pannerAttr.panningModel),
void 0 !== y._panner.positionX
? (y._panner.positionX.setValueAtTime(y._pos[0], Howler.ctx.currentTime),
y._panner.positionY.setValueAtTime(y._pos[1], Howler.ctx.currentTime),
y._panner.positionZ.setValueAtTime(y._pos[2], Howler.ctx.currentTime))
: y._panner.setPosition(y._pos[0], y._pos[1], y._pos[2]),
void 0 !== y._panner.orientationX
? (y._panner.orientationX.setValueAtTime(y._orientation[0], Howler.ctx.currentTime),
y._panner.orientationY.setValueAtTime(y._orientation[1], Howler.ctx.currentTime),
y._panner.orientationZ.setValueAtTime(y._orientation[2], Howler.ctx.currentTime))
: y._panner.setOrientation(y._orientation[0], y._orientation[1], y._orientation[2]))
: ((y._panner = Howler.ctx.createStereoPanner()),
y._panner.pan.setValueAtTime(y._stereo, Howler.ctx.currentTime));
y._panner.connect(y._node);
y._paused || y._parent.pause(y._id, !0).play(y._id, !0);
};
})();
!(function (ba) {
'object' == typeof exports && 'undefined' != typeof module
? (module.exports = ba())
: 'function' == typeof define && define.amd
? define([], ba)
: (('undefined' != typeof window
? window
: 'undefined' != typeof global
? global
: 'undefined' != typeof self
? self
: this
).pako = ba());
})(function () {
return (function Q(y, R, O) {
function ha(q, h) {
if (!R[q]) {
if (!y[q]) {
var w = 'function' == typeof require && require;
if (!h && w) return w(q, !0);
if (r) return r(q, !0);
h = Error("Cannot find module '" + q + "'");
throw ((h.code = 'MODULE_NOT_FOUND'), h);
}
h = R[q] = { exports: {} };
y[q][0].call(
h.exports,
function (h) {
var r = y[q][1][h];
return ha(r ? r : h);
},
h,
h.exports,
Q,
y,
R,
O
);
}
return R[q].exports;
}
for (var r = 'function' == typeof require && require, Ka = 0; Ka < O.length; Ka++) ha(O[Ka]);
return ha;
})(
{
1: [
function (y, R, O) {
function Q(y) {
if (!(this instanceof Q)) return new Q(y);
y = this.options = Ka.assign(
{
level: za,
method: A,
chunkSize: 16384,
windowBits: 15,
memLevel: 8,
strategy: Ja,
to: ''
},
y || {}
);
y.raw && 0 < y.windowBits
? (y.windowBits = -y.windowBits)
: y.gzip && 0 < y.windowBits && 16 > y.windowBits && (y.windowBits += 16);
this.err = 0;
this.msg = '';
this.ended = !1;
this.chunks = [];
this.strm = new w();
this.strm.avail_out = 0;
var O = r.deflateInit2(
this.strm,
y.level,
y.method,
y.windowBits,
y.memLevel,
y.strategy
);
if (O !== I) throw Error(h[O]);
if ((y.header && r.deflateSetHeader(this.strm, y.header), y.dictionary)) {
var R;
if (
((R =
'string' == typeof y.dictionary
? q.string2buf(y.dictionary)
: '[object ArrayBuffer]' === E.call(y.dictionary)
? new Uint8Array(y.dictionary)
: y.dictionary),
(O = r.deflateSetDictionary(this.strm, R)),
O !== I)
)
throw Error(h[O]);
this._dict_set = !0;
}
}
function ha(h, q) {
q = new Q(q);
if ((q.push(h, !0), q.err)) throw q.msg;
return q.result;
}
var r = y('./zlib/deflate'),
Ka = y('./utils/common'),
q = y('./utils/strings'),
h = y('./zlib/messages'),
w = y('./zlib/zstream'),
E = Object.prototype.toString,
I = 0,
za = -1,
Ja = 0,
A = 8;
Q.prototype.push = function (h, w) {
var y,
A = this.strm,
Q = this.options.chunkSize;
if (this.ended) return !1;
w = w === ~~w ? w : !0 === w ? 4 : 0;
'string' == typeof h
? (A.input = q.string2buf(h))
: '[object ArrayBuffer]' === E.call(h)
? (A.input = new Uint8Array(h))
: (A.input = h);
A.next_in = 0;
A.avail_in = A.input.length;
do {
if (
(0 === A.avail_out &&
((A.output = new Ka.Buf8(Q)), (A.next_out = 0), (A.avail_out = Q)),
(y = r.deflate(A, w)),
1 !== y && y !== I)
)
return this.onEnd(y), (this.ended = !0), !1;
(0 !== A.avail_out && (0 !== A.avail_in || (4 !== w && 2 !== w))) ||
('string' === this.options.to
? this.onData(q.buf2binstring(Ka.shrinkBuf(A.output, A.next_out)))
: this.onData(Ka.shrinkBuf(A.output, A.next_out)));
} while ((0 < A.avail_in || 0 === A.avail_out) && 1 !== y);
return 4 === w
? ((y = r.deflateEnd(this.strm)), this.onEnd(y), (this.ended = !0), y === I)
: 2 !== w || (this.onEnd(I), (A.avail_out = 0), !0);
};
Q.prototype.onData = function (h) {
this.chunks.push(h);
};
Q.prototype.onEnd = function (h) {
h === I &&
('string' === this.options.to
? (this.result = this.chunks.join(''))
: (this.result = Ka.flattenChunks(this.chunks)));
this.chunks = [];
this.err = h;
this.msg = this.strm.msg;
};
O.Deflate = Q;
O.deflate = ha;
O.deflateRaw = function (h, q) {
return (q = q || {}), (q.raw = !0), ha(h, q);
};
O.gzip = function (h, q) {
return (q = q || {}), (q.gzip = !0), ha(h, q);
};
},
{
'./utils/common': 3,
'./utils/strings': 4,
'./zlib/deflate': 8,
'./zlib/messages': 13,
'./zlib/zstream': 15
}
],
2: [
function (y, R, O) {
function Q(q) {
if (!(this instanceof Q)) return new Q(q);
var A = (this.options = Ka.assign(
{ chunkSize: 16384, windowBits: 0, to: '' },
q || {}
));
A.raw &&
0 <= A.windowBits &&
16 > A.windowBits &&
((A.windowBits = -A.windowBits), 0 === A.windowBits && (A.windowBits = -15));
!(0 <= A.windowBits && 16 > A.windowBits) ||
(q && q.windowBits) ||
(A.windowBits += 32);
15 < A.windowBits &&
48 > A.windowBits &&
0 === (15 & A.windowBits) &&
(A.windowBits |= 15);
this.err = 0;
this.msg = '';
this.ended = !1;
this.chunks = [];
this.strm = new E();
this.strm.avail_out = 0;
q = r.inflateInit2(this.strm, A.windowBits);
if (q !== h.Z_OK) throw Error(w[q]);
this.header = new I();
r.inflateGetHeader(this.strm, this.header);
}
function ha(h, q) {
q = new Q(q);
if ((q.push(h, !0), q.err)) throw q.msg;
return q.result;
}
var r = y('./zlib/inflate'),
Ka = y('./utils/common'),
q = y('./utils/strings'),
h = y('./zlib/constants'),
w = y('./zlib/messages'),
E = y('./zlib/zstream'),
I = y('./zlib/gzheader'),
za = Object.prototype.toString;
Q.prototype.push = function (w, y) {
var A,
E,
I,
Q,
O,
B = this.strm,
R = this.options.chunkSize,
ha = this.options.dictionary,
Sa = !1;
if (this.ended) return !1;
y = y === ~~y ? y : !0 === y ? h.Z_FINISH : h.Z_NO_FLUSH;
'string' == typeof w
? (B.input = q.binstring2buf(w))
: '[object ArrayBuffer]' === za.call(w)
? (B.input = new Uint8Array(w))
: (B.input = w);
B.next_in = 0;
B.avail_in = B.input.length;
do {
if (
(0 === B.avail_out &&
((B.output = new Ka.Buf8(R)), (B.next_out = 0), (B.avail_out = R)),
(A = r.inflate(B, h.Z_NO_FLUSH)),
A === h.Z_NEED_DICT &&
ha &&
((O =
'string' == typeof ha
? q.string2buf(ha)
: '[object ArrayBuffer]' === za.call(ha)
? new Uint8Array(ha)
: ha),
(A = r.inflateSetDictionary(this.strm, O))),
A === h.Z_BUF_ERROR && !0 === Sa && ((A = h.Z_OK), (Sa = !1)),
A !== h.Z_STREAM_END && A !== h.Z_OK)
)
return this.onEnd(A), (this.ended = !0), !1;
B.next_out &&
((0 !== B.avail_out &&
A !== h.Z_STREAM_END &&
(0 !== B.avail_in || (y !== h.Z_FINISH && y !== h.Z_SYNC_FLUSH))) ||
('string' === this.options.to
? ((E = q.utf8border(B.output, B.next_out)),
(I = B.next_out - E),
(Q = q.buf2string(B.output, E)),
(B.next_out = I),
(B.avail_out = R - I),
I && Ka.arraySet(B.output, B.output, E, I, 0),
this.onData(Q))
: this.onData(Ka.shrinkBuf(B.output, B.next_out))));
0 === B.avail_in && 0 === B.avail_out && (Sa = !0);
} while ((0 < B.avail_in || 0 === B.avail_out) && A !== h.Z_STREAM_END);
return (
A === h.Z_STREAM_END && (y = h.Z_FINISH),
y === h.Z_FINISH
? ((A = r.inflateEnd(this.strm)), this.onEnd(A), (this.ended = !0), A === h.Z_OK)
: y !== h.Z_SYNC_FLUSH || (this.onEnd(h.Z_OK), (B.avail_out = 0), !0)
);
};
Q.prototype.onData = function (h) {
this.chunks.push(h);
};
Q.prototype.onEnd = function (q) {
q === h.Z_OK &&
('string' === this.options.to
? (this.result = this.chunks.join(''))
: (this.result = Ka.flattenChunks(this.chunks)));
this.chunks = [];
this.err = q;
this.msg = this.strm.msg;
};
O.Inflate = Q;
O.inflate = ha;
O.inflateRaw = function (h, q) {
return (q = q || {}), (q.raw = !0), ha(h, q);
};
O.ungzip = ha;
},
{
'./utils/common': 3,
'./utils/strings': 4,
'./zlib/constants': 6,
'./zlib/gzheader': 9,
'./zlib/inflate': 11,
'./zlib/messages': 13,
'./zlib/zstream': 15
}
],
3: [
function (y, R, O) {
y =
'undefined' != typeof Uint8Array &&
'undefined' != typeof Uint16Array &&
'undefined' != typeof Int32Array;
O.assign = function (r) {
for (var y = Array.prototype.slice.call(arguments, 1); y.length; ) {
var q = y.shift();
if (q) {
if ('object' != typeof q) throw new TypeError(q + 'must be non-object');
for (var h in q) q.hasOwnProperty(h) && (r[h] = q[h]);
}
}
return r;
};
O.shrinkBuf = function (r, y) {
return r.length === y ? r : r.subarray ? r.subarray(0, y) : ((r.length = y), r);
};
var Q = {
arraySet: function (r, y, q, h, w) {
if (y.subarray && r.subarray) return void r.set(y.subarray(q, q + h), w);
for (var E = 0; E < h; E++) r[w + E] = y[q + E];
},
flattenChunks: function (r) {
var y, q;
var h = (q = 0);
for (y = r.length; h < y; h++) q += r[h].length;
var w = new Uint8Array(q);
h = q = 0;
for (y = r.length; h < y; h++) {
var E = r[h];
w.set(E, q);
q += E.length;
}
return w;
}
},
ha = {
arraySet: function (r, y, q, h, w) {
for (var E = 0; E < h; E++) r[w + E] = y[q + E];
},
flattenChunks: function (r) {
return [].concat.apply([], r);
}
};
O.setTyped = function (r) {
r
? ((O.Buf8 = Uint8Array),
(O.Buf16 = Uint16Array),
(O.Buf32 = Int32Array),
O.assign(O, Q))
: ((O.Buf8 = Array), (O.Buf16 = Array), (O.Buf32 = Array), O.assign(O, ha));
};
O.setTyped(y);
},
{}
],
4: [
function (y, R, O) {
function Q(h, q) {
if (65537 > q && ((h.subarray && Ka) || (!h.subarray && r)))
return String.fromCharCode.apply(null, ha.shrinkBuf(h, q));
for (var w = '', y = 0; y < q; y++) w += String.fromCharCode(h[y]);
return w;
}
var ha = y('./common'),
r = !0,
Ka = !0;
try {
String.fromCharCode.apply(null, [0]);
} catch (h) {
r = !1;
}
try {
String.fromCharCode.apply(null, new Uint8Array(1));
} catch (h) {
Ka = !1;
}
var q = new ha.Buf8(256);
for (y = 0; 256 > y; y++)
q[y] = 252 <= y ? 6 : 248 <= y ? 5 : 240 <= y ? 4 : 224 <= y ? 3 : 192 <= y ? 2 : 1;
q[254] = q[254] = 1;
O.string2buf = function (h) {
var q,
r,
y,
Q = h.length,
O = 0;
for (r = 0; r < Q; r++) {
var A = h.charCodeAt(r);
55296 === (64512 & A) &&
r + 1 < Q &&
((q = h.charCodeAt(r + 1)),
56320 === (64512 & q) && ((A = 65536 + ((A - 55296) << 10) + (q - 56320)), r++));
O += 128 > A ? 1 : 2048 > A ? 2 : 65536 > A ? 3 : 4;
}
var R = new ha.Buf8(O);
for (r = y = 0; y < O; r++)
(A = h.charCodeAt(r)),
55296 === (64512 & A) &&
r + 1 < Q &&
((q = h.charCodeAt(r + 1)),
56320 === (64512 & q) && ((A = 65536 + ((A - 55296) << 10) + (q - 56320)), r++)),
128 > A
? (R[y++] = A)
: 2048 > A
? ((R[y++] = 192 | (A >>> 6)), (R[y++] = 128 | (63 & A)))
: 65536 > A
? ((R[y++] = 224 | (A >>> 12)),
(R[y++] = 128 | ((A >>> 6) & 63)),
(R[y++] = 128 | (63 & A)))
: ((R[y++] = 240 | (A >>> 18)),
(R[y++] = 128 | ((A >>> 12) & 63)),
(R[y++] = 128 | ((A >>> 6) & 63)),
(R[y++] = 128 | (63 & A)));
return R;
};
O.buf2binstring = function (h) {
return Q(h, h.length);
};
O.binstring2buf = function (h) {
for (var q = new ha.Buf8(h.length), r = 0, y = q.length; r < y; r++)
q[r] = h.charCodeAt(r);
return q;
};
O.buf2string = function (h, r) {
var w,
y,
O,
R = r || h.length,
A = Array(2 * R);
for (r = w = 0; r < R; )
if (((y = h[r++]), 128 > y)) A[w++] = y;
else if (((O = q[y]), 4 < O)) (A[w++] = 65533), (r += O - 1);
else {
for (y &= 2 === O ? 31 : 3 === O ? 15 : 7; 1 < O && r < R; )
(y = (y << 6) | (63 & h[r++])), O--;
1 < O
? (A[w++] = 65533)
: 65536 > y
? (A[w++] = y)
: ((y -= 65536),
(A[w++] = 55296 | ((y >> 10) & 1023)),
(A[w++] = 56320 | (1023 & y)));
}
return Q(A, w);
};
O.utf8border = function (h, r) {
var w;
r = r || h.length;
r > h.length && (r = h.length);
for (w = r - 1; 0 <= w && 128 === (192 & h[w]); ) w--;
return 0 > w ? r : 0 === w ? r : w + q[h[w]] > r ? w : r;
};
},
{ './common': 3 }
],
5: [
function (y, R, O) {
R.exports = function (y, O, r, R) {
var q = (65535 & y) | 0;
y = ((y >>> 16) & 65535) | 0;
for (var h; 0 !== r; ) {
h = 2e3 < r ? 2e3 : r;
r -= h;
do (q = (q + O[R++]) | 0), (y = (y + q) | 0);
while (--h);
q %= 65521;
y %= 65521;
}
return q | (y << 16) | 0;
};
},
{}
],
6: [
function (y, R, O) {
R.exports = {
Z_NO_FLUSH: 0,
Z_PARTIAL_FLUSH: 1,
Z_SYNC_FLUSH: 2,
Z_FULL_FLUSH: 3,
Z_FINISH: 4,
Z_BLOCK: 5,
Z_TREES: 6,
Z_OK: 0,
Z_STREAM_END: 1,
Z_NEED_DICT: 2,
Z_ERRNO: -1,
Z_STREAM_ERROR: -2,
Z_DATA_ERROR: -3,
Z_BUF_ERROR: -5,
Z_NO_COMPRESSION: 0,
Z_BEST_SPEED: 1,
Z_BEST_COMPRESSION: 9,
Z_DEFAULT_COMPRESSION: -1,
Z_FILTERED: 1,
Z_HUFFMAN_ONLY: 2,
Z_RLE: 3,
Z_FIXED: 4,
Z_DEFAULT_STRATEGY: 0,
Z_BINARY: 0,
Z_TEXT: 1,
Z_UNKNOWN: 2,
Z_DEFLATED: 8
};
},
{}
],
7: [
function (y, R, O) {
var Q = (function () {
for (var y, r = [], Q = 0; 256 > Q; Q++) {
y = Q;
for (var q = 0; 8 > q; q++) y = 1 & y ? 3988292384 ^ (y >>> 1) : y >>> 1;
r[Q] = y;
}
return r;
})();
R.exports = function (y, r, O, q) {
O = q + O;
for (y ^= -1; q < O; q++) y = (y >>> 8) ^ Q[255 & (y ^ r[q])];
return y ^ -1;
};
},
{}
],
8: [
function (y, R, O) {
function Q(h, q) {
return (h.msg = Fd[q]), q;
}
function ha(h) {
for (var q = h.length; 0 <= --q; ) h[q] = 0;
}
function r(h) {
var q = h.state,
r = q.pending;
r > h.avail_out && (r = h.avail_out);
0 !== r &&
(Z.arraySet(h.output, q.pending_buf, q.pending_out, r, h.next_out),
(h.next_out += r),
(q.pending_out += r),
(h.total_out += r),
(h.avail_out -= r),
(q.pending -= r),
0 === q.pending && (q.pending_out = 0));
}
function Ka(h, q) {
Pd._tr_flush_block(
h,
0 <= h.block_start ? h.block_start : -1,
h.strstart - h.block_start,
q
);
h.block_start = h.strstart;
r(h.strm);
}
function q(h, q) {
h.pending_buf[h.pending++] = q;
}
function h(h, q) {
h.pending_buf[h.pending++] = (q >>> 8) & 255;
h.pending_buf[h.pending++] = 255 & q;
}
function w(h, q) {
var r,
w,
z = h.max_chain_length,
y = h.strstart,
A = h.prev_length,
B = h.nice_match,
E = h.strstart > h.w_size - ya ? h.strstart - (h.w_size - ya) : 0,
I = h.window,
K = h.w_mask,
P = h.prev,
Q = h.strstart + Ca,
U = I[y + A - 1],
O = I[y + A];
h.prev_length >= h.good_match && (z >>= 2);
B > h.lookahead && (B = h.lookahead);
do
if (
((r = q),
I[r + A] === O && I[r + A - 1] === U && I[r] === I[y] && I[++r] === I[y + 1])
) {
y += 2;
for (
r++;
I[++y] === I[++r] &&
I[++y] === I[++r] &&
I[++y] === I[++r] &&
I[++y] === I[++r] &&
I[++y] === I[++r] &&
I[++y] === I[++r] &&
I[++y] === I[++r] &&
I[++y] === I[++r] &&
y < Q;
);
if (((w = Ca - (Q - y)), (y = Q - Ca), w > A)) {
if (((h.match_start = q), (A = w), w >= B)) break;
U = I[y + A - 1];
O = I[y + A];
}
}
while ((q = P[q & K]) > E && 0 !== --z);
return A <= h.lookahead ? A : h.lookahead;
}
function E(h) {
var q,
r,
w = h.w_size;
do {
if (((r = h.window_size - h.lookahead - h.strstart), h.strstart >= w + (w - ya))) {
Z.arraySet(h.window, h.window, w, w, 0);
h.match_start -= w;
h.strstart -= w;
h.block_start -= w;
var z = (q = h.hash_size);
do {
var y = h.head[--z];
h.head[z] = y >= w ? y - w : 0;
} while (--q);
z = q = w;
do (y = h.prev[--z]), (h.prev[z] = y >= w ? y - w : 0);
while (--q);
r += w;
}
if (0 === h.strm.avail_in) break;
z = h.strm;
y = h.window;
var A = h.strstart + h.lookahead,
E = z.avail_in;
if (
((q =
(E > r && (E = r),
0 === E
? 0
: ((z.avail_in -= E),
Z.arraySet(y, z.input, z.next_in, E, A),
1 === z.state.wrap
? (z.adler = B(z.adler, y, E, A))
: 2 === z.state.wrap && (z.adler = gb(z.adler, y, E, A)),
(z.next_in += E),
(z.total_in += E),
E))),
(h.lookahead += q),
h.lookahead + h.insert >= Ya)
)
for (
r = h.strstart - h.insert,
h.ins_h = h.window[r],
h.ins_h = ((h.ins_h << h.hash_shift) ^ h.window[r + 1]) & h.hash_mask;
h.insert &&
((h.ins_h = ((h.ins_h << h.hash_shift) ^ h.window[r + Ya - 1]) & h.hash_mask),
(h.prev[r & h.w_mask] = h.head[h.ins_h]),
(h.head[h.ins_h] = r),
r++,
h.insert--,
!(h.lookahead + h.insert < Ya));
);
} while (h.lookahead < ya && 0 !== h.strm.avail_in);
}
function I(h, q) {
for (var r, z; ; ) {
if (h.lookahead < ya) {
if ((E(h), h.lookahead < ya && q === Sa)) return ka;
if (0 === h.lookahead) break;
}
if (
((r = 0),
h.lookahead >= Ya &&
((h.ins_h =
((h.ins_h << h.hash_shift) ^ h.window[h.strstart + Ya - 1]) & h.hash_mask),
(r = h.prev[h.strstart & h.w_mask] = h.head[h.ins_h]),
(h.head[h.ins_h] = h.strstart)),
0 !== r && h.strstart - r <= h.w_size - ya && (h.match_length = w(h, r)),
h.match_length >= Ya)
)
if (
((z = Pd._tr_tally(h, h.strstart - h.match_start, h.match_length - Ya)),
(h.lookahead -= h.match_length),
h.match_length <= h.max_lazy_match && h.lookahead >= Ya)
) {
h.match_length--;
do
h.strstart++,
(h.ins_h =
((h.ins_h << h.hash_shift) ^ h.window[h.strstart + Ya - 1]) & h.hash_mask),
(r = h.prev[h.strstart & h.w_mask] = h.head[h.ins_h]),
(h.head[h.ins_h] = h.strstart);
while (0 !== --h.match_length);
h.strstart++;
} else
(h.strstart += h.match_length),
(h.match_length = 0),
(h.ins_h = h.window[h.strstart]),
(h.ins_h =
((h.ins_h << h.hash_shift) ^ h.window[h.strstart + 1]) & h.hash_mask);
else (z = Pd._tr_tally(h, 0, h.window[h.strstart])), h.lookahead--, h.strstart++;
if (z && (Ka(h, !1), 0 === h.strm.avail_out)) return ka;
}
return (
(h.insert = h.strstart < Ya - 1 ? h.strstart : Ya - 1),
q === U
? (Ka(h, !0), 0 === h.strm.avail_out ? mc : Tb)
: h.last_lit && (Ka(h, !1), 0 === h.strm.avail_out)
? ka
: P
);
}
function za(h, q) {
for (var r, z, y; ; ) {
if (h.lookahead < ya) {
if ((E(h), h.lookahead < ya && q === Sa)) return ka;
if (0 === h.lookahead) break;
}
if (
((r = 0),
h.lookahead >= Ya &&
((h.ins_h =
((h.ins_h << h.hash_shift) ^ h.window[h.strstart + Ya - 1]) & h.hash_mask),
(r = h.prev[h.strstart & h.w_mask] = h.head[h.ins_h]),
(h.head[h.ins_h] = h.strstart)),
(h.prev_length = h.match_length),
(h.prev_match = h.match_start),
(h.match_length = Ya - 1),
0 !== r &&
h.prev_length < h.max_lazy_match &&
h.strstart - r <= h.w_size - ya &&
((h.match_length = w(h, r)),
5 >= h.match_length &&
(h.strategy === ne ||
(h.match_length === Ya && 4096 < h.strstart - h.match_start)) &&
(h.match_length = Ya - 1)),
h.prev_length >= Ya && h.match_length <= h.prev_length)
) {
y = h.strstart + h.lookahead - Ya;
z = Pd._tr_tally(h, h.strstart - 1 - h.prev_match, h.prev_length - Ya);
h.lookahead -= h.prev_length - 1;
h.prev_length -= 2;
do
++h.strstart <= y &&
((h.ins_h =
((h.ins_h << h.hash_shift) ^ h.window[h.strstart + Ya - 1]) & h.hash_mask),
(r = h.prev[h.strstart & h.w_mask] = h.head[h.ins_h]),
(h.head[h.ins_h] = h.strstart));
while (0 !== --h.prev_length);
if (
((h.match_available = 0),
(h.match_length = Ya - 1),
h.strstart++,
z && (Ka(h, !1), 0 === h.strm.avail_out))
)
return ka;
} else if (h.match_available) {
if (
((z = Pd._tr_tally(h, 0, h.window[h.strstart - 1])),
z && Ka(h, !1),
h.strstart++,
h.lookahead--,
0 === h.strm.avail_out)
)
return ka;
} else (h.match_available = 1), h.strstart++, h.lookahead--;
}
return (
h.match_available &&
(Pd._tr_tally(h, 0, h.window[h.strstart - 1]), (h.match_available = 0)),
(h.insert = h.strstart < Ya - 1 ? h.strstart : Ya - 1),
q === U
? (Ka(h, !0), 0 === h.strm.avail_out ? mc : Tb)
: h.last_lit && (Ka(h, !1), 0 === h.strm.avail_out)
? ka
: P
);
}
function Ja(h, q, r, w, y) {
this.good_length = h;
this.max_lazy = q;
this.nice_length = r;
this.max_chain = w;
this.func = y;
}
function A() {
this.strm = null;
this.status = 0;
this.pending_buf = null;
this.wrap = this.pending = this.pending_out = this.pending_buf_size = 0;
this.gzhead = null;
this.gzindex = 0;
this.method = yb;
this.last_flush = -1;
this.w_mask = this.w_bits = this.w_size = 0;
this.window = null;
this.window_size = 0;
this.head = this.prev = null;
this.nice_match =
this.good_match =
this.strategy =
this.level =
this.max_lazy_match =
this.max_chain_length =
this.prev_length =
this.lookahead =
this.match_start =
this.strstart =
this.match_available =
this.prev_match =
this.match_length =
this.block_start =
this.hash_shift =
this.hash_mask =
this.hash_bits =
this.hash_size =
this.ins_h =
0;
this.dyn_ltree = new Z.Buf16(2 * La);
this.dyn_dtree = new Z.Buf16(2 * (2 * Jc + 1));
this.bl_tree = new Z.Buf16(2 * (2 * K + 1));
ha(this.dyn_ltree);
ha(this.dyn_dtree);
ha(this.bl_tree);
this.bl_desc = this.d_desc = this.l_desc = null;
this.bl_count = new Z.Buf16(lb + 1);
this.heap = new Z.Buf16(2 * ed + 1);
ha(this.heap);
this.heap_max = this.heap_len = 0;
this.depth = new Z.Buf16(2 * ed + 1);
ha(this.depth);
this.bi_valid =
this.bi_buf =
this.insert =
this.matches =
this.static_len =
this.opt_len =
this.d_buf =
this.last_lit =
this.lit_bufsize =
this.l_buf =
0;
}
function td(h) {
var q;
return h && h.state
? ((h.total_in = h.total_out = 0),
(h.data_type = oe),
(q = h.state),
(q.pending = 0),
(q.pending_out = 0),
0 > q.wrap && (q.wrap = -q.wrap),
(q.status = q.wrap ? ua : T),
(h.adler = 2 === q.wrap ? 0 : 1),
(q.last_flush = Sa),
Pd._tr_init(q),
sb)
: Q(h, ma);
}
function Tc(h) {
var q = td(h);
q === sb &&
((h = h.state),
(h.window_size = 2 * h.w_size),
ha(h.head),
(h.max_lazy_match = oc[h.level].max_lazy),
(h.good_match = oc[h.level].good_length),
(h.nice_match = oc[h.level].nice_length),
(h.max_chain_length = oc[h.level].max_chain),
(h.strstart = 0),
(h.block_start = 0),
(h.lookahead = 0),
(h.insert = 0),
(h.match_length = h.prev_length = Ya - 1),
(h.match_available = 0),
(h.ins_h = 0));
return q;
}
function Ne(h, q, r, w, y, B) {
if (!h) return ma;
var z = 1;
if (
(q === Ba && (q = 6),
0 > w ? ((z = 0), (w = -w)) : 15 < w && ((z = 2), (w -= 16)),
1 > y || y > ud || r !== yb || 8 > w || 15 < w || 0 > q || 9 < q || 0 > B || B > db)
)
return Q(h, ma);
8 === w && (w = 9);
var H = new A();
return (
(h.state = H),
(H.strm = h),
(H.wrap = z),
(H.gzhead = null),
(H.w_bits = w),
(H.w_size = 1 << H.w_bits),
(H.w_mask = H.w_size - 1),
(H.hash_bits = y + 7),
(H.hash_size = 1 << H.hash_bits),
(H.hash_mask = H.hash_size - 1),
(H.hash_shift = ~~((H.hash_bits + Ya - 1) / Ya)),
(H.window = new Z.Buf8(2 * H.w_size)),
(H.head = new Z.Buf16(H.hash_size)),
(H.prev = new Z.Buf16(H.w_size)),
(H.lit_bufsize = 1 << (y + 6)),
(H.pending_buf_size = 4 * H.lit_bufsize),
(H.pending_buf = new Z.Buf8(H.pending_buf_size)),
(H.d_buf = 1 * H.lit_bufsize),
(H.l_buf = 3 * H.lit_bufsize),
(H.level = q),
(H.strategy = B),
(H.method = r),
Tc(h)
);
}
var Z = y('../utils/common'),
Pd = y('./trees'),
B = y('./adler32'),
gb = y('./crc32'),
Fd = y('./messages'),
Sa = 0,
U = 4,
sb = 0,
ma = -2,
Ba = -1,
ne = 1,
db = 4,
oe = 2,
yb = 8,
ud = 9,
ed = 286,
Jc = 30,
K = 19,
La = 2 * ed + 1,
lb = 15,
Ya = 3,
Ca = 258,
ya = Ca + Ya + 1,
ua = 42,
T = 113,
ka = 1,
P = 2,
mc = 3,
Tb = 4;
var oc = [
new Ja(0, 0, 0, 0, function (h, q) {
var r = 65535;
for (r > h.pending_buf_size - 5 && (r = h.pending_buf_size - 5); ; ) {
if (1 >= h.lookahead) {
if ((E(h), 0 === h.lookahead && q === Sa)) return ka;
if (0 === h.lookahead) break;
}
h.strstart += h.lookahead;
h.lookahead = 0;
var w = h.block_start + r;
if (
((0 === h.strstart || h.strstart >= w) &&
((h.lookahead = h.strstart - w),
(h.strstart = w),
Ka(h, !1),
0 === h.strm.avail_out)) ||
(h.strstart - h.block_start >= h.w_size - ya &&
(Ka(h, !1), 0 === h.strm.avail_out))
)
return ka;
}
return (
(h.insert = 0),
q === U
? (Ka(h, !0), 0 === h.strm.avail_out ? mc : Tb)
: (h.strstart > h.block_start && Ka(h, !1), ka)
);
}),
new Ja(4, 4, 8, 4, I),
new Ja(4, 5, 16, 8, I),
new Ja(4, 6, 32, 32, I),
new Ja(4, 4, 16, 16, za),
new Ja(8, 16, 32, 32, za),
new Ja(8, 16, 128, 128, za),
new Ja(8, 32, 128, 256, za),
new Ja(32, 128, 258, 1024, za),
new Ja(32, 258, 258, 4096, za)
];
O.deflateInit = function (h, q) {
return Ne(h, q, yb, 15, 8, 0);
};
O.deflateInit2 = Ne;
O.deflateReset = Tc;
O.deflateResetKeep = td;
O.deflateSetHeader = function (h, q) {
return h && h.state ? (2 !== h.state.wrap ? ma : ((h.state.gzhead = q), sb)) : ma;
};
O.deflate = function (w, y) {
var z, H;
if (!w || !w.state || 5 < y || 0 > y) return w ? Q(w, ma) : ma;
if (
((H = w.state),
!w.output || (!w.input && 0 !== w.avail_in) || (666 === H.status && y !== U))
)
return Q(w, 0 === w.avail_out ? -5 : ma);
if (((H.strm = w), (z = H.last_flush), (H.last_flush = y), H.status === ua))
if (2 === H.wrap)
(w.adler = 0),
q(H, 31),
q(H, 139),
q(H, 8),
H.gzhead
? (q(
H,
(H.gzhead.text ? 1 : 0) +
(H.gzhead.hcrc ? 2 : 0) +
(H.gzhead.extra ? 4 : 0) +
(H.gzhead.name ? 8 : 0) +
(H.gzhead.comment ? 16 : 0)
),
q(H, 255 & H.gzhead.time),
q(H, (H.gzhead.time >> 8) & 255),
q(H, (H.gzhead.time >> 16) & 255),
q(H, (H.gzhead.time >> 24) & 255),
q(H, 9 === H.level ? 2 : 2 <= H.strategy || 2 > H.level ? 4 : 0),
q(H, 255 & H.gzhead.os),
H.gzhead.extra &&
H.gzhead.extra.length &&
(q(H, 255 & H.gzhead.extra.length),
q(H, (H.gzhead.extra.length >> 8) & 255)),
H.gzhead.hcrc && (w.adler = gb(w.adler, H.pending_buf, H.pending, 0)),
(H.gzindex = 0),
(H.status = 69))
: (q(H, 0),
q(H, 0),
q(H, 0),
q(H, 0),
q(H, 0),
q(H, 9 === H.level ? 2 : 2 <= H.strategy || 2 > H.level ? 4 : 0),
q(H, 3),
(H.status = T));
else {
var A = (yb + ((H.w_bits - 8) << 4)) << 8;
A |=
(2 <= H.strategy || 2 > H.level ? 0 : 6 > H.level ? 1 : 6 === H.level ? 2 : 3) <<
6;
0 !== H.strstart && (A |= 32);
H.status = T;
h(H, A + (31 - (A % 31)));
0 !== H.strstart && (h(H, w.adler >>> 16), h(H, 65535 & w.adler));
w.adler = 1;
}
if (69 === H.status)
if (H.gzhead.extra) {
for (
A = H.pending;
H.gzindex < (65535 & H.gzhead.extra.length) &&
(H.pending !== H.pending_buf_size ||
(H.gzhead.hcrc &&
H.pending > A &&
(w.adler = gb(w.adler, H.pending_buf, H.pending - A, A)),
r(w),
(A = H.pending),
H.pending !== H.pending_buf_size));
)
q(H, 255 & H.gzhead.extra[H.gzindex]), H.gzindex++;
H.gzhead.hcrc &&
H.pending > A &&
(w.adler = gb(w.adler, H.pending_buf, H.pending - A, A));
H.gzindex === H.gzhead.extra.length && ((H.gzindex = 0), (H.status = 73));
} else H.status = 73;
if (73 === H.status)
if (H.gzhead.name) {
A = H.pending;
do {
if (
H.pending === H.pending_buf_size &&
(H.gzhead.hcrc &&
H.pending > A &&
(w.adler = gb(w.adler, H.pending_buf, H.pending - A, A)),
r(w),
(A = H.pending),
H.pending === H.pending_buf_size)
) {
var B = 1;
break;
}
B =
H.gzindex < H.gzhead.name.length
? 255 & H.gzhead.name.charCodeAt(H.gzindex++)
: 0;
q(H, B);
} while (0 !== B);
H.gzhead.hcrc &&
H.pending > A &&
(w.adler = gb(w.adler, H.pending_buf, H.pending - A, A));
0 === B && ((H.gzindex = 0), (H.status = 91));
} else H.status = 91;
if (91 === H.status)
if (H.gzhead.comment) {
A = H.pending;
do {
if (
H.pending === H.pending_buf_size &&
(H.gzhead.hcrc &&
H.pending > A &&
(w.adler = gb(w.adler, H.pending_buf, H.pending - A, A)),
r(w),
(A = H.pending),
H.pending === H.pending_buf_size)
) {
B = 1;
break;
}
B =
H.gzindex < H.gzhead.comment.length
? 255 & H.gzhead.comment.charCodeAt(H.gzindex++)
: 0;
q(H, B);
} while (0 !== B);
H.gzhead.hcrc &&
H.pending > A &&
(w.adler = gb(w.adler, H.pending_buf, H.pending - A, A));
0 === B && (H.status = 103);
} else H.status = 103;
if (
(103 === H.status &&
(H.gzhead.hcrc
? (H.pending + 2 > H.pending_buf_size && r(w),
H.pending + 2 <= H.pending_buf_size &&
(q(H, 255 & w.adler),
q(H, (w.adler >> 8) & 255),
(w.adler = 0),
(H.status = T)))
: (H.status = T)),
0 !== H.pending)
) {
if ((r(w), 0 === w.avail_out)) return (H.last_flush = -1), sb;
} else if (
0 === w.avail_in &&
(y << 1) - (4 < y ? 9 : 0) <= (z << 1) - (4 < z ? 9 : 0) &&
y !== U
)
return Q(w, -5);
if (666 === H.status && 0 !== w.avail_in) return Q(w, -5);
if (0 !== w.avail_in || 0 !== H.lookahead || (y !== Sa && 666 !== H.status)) {
if (2 === H.strategy)
a: {
for (var I; ; ) {
if (0 === H.lookahead && (E(H), 0 === H.lookahead)) {
if (y === Sa) {
var K = ka;
break a;
}
break;
}
if (
((H.match_length = 0),
(I = Pd._tr_tally(H, 0, H.window[H.strstart])),
H.lookahead--,
H.strstart++,
I && (Ka(H, !1), 0 === H.strm.avail_out))
) {
K = ka;
break a;
}
}
K =
((H.insert = 0),
y === U
? (Ka(H, !0), 0 === H.strm.avail_out ? mc : Tb)
: H.last_lit && (Ka(H, !1), 0 === H.strm.avail_out)
? ka
: P);
}
else if (3 === H.strategy)
a: {
var O, R;
for (I = H.window; ; ) {
if (H.lookahead <= Ca) {
if ((E(H), H.lookahead <= Ca && y === Sa)) {
K = ka;
break a;
}
if (0 === H.lookahead) break;
}
if (
((H.match_length = 0),
H.lookahead >= Ya &&
0 < H.strstart &&
((R = H.strstart - 1),
(O = I[R]),
O === I[++R] && O === I[++R] && O === I[++R]))
) {
for (
z = H.strstart + Ca;
O === I[++R] &&
O === I[++R] &&
O === I[++R] &&
O === I[++R] &&
O === I[++R] &&
O === I[++R] &&
O === I[++R] &&
O === I[++R] &&
R < z;
);
H.match_length = Ca - (z - R);
H.match_length > H.lookahead && (H.match_length = H.lookahead);
}
if (
(H.match_length >= Ya
? ((K = Pd._tr_tally(H, 1, H.match_length - Ya)),
(H.lookahead -= H.match_length),
(H.strstart += H.match_length),
(H.match_length = 0))
: ((K = Pd._tr_tally(H, 0, H.window[H.strstart])),
H.lookahead--,
H.strstart++),
K && (Ka(H, !1), 0 === H.strm.avail_out))
) {
K = ka;
break a;
}
}
K =
((H.insert = 0),
y === U
? (Ka(H, !0), 0 === H.strm.avail_out ? mc : Tb)
: H.last_lit && (Ka(H, !1), 0 === H.strm.avail_out)
? ka
: P);
}
else K = oc[H.level].func(H, y);
if (((K !== mc && K !== Tb) || (H.status = 666), K === ka || K === mc))
return 0 === w.avail_out && (H.last_flush = -1), sb;
if (
K === P &&
(1 === y
? Pd._tr_align(H)
: 5 !== y &&
(Pd._tr_stored_block(H, 0, 0, !1),
3 === y &&
(ha(H.head),
0 === H.lookahead &&
((H.strstart = 0), (H.block_start = 0), (H.insert = 0)))),
r(w),
0 === w.avail_out)
)
return (H.last_flush = -1), sb;
}
return y !== U
? sb
: 0 >= H.wrap
? 1
: (2 === H.wrap
? (q(H, 255 & w.adler),
q(H, (w.adler >> 8) & 255),
q(H, (w.adler >> 16) & 255),
q(H, (w.adler >> 24) & 255),
q(H, 255 & w.total_in),
q(H, (w.total_in >> 8) & 255),
q(H, (w.total_in >> 16) & 255),
q(H, (w.total_in >> 24) & 255))
: (h(H, w.adler >>> 16), h(H, 65535 & w.adler)),
r(w),
0 < H.wrap && (H.wrap = -H.wrap),
0 !== H.pending ? sb : 1);
};
O.deflateEnd = function (h) {
var q;
return h && h.state
? ((q = h.state.status),
q !== ua && 69 !== q && 73 !== q && 91 !== q && 103 !== q && q !== T && 666 !== q
? Q(h, ma)
: ((h.state = null), q === T ? Q(h, -3) : sb))
: ma;
};
O.deflateSetDictionary = function (h, q) {
var r, w, y;
var z = q.length;
if (
!h ||
!h.state ||
((r = h.state), (w = r.wrap), 2 === w || (1 === w && r.status !== ua) || r.lookahead)
)
return ma;
1 === w && (h.adler = B(h.adler, q, z, 0));
r.wrap = 0;
z >= r.w_size &&
(0 === w && (ha(r.head), (r.strstart = 0), (r.block_start = 0), (r.insert = 0)),
(y = new Z.Buf8(r.w_size)),
Z.arraySet(y, q, z - r.w_size, r.w_size, 0),
(q = y),
(z = r.w_size));
y = h.avail_in;
var A = h.next_in;
var I = h.input;
h.avail_in = z;
h.next_in = 0;
h.input = q;
for (E(r); r.lookahead >= Ya; ) {
q = r.strstart;
z = r.lookahead - (Ya - 1);
do
(r.ins_h = ((r.ins_h << r.hash_shift) ^ r.window[q + Ya - 1]) & r.hash_mask),
(r.prev[q & r.w_mask] = r.head[r.ins_h]),
(r.head[r.ins_h] = q),
q++;
while (--z);
r.strstart = q;
r.lookahead = Ya - 1;
E(r);
}
return (
(r.strstart += r.lookahead),
(r.block_start = r.strstart),
(r.insert = r.lookahead),
(r.lookahead = 0),
(r.match_length = r.prev_length = Ya - 1),
(r.match_available = 0),
(h.next_in = A),
(h.input = I),
(h.avail_in = y),
(r.wrap = w),
sb
);
};
O.deflateInfo = 'pako deflate (from Nodeca project)';
},
{
'../utils/common': 3,
'./adler32': 5,
'./crc32': 7,
'./messages': 13,
'./trees': 14
}
],
9: [
function (y, R, O) {
R.exports = function () {
this.os = this.xflags = this.time = this.text = 0;
this.extra = null;
this.extra_len = 0;
this.comment = this.name = '';
this.hcrc = 0;
this.done = !1;
};
},
{}
],
10: [
function (y, R, O) {
R.exports = function (y, O) {
var r, Q, q;
var h = y.state;
var w = y.next_in;
var E = y.input;
var I = w + (y.avail_in - 5);
var R = y.next_out;
var ha = y.output;
O = R - (O - y.avail_out);
var A = R + (y.avail_out - 257);
var td = h.dmax;
var Tc = h.wsize;
var Ne = h.whave;
var Z = h.wnext;
var Pd = h.window;
var B = h.hold;
var gb = h.bits;
var Fd = h.lencode;
var Sa = h.distcode;
var U = (1 << h.lenbits) - 1;
var sb = (1 << h.distbits) - 1;
a: do {
15 > gb && ((B += E[w++] << gb), (gb += 8), (B += E[w++] << gb), (gb += 8));
var ma = Fd[B & U];
b: for (;;) {
if (((r = ma >>> 24), (B >>>= r), (gb -= r), (r = (ma >>> 16) & 255), 0 === r))
ha[R++] = 65535 & ma;
else {
if (!(16 & r)) {
if (0 === (64 & r)) {
ma = Fd[(65535 & ma) + (B & ((1 << r) - 1))];
continue b;
}
if (32 & r) {
h.mode = 12;
break a;
}
y.msg = 'invalid literal/length code';
h.mode = 30;
break a;
}
var Ba = 65535 & ma;
(r &= 15) &&
(gb < r && ((B += E[w++] << gb), (gb += 8)),
(Ba += B & ((1 << r) - 1)),
(B >>>= r),
(gb -= r));
15 > gb && ((B += E[w++] << gb), (gb += 8), (B += E[w++] << gb), (gb += 8));
ma = Sa[B & sb];
c: for (;;) {
if (
((r = ma >>> 24), (B >>>= r), (gb -= r), (r = (ma >>> 16) & 255), !(16 & r))
) {
if (0 === (64 & r)) {
ma = Sa[(65535 & ma) + (B & ((1 << r) - 1))];
continue c;
}
y.msg = 'invalid distance code';
h.mode = 30;
break a;
}
if (
((Q = 65535 & ma),
(r &= 15),
gb < r &&
((B += E[w++] << gb),
(gb += 8),
gb < r && ((B += E[w++] << gb), (gb += 8))),
(Q += B & ((1 << r) - 1)),
Q > td)
) {
y.msg = 'invalid distance too far back';
h.mode = 30;
break a;
}
if (((B >>>= r), (gb -= r), (r = R - O), Q > r)) {
if (((r = Q - r), r > Ne && h.sane)) {
y.msg = 'invalid distance too far back';
h.mode = 30;
break a;
}
if (((ma = 0), (q = Pd), 0 === Z)) {
if (((ma += Tc - r), r < Ba)) {
Ba -= r;
do ha[R++] = Pd[ma++];
while (--r);
ma = R - Q;
q = ha;
}
} else if (Z < r) {
if (((ma += Tc + Z - r), (r -= Z), r < Ba)) {
Ba -= r;
do ha[R++] = Pd[ma++];
while (--r);
if (((ma = 0), Z < Ba)) {
r = Z;
Ba -= r;
do ha[R++] = Pd[ma++];
while (--r);
ma = R - Q;
q = ha;
}
}
} else if (((ma += Z - r), r < Ba)) {
Ba -= r;
do ha[R++] = Pd[ma++];
while (--r);
ma = R - Q;
q = ha;
}
for (; 2 < Ba; )
(ha[R++] = q[ma++]), (ha[R++] = q[ma++]), (ha[R++] = q[ma++]), (Ba -= 3);
Ba && ((ha[R++] = q[ma++]), 1 < Ba && (ha[R++] = q[ma++]));
} else {
ma = R - Q;
do
(ha[R++] = ha[ma++]), (ha[R++] = ha[ma++]), (ha[R++] = ha[ma++]), (Ba -= 3);
while (2 < Ba);
Ba && ((ha[R++] = ha[ma++]), 1 < Ba && (ha[R++] = ha[ma++]));
}
break;
}
}
break;
}
} while (w < I && R < A);
Ba = gb >> 3;
w -= Ba;
gb -= Ba << 3;
y.next_in = w;
y.next_out = R;
y.avail_in = w < I ? 5 + (I - w) : 5 - (w - I);
y.avail_out = R < A ? 257 + (A - R) : 257 - (R - A);
h.hold = B & ((1 << gb) - 1);
h.bits = gb;
};
},
{}
],
11: [
function (y, R, O) {
function Q(h) {
return (
((h >>> 24) & 255) + ((h >>> 8) & 65280) + ((65280 & h) << 8) + ((255 & h) << 24)
);
}
function ha() {
this.mode = 0;
this.last = !1;
this.wrap = 0;
this.havedict = !1;
this.total = this.check = this.dmax = this.flags = 0;
this.head = null;
this.wnext = this.whave = this.wsize = this.wbits = 0;
this.window = null;
this.extra = this.offset = this.length = this.bits = this.hold = 0;
this.distcode = this.lencode = null;
this.have = this.ndist = this.nlen = this.ncode = this.distbits = this.lenbits = 0;
this.next = null;
this.lens = new za.Buf16(320);
this.work = new za.Buf16(288);
this.distdyn = this.lendyn = null;
this.was = this.back = this.sane = 0;
}
function r(h) {
var q;
return h && h.state
? ((q = h.state),
(h.total_in = h.total_out = q.total = 0),
(h.msg = ''),
q.wrap && (h.adler = 1 & q.wrap),
(q.mode = Pd),
(q.last = 0),
(q.havedict = 0),
(q.dmax = 32768),
(q.head = null),
(q.hold = 0),
(q.bits = 0),
(q.lencode = q.lendyn = new za.Buf32(B)),
(q.distcode = q.distdyn = new za.Buf32(gb)),
(q.sane = 1),
(q.back = -1),
Ne)
: Z;
}
function Ka(h) {
var q;
return h && h.state
? ((q = h.state), (q.wsize = 0), (q.whave = 0), (q.wnext = 0), r(h))
: Z;
}
function q(h, q) {
var r, w;
return h && h.state
? ((w = h.state),
0 > q ? ((r = 0), (q = -q)) : ((r = (q >> 4) + 1), 48 > q && (q &= 15)),
q && (8 > q || 15 < q)
? Z
: (null !== w.window && w.wbits !== q && (w.window = null),
(w.wrap = r),
(w.wbits = q),
Ka(h)))
: Z;
}
function h(h, r) {
var w, y;
return h
? ((y = new ha()),
(h.state = y),
(y.window = null),
(w = q(h, r)),
w !== Ne && (h.state = null),
w)
: Z;
}
function w(h, q, r, w) {
var y;
h = h.state;
return (
null === h.window &&
((h.wsize = 1 << h.wbits),
(h.wnext = 0),
(h.whave = 0),
(h.window = new za.Buf8(h.wsize))),
w >= h.wsize
? (za.arraySet(h.window, q, r - h.wsize, h.wsize, 0),
(h.wnext = 0),
(h.whave = h.wsize))
: ((y = h.wsize - h.wnext),
y > w && (y = w),
za.arraySet(h.window, q, r - w, y, h.wnext),
(w -= y),
w
? (za.arraySet(h.window, q, r - w, w, 0), (h.wnext = w), (h.whave = h.wsize))
: ((h.wnext += y),
h.wnext === h.wsize && (h.wnext = 0),
h.whave < h.wsize && (h.whave += y))),
0
);
}
var E,
I,
za = y('../utils/common'),
Ja = y('./adler32'),
A = y('./crc32'),
td = y('./inffast'),
Tc = y('./inftrees'),
Ne = 0,
Z = -2,
Pd = 1,
B = 852,
gb = 592,
Fd = !0;
O.inflateReset = Ka;
O.inflateReset2 = q;
O.inflateResetKeep = r;
O.inflateInit = function (q) {
return h(q, 15);
};
O.inflateInit2 = h;
O.inflate = function (h, q) {
var r,
y,
B,
O,
R,
U,
ha,
Sa = 0,
Ka = new za.Buf8(4),
gb = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
if (!h || !h.state || !h.output || (!h.input && 0 !== h.avail_in)) return Z;
var K = h.state;
12 === K.mode && (K.mode = 13);
var La = h.next_out;
var lb = h.output;
var Ya = h.avail_out;
var Ca = h.next_in;
var ya = h.input;
var ua = h.avail_in;
var T = K.hold;
var ka = K.bits;
var P = ua;
var mc = Ya;
var Tb = Ne;
a: for (;;)
switch (K.mode) {
case Pd:
if (0 === K.wrap) {
K.mode = 13;
break;
}
for (; 16 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
if (2 & K.wrap && 35615 === T) {
K.check = 0;
Ka[0] = 255 & T;
Ka[1] = (T >>> 8) & 255;
K.check = A(K.check, Ka, 2, 0);
ka = T = 0;
K.mode = 2;
break;
}
if (
((K.flags = 0),
K.head && (K.head.done = !1),
!(1 & K.wrap) || (((255 & T) << 8) + (T >> 8)) % 31)
) {
h.msg = 'incorrect header check';
K.mode = 30;
break;
}
if (8 !== (15 & T)) {
h.msg = 'unknown compression method';
K.mode = 30;
break;
}
if (((T >>>= 4), (ka -= 4), (U = (15 & T) + 8), 0 === K.wbits)) K.wbits = U;
else if (U > K.wbits) {
h.msg = 'invalid window size';
K.mode = 30;
break;
}
K.dmax = 1 << U;
h.adler = K.check = 1;
K.mode = 512 & T ? 10 : 12;
ka = T = 0;
break;
case 2:
for (; 16 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
if (((K.flags = T), 8 !== (255 & K.flags))) {
h.msg = 'unknown compression method';
K.mode = 30;
break;
}
if (57344 & K.flags) {
h.msg = 'unknown header flags set';
K.mode = 30;
break;
}
K.head && (K.head.text = (T >> 8) & 1);
512 & K.flags &&
((Ka[0] = 255 & T),
(Ka[1] = (T >>> 8) & 255),
(K.check = A(K.check, Ka, 2, 0)));
ka = T = 0;
K.mode = 3;
case 3:
for (; 32 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
K.head && (K.head.time = T);
512 & K.flags &&
((Ka[0] = 255 & T),
(Ka[1] = (T >>> 8) & 255),
(Ka[2] = (T >>> 16) & 255),
(Ka[3] = (T >>> 24) & 255),
(K.check = A(K.check, Ka, 4, 0)));
ka = T = 0;
K.mode = 4;
case 4:
for (; 16 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
K.head && ((K.head.xflags = 255 & T), (K.head.os = T >> 8));
512 & K.flags &&
((Ka[0] = 255 & T),
(Ka[1] = (T >>> 8) & 255),
(K.check = A(K.check, Ka, 2, 0)));
ka = T = 0;
K.mode = 5;
case 5:
if (1024 & K.flags) {
for (; 16 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
K.length = T;
K.head && (K.head.extra_len = T);
512 & K.flags &&
((Ka[0] = 255 & T),
(Ka[1] = (T >>> 8) & 255),
(K.check = A(K.check, Ka, 2, 0)));
ka = T = 0;
} else K.head && (K.head.extra = null);
K.mode = 6;
case 6:
if (
1024 & K.flags &&
((r = K.length),
r > ua && (r = ua),
r &&
(K.head &&
((U = K.head.extra_len - K.length),
K.head.extra || (K.head.extra = Array(K.head.extra_len)),
za.arraySet(K.head.extra, ya, Ca, r, U)),
512 & K.flags && (K.check = A(K.check, ya, r, Ca)),
(ua -= r),
(Ca += r),
(K.length -= r)),
K.length)
)
break a;
K.length = 0;
K.mode = 7;
case 7:
if (2048 & K.flags) {
if (0 === ua) break a;
r = 0;
do
(U = ya[Ca + r++]),
K.head && U && 65536 > K.length && (K.head.name += String.fromCharCode(U));
while (U && r < ua);
if (
(512 & K.flags && (K.check = A(K.check, ya, r, Ca)), (ua -= r), (Ca += r), U)
)
break a;
} else K.head && (K.head.name = null);
K.length = 0;
K.mode = 8;
case 8:
if (4096 & K.flags) {
if (0 === ua) break a;
r = 0;
do
(U = ya[Ca + r++]),
K.head &&
U &&
65536 > K.length &&
(K.head.comment += String.fromCharCode(U));
while (U && r < ua);
if (
(512 & K.flags && (K.check = A(K.check, ya, r, Ca)), (ua -= r), (Ca += r), U)
)
break a;
} else K.head && (K.head.comment = null);
K.mode = 9;
case 9:
if (512 & K.flags) {
for (; 16 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
if (T !== (65535 & K.check)) {
h.msg = 'header crc mismatch';
K.mode = 30;
break;
}
ka = T = 0;
}
K.head && ((K.head.hcrc = (K.flags >> 9) & 1), (K.head.done = !0));
h.adler = K.check = 0;
K.mode = 12;
break;
case 10:
for (; 32 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
h.adler = K.check = Q(T);
ka = T = 0;
K.mode = 11;
case 11:
if (0 === K.havedict)
return (
(h.next_out = La),
(h.avail_out = Ya),
(h.next_in = Ca),
(h.avail_in = ua),
(K.hold = T),
(K.bits = ka),
2
);
h.adler = K.check = 1;
K.mode = 12;
case 12:
if (5 === q || 6 === q) break a;
case 13:
if (K.last) {
T >>>= 7 & ka;
ka -= 7 & ka;
K.mode = 27;
break;
}
for (; 3 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
switch (((K.last = 1 & T), (T >>>= 1), --ka, 3 & T)) {
case 0:
K.mode = 14;
break;
case 1:
var oc = K;
if (Fd) {
E = new za.Buf32(512);
I = new za.Buf32(32);
for (B = 0; 144 > B; ) oc.lens[B++] = 8;
for (; 256 > B; ) oc.lens[B++] = 9;
for (; 280 > B; ) oc.lens[B++] = 7;
for (; 288 > B; ) oc.lens[B++] = 8;
Tc(1, oc.lens, 0, 288, E, 0, oc.work, { bits: 9 });
for (B = 0; 32 > B; ) oc.lens[B++] = 5;
Tc(2, oc.lens, 0, 32, I, 0, oc.work, { bits: 5 });
Fd = !1;
}
oc.lencode = E;
oc.lenbits = 9;
oc.distcode = I;
oc.distbits = 5;
if (((K.mode = 20), 6 === q)) {
T >>>= 2;
ka -= 2;
break a;
}
break;
case 2:
K.mode = 17;
break;
case 3:
(h.msg = 'invalid block type'), (K.mode = 30);
}
T >>>= 2;
ka -= 2;
break;
case 14:
T >>>= 7 & ka;
for (ka -= 7 & ka; 32 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
if ((65535 & T) !== ((T >>> 16) ^ 65535)) {
h.msg = 'invalid stored block lengths';
K.mode = 30;
break;
}
if (((K.length = 65535 & T), (T = 0), (ka = 0), (K.mode = 15), 6 === q)) break a;
case 15:
K.mode = 16;
case 16:
if ((r = K.length)) {
if ((r > ua && (r = ua), r > Ya && (r = Ya), 0 === r)) break a;
za.arraySet(lb, ya, Ca, r, La);
ua -= r;
Ca += r;
Ya -= r;
La += r;
K.length -= r;
break;
}
K.mode = 12;
break;
case 17:
for (; 14 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
if (
((K.nlen = (31 & T) + 257),
(T >>>= 5),
(ka -= 5),
(K.ndist = (31 & T) + 1),
(T >>>= 5),
(ka -= 5),
(K.ncode = (15 & T) + 4),
(T >>>= 4),
(ka -= 4),
286 < K.nlen || 30 < K.ndist)
) {
h.msg = 'too many length or distance symbols';
K.mode = 30;
break;
}
K.have = 0;
K.mode = 18;
case 18:
for (; K.have < K.ncode; ) {
for (; 3 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
K.lens[gb[K.have++]] = 7 & T;
T >>>= 3;
ka -= 3;
}
for (; 19 > K.have; ) K.lens[gb[K.have++]] = 0;
if (
((K.lencode = K.lendyn),
(K.lenbits = 7),
(ha = { bits: K.lenbits }),
(Tb = Tc(0, K.lens, 0, 19, K.lencode, 0, K.work, ha)),
(K.lenbits = ha.bits),
Tb)
) {
h.msg = 'invalid code lengths set';
K.mode = 30;
break;
}
K.have = 0;
K.mode = 19;
case 19:
for (; K.have < K.nlen + K.ndist; ) {
for (
;
(Sa = K.lencode[T & ((1 << K.lenbits) - 1)]),
(O = Sa >>> 24),
(oc = 65535 & Sa),
!(O <= ka);
) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
if (16 > oc) (T >>>= O), (ka -= O), (K.lens[K.have++] = oc);
else {
if (16 === oc) {
for (B = O + 2; ka < B; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
if (((T >>>= O), (ka -= O), 0 === K.have)) {
h.msg = 'invalid bit length repeat';
K.mode = 30;
break;
}
U = K.lens[K.have - 1];
r = 3 + (3 & T);
T >>>= 2;
ka -= 2;
} else if (17 === oc) {
for (B = O + 3; ka < B; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
T >>>= O;
ka -= O;
U = 0;
r = 3 + (7 & T);
T >>>= 3;
ka -= 3;
} else {
for (B = O + 7; ka < B; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
T >>>= O;
ka -= O;
U = 0;
r = 11 + (127 & T);
T >>>= 7;
ka -= 7;
}
if (K.have + r > K.nlen + K.ndist) {
h.msg = 'invalid bit length repeat';
K.mode = 30;
break;
}
for (; r--; ) K.lens[K.have++] = U;
}
}
if (30 === K.mode) break;
if (0 === K.lens[256]) {
h.msg = 'invalid code -- missing end-of-block';
K.mode = 30;
break;
}
if (
((K.lenbits = 9),
(ha = { bits: K.lenbits }),
(Tb = Tc(1, K.lens, 0, K.nlen, K.lencode, 0, K.work, ha)),
(K.lenbits = ha.bits),
Tb)
) {
h.msg = 'invalid literal/lengths set';
K.mode = 30;
break;
}
if (
((K.distbits = 6),
(K.distcode = K.distdyn),
(ha = { bits: K.distbits }),
(Tb = Tc(2, K.lens, K.nlen, K.ndist, K.distcode, 0, K.work, ha)),
(K.distbits = ha.bits),
Tb)
) {
h.msg = 'invalid distances set';
K.mode = 30;
break;
}
if (((K.mode = 20), 6 === q)) break a;
case 20:
K.mode = 21;
case 21:
if (6 <= ua && 258 <= Ya) {
h.next_out = La;
h.avail_out = Ya;
h.next_in = Ca;
h.avail_in = ua;
K.hold = T;
K.bits = ka;
td(h, mc);
La = h.next_out;
lb = h.output;
Ya = h.avail_out;
Ca = h.next_in;
ya = h.input;
ua = h.avail_in;
T = K.hold;
ka = K.bits;
12 === K.mode && (K.back = -1);
break;
}
for (
K.back = 0;
(Sa = K.lencode[T & ((1 << K.lenbits) - 1)]),
(O = Sa >>> 24),
(B = (Sa >>> 16) & 255),
(oc = 65535 & Sa),
!(O <= ka);
) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
if (B && 0 === (240 & B)) {
var z = O;
var ce = B;
for (
R = oc;
(Sa = K.lencode[R + ((T & ((1 << (z + ce)) - 1)) >> z)]),
(O = Sa >>> 24),
(B = (Sa >>> 16) & 255),
(oc = 65535 & Sa),
!(z + O <= ka);
) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
T >>>= z;
ka -= z;
K.back += z;
}
if (((T >>>= O), (ka -= O), (K.back += O), (K.length = oc), 0 === B)) {
K.mode = 26;
break;
}
if (32 & B) {
K.back = -1;
K.mode = 12;
break;
}
if (64 & B) {
h.msg = 'invalid literal/length code';
K.mode = 30;
break;
}
K.extra = 15 & B;
K.mode = 22;
case 22:
if (K.extra) {
for (B = K.extra; ka < B; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
K.length += T & ((1 << K.extra) - 1);
T >>>= K.extra;
ka -= K.extra;
K.back += K.extra;
}
K.was = K.length;
K.mode = 23;
case 23:
for (
;
(Sa = K.distcode[T & ((1 << K.distbits) - 1)]),
(O = Sa >>> 24),
(B = (Sa >>> 16) & 255),
(oc = 65535 & Sa),
!(O <= ka);
) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
if (0 === (240 & B)) {
z = O;
ce = B;
for (
R = oc;
(Sa = K.distcode[R + ((T & ((1 << (z + ce)) - 1)) >> z)]),
(O = Sa >>> 24),
(B = (Sa >>> 16) & 255),
(oc = 65535 & Sa),
!(z + O <= ka);
) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
T >>>= z;
ka -= z;
K.back += z;
}
if (((T >>>= O), (ka -= O), (K.back += O), 64 & B)) {
h.msg = 'invalid distance code';
K.mode = 30;
break;
}
K.offset = oc;
K.extra = 15 & B;
K.mode = 24;
case 24:
if (K.extra) {
for (B = K.extra; ka < B; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
K.offset += T & ((1 << K.extra) - 1);
T >>>= K.extra;
ka -= K.extra;
K.back += K.extra;
}
if (K.offset > K.dmax) {
h.msg = 'invalid distance too far back';
K.mode = 30;
break;
}
K.mode = 25;
case 25:
if (0 === Ya) break a;
if (((r = mc - Ya), K.offset > r)) {
if (((r = K.offset - r), r > K.whave && K.sane)) {
h.msg = 'invalid distance too far back';
K.mode = 30;
break;
}
r > K.wnext ? ((r -= K.wnext), (y = K.wsize - r)) : (y = K.wnext - r);
r > K.length && (r = K.length);
B = K.window;
} else (B = lb), (y = La - K.offset), (r = K.length);
r > Ya && (r = Ya);
Ya -= r;
K.length -= r;
do lb[La++] = B[y++];
while (--r);
0 === K.length && (K.mode = 21);
break;
case 26:
if (0 === Ya) break a;
lb[La++] = K.length;
Ya--;
K.mode = 21;
break;
case 27:
if (K.wrap) {
for (; 32 > ka; ) {
if (0 === ua) break a;
ua--;
T |= ya[Ca++] << ka;
ka += 8;
}
if (
((mc -= Ya),
(h.total_out += mc),
(K.total += mc),
mc &&
(h.adler = K.check =
K.flags ? A(K.check, lb, mc, La - mc) : Ja(K.check, lb, mc, La - mc)),
(mc = Ya),
(K.flags ? T : Q(T)) !== K.check)
) {
h.msg = 'incorrect data check';
K.mode = 30;
break;
}
ka = T = 0;
}
K.mode = 28;
case 28:
if (K.wrap && K.flags) {
for (; 32 > ka; ) {
if (0 === ua) break a;
ua--;
T += ya[Ca++] << ka;
ka += 8;
}
if (T !== (4294967295 & K.total)) {
h.msg = 'incorrect length check';
K.mode = 30;
break;
}
ka = T = 0;
}
K.mode = 29;
case 29:
Tb = 1;
break a;
case 30:
Tb = -3;
break a;
case 31:
return -4;
default:
return Z;
}
return (
(h.next_out = La),
(h.avail_out = Ya),
(h.next_in = Ca),
(h.avail_in = ua),
(K.hold = T),
(K.bits = ka),
(K.wsize || (mc !== h.avail_out && 30 > K.mode && (27 > K.mode || 4 !== q))) &&
w(h, h.output, h.next_out, mc - h.avail_out)
? ((K.mode = 31), -4)
: ((P -= h.avail_in),
(mc -= h.avail_out),
(h.total_in += P),
(h.total_out += mc),
(K.total += mc),
K.wrap &&
mc &&
(h.adler = K.check =
K.flags
? A(K.check, lb, mc, h.next_out - mc)
: Ja(K.check, lb, mc, h.next_out - mc)),
(h.data_type =
K.bits +
(K.last ? 64 : 0) +
(12 === K.mode ? 128 : 0) +
(20 === K.mode || 15 === K.mode ? 256 : 0)),
((0 === P && 0 === mc) || 4 === q) && Tb === Ne && (Tb = -5),
Tb)
);
};
O.inflateEnd = function (h) {
if (!h || !h.state) return Z;
var q = h.state;
return q.window && (q.window = null), (h.state = null), Ne;
};
O.inflateGetHeader = function (h, q) {
var r;
return h && h.state
? ((r = h.state), 0 === (2 & r.wrap) ? Z : ((r.head = q), (q.done = !1), Ne))
: Z;
};
O.inflateSetDictionary = function (h, q) {
var r,
y,
A = q.length;
return h && h.state
? ((r = h.state),
0 !== r.wrap && 11 !== r.mode
? Z
: 11 === r.mode && ((y = 1), (y = Ja(y, q, A, 0)), y !== r.check)
? -3
: w(h, q, A, A)
? ((r.mode = 31), -4)
: ((r.havedict = 1), Ne))
: Z;
};
O.inflateInfo = 'pako inflate (from Nodeca project)';
},
{
'../utils/common': 3,
'./adler32': 5,
'./crc32': 7,
'./inffast': 10,
'./inftrees': 12
}
],
12: [
function (y, R, O) {
var Q = y('../utils/common'),
ha = [
3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99,
115, 131, 163, 195, 227, 258, 0, 0
],
r = [
16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20,
20, 20, 20, 21, 21, 21, 21, 16, 72, 78
],
Ka = [
1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025,
1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0
],
q = [
16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25,
25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64
];
R.exports = function (h, w, y, I, O, R, A, td) {
var E,
za,
Z,
Ja,
B,
gb,
Fd = td.bits,
Sa,
U,
sb,
ma,
Ba,
ne = 0,
db,
oe = null,
yb = 0,
ud = new Q.Buf16(16);
var ed = new Q.Buf16(16);
var Jc = null,
K = 0;
for (Sa = 0; 15 >= Sa; Sa++) ud[Sa] = 0;
for (U = 0; U < I; U++) ud[w[y + U]]++;
var La = Fd;
for (sb = 15; 1 <= sb && 0 === ud[sb]; sb--);
if ((La > sb && (La = sb), 0 === sb))
return (O[R++] = 20971520), (O[R++] = 20971520), (td.bits = 1), 0;
for (Fd = 1; Fd < sb && 0 === ud[Fd]; Fd++);
La < Fd && (La = Fd);
for (Sa = E = 1; 15 >= Sa; Sa++) if (((E <<= 1), (E -= ud[Sa]), 0 > E)) return -1;
if (0 < E && (0 === h || 1 !== sb)) return -1;
ed[1] = 0;
for (Sa = 1; 15 > Sa; Sa++) ed[Sa + 1] = ed[Sa] + ud[Sa];
for (U = 0; U < I; U++) 0 !== w[y + U] && (A[ed[w[y + U]]++] = U);
if (
(0 === h
? ((oe = Jc = A), (Ja = 19))
: 1 === h
? ((oe = ha), (yb -= 257), (Jc = r), (K -= 257), (Ja = 256))
: ((oe = Ka), (Jc = q), (Ja = -1)),
(db = 0),
(U = 0),
(Sa = Fd),
(ed = R),
(ma = La),
(Ba = 0),
(Z = -1),
(ne = 1 << La),
(I = ne - 1),
(1 === h && 852 < ne) || (2 === h && 592 < ne))
)
return 1;
for (var lb = 0; ; ) {
lb++;
var Ya = Sa - Ba;
A[U] < Ja
? ((B = 0), (gb = A[U]))
: A[U] > Ja
? ((B = Jc[K + A[U]]), (gb = oe[yb + A[U]]))
: ((B = 96), (gb = 0));
E = 1 << (Sa - Ba);
Fd = za = 1 << ma;
do (za -= E), (O[ed + (db >> Ba) + za] = (Ya << 24) | (B << 16) | gb | 0);
while (0 !== za);
for (E = 1 << (Sa - 1); db & E; ) E >>= 1;
if ((0 !== E ? ((db &= E - 1), (db += E)) : (db = 0), U++, 0 === --ud[Sa])) {
if (Sa === sb) break;
Sa = w[y + A[U]];
}
if (Sa > La && (db & I) !== Z) {
0 === Ba && (Ba = La);
ed += Fd;
ma = Sa - Ba;
for (E = 1 << ma; ma + Ba < sb && ((E -= ud[ma + Ba]), !(0 >= E)); )
ma++, (E <<= 1);
if (((ne += 1 << ma), (1 === h && 852 < ne) || (2 === h && 592 < ne))) return 1;
Z = db & I;
O[Z] = (La << 24) | (ma << 16) | (ed - R) | 0;
}
}
return 0 !== db && (O[ed + db] = ((Sa - Ba) << 24) | 4194304), (td.bits = La), 0;
};
},
{ '../utils/common': 3 }
],
13: [
function (y, R, O) {
R.exports = {
2: 'need dictionary',
1: 'stream end',
0: '',
'-1': 'file error',
'-2': 'stream error',
'-3': 'data error',
'-4': 'insufficient memory',
'-5': 'buffer error',
'-6': 'incompatible version'
};
},
{}
],
14: [
function (y, R, O) {
function Q(h) {
for (var q = h.length; 0 <= --q; ) h[q] = 0;
}
function ha(h, q, r, w, y) {
this.static_tree = h;
this.extra_bits = q;
this.extra_base = r;
this.elems = w;
this.max_length = y;
this.has_stree = h && h.length;
}
function r(h, q) {
this.dyn_tree = h;
this.max_code = 0;
this.stat_desc = q;
}
function Ka(h, q) {
h.pending_buf[h.pending++] = 255 & q;
h.pending_buf[h.pending++] = (q >>> 8) & 255;
}
function q(h, q, r) {
h.bi_valid > yb - r
? ((h.bi_buf |= (q << h.bi_valid) & 65535),
Ka(h, h.bi_buf),
(h.bi_buf = q >> (yb - h.bi_valid)),
(h.bi_valid += r - yb))
: ((h.bi_buf |= (q << h.bi_valid) & 65535), (h.bi_valid += r));
}
function h(h, r, w) {
q(h, w[2 * r], w[2 * r + 1]);
}
function w(h, q) {
var r = 0;
do (r |= 1 & h), (h >>>= 1), (r <<= 1);
while (0 < --q);
return r >>> 1;
}
function E(h, q, r) {
var y,
z = Array(oe + 1),
A = 0;
for (y = 1; y <= oe; y++) z[y] = A = (A + r[y - 1]) << 1;
for (r = 0; r <= q; r++) (y = h[2 * r + 1]), 0 !== y && (h[2 * r] = w(z[y]++, y));
}
function I(h) {
var q;
for (q = 0; q < ma; q++) h.dyn_ltree[2 * q] = 0;
for (q = 0; q < Ba; q++) h.dyn_dtree[2 * q] = 0;
for (q = 0; q < ne; q++) h.bl_tree[2 * q] = 0;
h.dyn_ltree[2 * ud] = 1;
h.opt_len = h.static_len = 0;
h.last_lit = h.matches = 0;
}
function za(h) {
8 < h.bi_valid
? Ka(h, h.bi_buf)
: 0 < h.bi_valid && (h.pending_buf[h.pending++] = h.bi_buf);
h.bi_buf = 0;
h.bi_valid = 0;
}
function Ja(h, q, r, w) {
var y = 2 * q,
z = 2 * r;
return h[y] < h[z] || (h[y] === h[z] && w[q] <= w[r]);
}
function A(h, q, r) {
for (
var w = h.heap[r], y = r << 1;
y <= h.heap_len &&
(y < h.heap_len && Ja(q, h.heap[y + 1], h.heap[y], h.depth) && y++,
!Ja(q, w, h.heap[y], h.depth));
)
(h.heap[r] = h.heap[y]), (r = y), (y <<= 1);
h.heap[r] = w;
}
function td(r, w, y) {
var z,
A,
B = 0;
if (0 !== r.last_lit) {
do {
var H = (r.pending_buf[r.d_buf + 2 * B] << 8) | r.pending_buf[r.d_buf + 2 * B + 1];
var E = r.pending_buf[r.l_buf + B];
B++;
0 === H
? h(r, E, w)
: ((z = ka[E]),
h(r, z + sb + 1, w),
(A = La[z]),
0 !== A && ((E -= P[z]), q(r, E, A)),
H--,
(z = 256 > H ? T[H] : T[256 + (H >>> 7)]),
h(r, z, y),
(A = lb[z]),
0 !== A && ((H -= mc[z]), q(r, H, A)));
} while (B < r.last_lit);
}
h(r, ud, w);
}
function Tc(h, q) {
var r,
w = q.dyn_tree;
var y = q.stat_desc.static_tree;
var z = q.stat_desc.has_stree,
B = q.stat_desc.elems,
H = -1;
h.heap_len = 0;
h.heap_max = db;
for (r = 0; r < B; r++)
0 !== w[2 * r]
? ((h.heap[++h.heap_len] = H = r), (h.depth[r] = 0))
: (w[2 * r + 1] = 0);
for (; 2 > h.heap_len; ) {
var I = (h.heap[++h.heap_len] = 2 > H ? ++H : 0);
w[2 * I] = 1;
h.depth[I] = 0;
h.opt_len--;
z && (h.static_len -= y[2 * I + 1]);
}
q.max_code = H;
for (r = h.heap_len >> 1; 1 <= r; r--) A(h, w, r);
I = B;
do
(r = h.heap[1]),
(h.heap[1] = h.heap[h.heap_len--]),
A(h, w, 1),
(y = h.heap[1]),
(h.heap[--h.heap_max] = r),
(h.heap[--h.heap_max] = y),
(w[2 * I] = w[2 * r] + w[2 * y]),
(h.depth[I] = (h.depth[r] >= h.depth[y] ? h.depth[r] : h.depth[y]) + 1),
(w[2 * r + 1] = w[2 * y + 1] = I),
(h.heap[1] = I++),
A(h, w, 1);
while (2 <= h.heap_len);
h.heap[--h.heap_max] = h.heap[1];
var K, O;
r = q.dyn_tree;
I = q.max_code;
B = q.stat_desc.static_tree;
var P = q.stat_desc.has_stree,
Q = q.stat_desc.extra_bits,
R = q.stat_desc.extra_base,
T = q.stat_desc.max_length,
U = 0;
for (z = 0; z <= oe; z++) h.bl_count[z] = 0;
r[2 * h.heap[h.heap_max] + 1] = 0;
for (q = h.heap_max + 1; q < db; q++)
(y = h.heap[q]),
(z = r[2 * r[2 * y + 1] + 1] + 1),
z > T && ((z = T), U++),
(r[2 * y + 1] = z),
y > I ||
(h.bl_count[z]++,
(K = 0),
y >= R && (K = Q[y - R]),
(O = r[2 * y]),
(h.opt_len += O * (z + K)),
P && (h.static_len += O * (B[2 * y + 1] + K)));
if (0 !== U) {
do {
for (z = T - 1; 0 === h.bl_count[z]; ) z--;
h.bl_count[z]--;
h.bl_count[z + 1] += 2;
h.bl_count[T]--;
U -= 2;
} while (0 < U);
for (z = T; 0 !== z; z--)
for (y = h.bl_count[z]; 0 !== y; )
(K = h.heap[--q]),
K > I ||
(r[2 * K + 1] !== z &&
((h.opt_len += (z - r[2 * K + 1]) * r[2 * K]), (r[2 * K + 1] = z)),
y--);
}
E(w, H, h.bl_count);
}
function Ne(h, q, r) {
var w,
y = -1,
z = q[1],
A = 0,
B = 7,
H = 4;
0 === z && ((B = 138), (H = 3));
q[2 * (r + 1) + 1] = 65535;
for (w = 0; w <= r; w++) {
var E = z;
z = q[2 * (w + 1) + 1];
(++A < B && E === z) ||
(A < H
? (h.bl_tree[2 * E] += A)
: 0 !== E
? (E !== y && h.bl_tree[2 * E]++, h.bl_tree[2 * ed]++)
: 10 >= A
? h.bl_tree[2 * Jc]++
: h.bl_tree[2 * K]++,
(A = 0),
(y = E),
0 === z ? ((B = 138), (H = 3)) : E === z ? ((B = 6), (H = 3)) : ((B = 7), (H = 4)));
}
}
function Z(r, w, y) {
var z,
A,
B = -1,
H = w[1],
E = 0,
I = 7,
O = 4;
0 === H && ((I = 138), (O = 3));
for (z = 0; z <= y; z++)
if (((A = H), (H = w[2 * (z + 1) + 1]), !(++E < I && A === H))) {
if (E < O) {
do h(r, A, r.bl_tree);
while (0 !== --E);
} else
0 !== A
? (A !== B && (h(r, A, r.bl_tree), E--), h(r, ed, r.bl_tree), q(r, E - 3, 2))
: 10 >= E
? (h(r, Jc, r.bl_tree), q(r, E - 3, 3))
: (h(r, K, r.bl_tree), q(r, E - 11, 7));
E = 0;
B = A;
0 === H ? ((I = 138), (O = 3)) : A === H ? ((I = 6), (O = 3)) : ((I = 7), (O = 4));
}
}
function Pd(h) {
var q,
r = 4093624447;
for (q = 0; 31 >= q; q++, r >>>= 1) if (1 & r && 0 !== h.dyn_ltree[2 * q]) return Fd;
if (0 !== h.dyn_ltree[18] || 0 !== h.dyn_ltree[20] || 0 !== h.dyn_ltree[26]) return Sa;
for (q = 32; q < sb; q++) if (0 !== h.dyn_ltree[2 * q]) return Sa;
return Fd;
}
function B(h, r, w, y) {
q(h, (U << 1) + (y ? 1 : 0), 3);
za(h);
Ka(h, w);
Ka(h, ~w);
gb.arraySet(h.pending_buf, h.window, r, w, h.pending);
h.pending += w;
}
var gb = y('../utils/common'),
Fd = 0,
Sa = 1,
U = 0,
sb = 256,
ma = sb + 1 + 29,
Ba = 30,
ne = 19,
db = 2 * ma + 1,
oe = 15,
yb = 16,
ud = 256,
ed = 16,
Jc = 17,
K = 18,
La = [
0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0
],
lb = [
0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12,
12, 13, 13
],
Ya = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7],
Ca = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15],
ya = Array(2 * (ma + 2));
Q(ya);
var ua = Array(2 * Ba);
Q(ua);
var T = Array(512);
Q(T);
var ka = Array(256);
Q(ka);
var P = Array(29);
Q(P);
var mc = Array(Ba);
Q(mc);
var Tb,
oc,
z,
ce = !1;
O._tr_init = function (h) {
if (!ce) {
var q,
y,
A,
B = Array(oe + 1);
for (A = y = 0; 28 > A; A++) for (P[A] = y, q = 0; q < 1 << La[A]; q++) ka[y++] = A;
ka[y - 1] = A;
for (A = y = 0; 16 > A; A++) for (mc[A] = y, q = 0; q < 1 << lb[A]; q++) T[y++] = A;
for (y >>= 7; A < Ba; A++)
for (mc[A] = y << 7, q = 0; q < 1 << (lb[A] - 7); q++) T[256 + y++] = A;
for (q = 0; q <= oe; q++) B[q] = 0;
for (q = 0; 143 >= q; ) (ya[2 * q + 1] = 8), q++, B[8]++;
for (; 255 >= q; ) (ya[2 * q + 1] = 9), q++, B[9]++;
for (; 279 >= q; ) (ya[2 * q + 1] = 7), q++, B[7]++;
for (; 287 >= q; ) (ya[2 * q + 1] = 8), q++, B[8]++;
E(ya, ma + 1, B);
for (q = 0; q < Ba; q++) (ua[2 * q + 1] = 5), (ua[2 * q] = w(q, 5));
Tb = new ha(ya, La, sb + 1, ma, oe);
oc = new ha(ua, lb, 0, Ba, oe);
z = new ha([], Ya, 0, ne, 7);
ce = !0;
}
h.l_desc = new r(h.dyn_ltree, Tb);
h.d_desc = new r(h.dyn_dtree, oc);
h.bl_desc = new r(h.bl_tree, z);
h.bi_buf = 0;
h.bi_valid = 0;
I(h);
};
O._tr_stored_block = B;
O._tr_flush_block = function (h, r, w, y) {
var z = 0;
if (0 < h.level) {
2 === h.strm.data_type && (h.strm.data_type = Pd(h));
Tc(h, h.l_desc);
Tc(h, h.d_desc);
Ne(h, h.dyn_ltree, h.l_desc.max_code);
Ne(h, h.dyn_dtree, h.d_desc.max_code);
Tc(h, h.bl_desc);
for (z = ne - 1; 3 <= z && 0 === h.bl_tree[2 * Ca[z] + 1]; z--);
z = ((h.opt_len += 3 * (z + 1) + 14), z);
var A = (h.opt_len + 3 + 7) >>> 3;
var E = (h.static_len + 3 + 7) >>> 3;
E <= A && (A = E);
} else A = E = w + 5;
if (w + 4 <= A && -1 !== r) B(h, r, w, y);
else if (4 === h.strategy || E === A) q(h, 2 + (y ? 1 : 0), 3), td(h, ya, ua);
else {
q(h, 4 + (y ? 1 : 0), 3);
r = h.l_desc.max_code + 1;
w = h.d_desc.max_code + 1;
z += 1;
q(h, r - 257, 5);
q(h, w - 1, 5);
q(h, z - 4, 4);
for (A = 0; A < z; A++) q(h, h.bl_tree[2 * Ca[A] + 1], 3);
Z(h, h.dyn_ltree, r - 1);
Z(h, h.dyn_dtree, w - 1);
td(h, h.dyn_ltree, h.dyn_dtree);
}
I(h);
y && za(h);
};
O._tr_tally = function (h, q, r) {
return (
(h.pending_buf[h.d_buf + 2 * h.last_lit] = (q >>> 8) & 255),
(h.pending_buf[h.d_buf + 2 * h.last_lit + 1] = 255 & q),
(h.pending_buf[h.l_buf + h.last_lit] = 255 & r),
h.last_lit++,
0 === q
? h.dyn_ltree[2 * r]++
: (h.matches++,
q--,
h.dyn_ltree[2 * (ka[r] + sb + 1)]++,
h.dyn_dtree[2 * (256 > q ? T[q] : T[256 + (q >>> 7)])]++),
h.last_lit === h.lit_bufsize - 1
);
};
O._tr_align = function (r) {
q(r, 2, 3);
h(r, ud, ya);
16 === r.bi_valid
? (Ka(r, r.bi_buf), (r.bi_buf = 0), (r.bi_valid = 0))
: 8 <= r.bi_valid &&
((r.pending_buf[r.pending++] = 255 & r.bi_buf),
(r.bi_buf >>= 8),
(r.bi_valid -= 8));
};
},
{ '../utils/common': 3 }
],
15: [
function (y, R, O) {
R.exports = function () {
this.input = null;
this.total_in = this.avail_in = this.next_in = 0;
this.output = null;
this.total_out = this.avail_out = this.next_out = 0;
this.msg = '';
this.state = null;
this.data_type = 2;
this.adler = 0;
};
},
{}
],
'/': [
function (y, R, O) {
O = y('./lib/utils/common').assign;
var Q = y('./lib/deflate'),
ha = y('./lib/inflate');
y = y('./lib/zlib/constants');
var r = {};
O(r, Q, ha, y);
R.exports = r;
},
{
'./lib/deflate': 1,
'./lib/inflate': 2,
'./lib/utils/common': 3,
'./lib/zlib/constants': 6
}
]
},
{},
[]
)('/');
});
var saveAs =
saveAs ||
(function (ba) {
if (
!(
'undefined' === typeof ba ||
('undefined' !== typeof navigator && /MSIE [1-9]\./.test(navigator.userAgent))
)
) {
var y = ba.document.createElementNS('http://www.w3.org/1999/xhtml', 'a'),
R = 'download' in y,
O = /constructor/i.test(ba.HTMLElement) || ba.safari,
Q = /CriOS\/[\d]+/.test(navigator.userAgent),
ha = function (h) {
(ba.setImmediate || ba.setTimeout)(function () {
throw h;
}, 0);
},
r = function (h) {
setTimeout(function () {
'string' === typeof h ? (ba.URL || ba.webkitURL || ba).revokeObjectURL(h) : h.remove();
}, 4e4);
},
Ka = function (h) {
return /^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(
h.type
)
? new Blob([String.fromCharCode(65279), h], { type: h.type })
: h;
},
q = function (h, q, I) {
I || (h = Ka(h));
var w = this,
E = 'application/octet-stream' === h.type,
A = function () {
var h = ['writestart', 'progress', 'write', 'writeend'];
h = [].concat(h);
for (var q = h.length; q--; ) {
var r = w['on' + h[q]];
if ('function' === typeof r)
try {
r.call(w, w);
} catch (Pd) {
ha(Pd);
}
}
};
w.readyState = w.INIT;
if (R) {
var td = (ba.URL || ba.webkitURL || ba).createObjectURL(h);
setTimeout(function () {
y.href = td;
y.download = q;
var h = new MouseEvent('click');
y.dispatchEvent(h);
A();
r(td);
w.readyState = w.DONE;
});
} else
(function () {
if ((Q || (E && O)) && ba.FileReader) {
var q = new FileReader();
q.onloadend = function () {
var h = Q ? q.result : q.result.replace(/^data:[^;]*;/, 'data:attachment/file;');
ba.open(h, '_blank') || (ba.location.href = h);
w.readyState = w.DONE;
A();
};
q.readAsDataURL(h);
w.readyState = w.INIT;
} else
td || (td = (ba.URL || ba.webkitURL || ba).createObjectURL(h)),
E ? (ba.location.href = td) : ba.open(td, '_blank') || (ba.location.href = td),
(w.readyState = w.DONE),
A(),
r(td);
})();
},
h = q.prototype;
if ('undefined' !== typeof navigator && navigator.msSaveOrOpenBlob)
return function (h, q, r) {
q = q || h.name || 'download';
r || (h = Ka(h));
return navigator.msSaveOrOpenBlob(h, q);
};
h.abort = function () {};
h.readyState = h.INIT = 0;
h.WRITING = 1;
h.DONE = 2;
h.error =
h.onwritestart =
h.onprogress =
h.onwrite =
h.onabort =
h.onerror =
h.onwriteend =
null;
return function (h, r, y) {
return new q(h, r || h.name || 'download', y);
};
}
})(
('undefined' !== typeof self && self) ||
('undefined' !== typeof window && window) ||
this.content
);
'undefined' !== typeof module && module.exports
? (module.exports.saveAs = saveAs)
: 'undefined' !== typeof define &&
null !== define &&
null !== define.amd &&
define('FileSaver.js', function () {
return saveAs;
});
'function' == typeof define && define.__amd && ((define.amd = define.__amd), delete define.__amd);
//# sourceMappingURL=Dadish%20POKI.js.map